Merge "Upgrade curl to curl-7_80_0" am: 109872d534

Original change: https://android-review.googlesource.com/c/platform/external/curl/+/1913847

Change-Id: Ic1dbdf87138b019033e7c0baa8d3ec10760dd3fe
diff --git a/CHANGES b/CHANGES
index 3842d91..f77f0a9 100644
--- a/CHANGES
+++ b/CHANGES
@@ -6,6 +6,3277 @@
 
                                   Changelog
 
+Version 7.80.0 (10 Nov 2021)
+
+Daniel Stenberg (10 Nov 2021)
+- RELEASE-NOTES: synced
+  
+  for curl 7.80.0
+
+- THANKS: add contributors from the 7.80.0 cycle
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: advertise h3 as well as h3-29
+  
+  Advertise h3 as well as h3-29 since some servers out there require h3
+  for QUIC v1.
+  
+  Closes #7979
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: use QUIC v1 consistently
+  
+  Since we switched to v1 quic_transport_parameters codepoint in #7960
+  with quictls, lets use QUIC v1 consistently.
+  
+  Closes #7979
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: compile with the latest nghttp3
+  
+  Closes #7978
+
+Marc Hoersken (9 Nov 2021)
+- tests: add Schannel-specific tests and disable unsupported ones
+  
+  Adds Schannel variants of SSLpinning tests that include the option
+  --ssl-revoke-best-effort to ignore certificate revocation check
+  failures which is required due to our custom test CA certificate.
+  
+  Disable the original variants if the Schannel backend is enabled.
+  
+  Also skip all IDN tests which are broken while using an msys shell.
+  
+  This is a step to simplify test exclusions for Windows and MinGW.
+  
+  Reviewed-by: Jay Satiro
+  Reviewed-by: Marcel Raad
+  Reviewed-by: Daniel Stenberg
+  Closes #7968
+
+Daniel Stenberg (8 Nov 2021)
+- docs: NAME fixes in easy option man pages
+  
+  Closes #7975
+
+- [Roger Young brought this change]
+
+  ftp: make the MKD retry to retry once per directory
+  
+  Reported-by: Roger Young
+  Fixes #7967
+  Closes #7976
+
+- tool_operate: reorder code to avoid compiler warning
+  
+  tool_operate.c(889) : warning C4701: potentially uninitialized local
+  variable 'per' use
+  
+  Follow-up to cc71d352651a0d95
+  Reported-by: Marc Hörsken
+  Bug: https://github.com/curl/curl/pull/7922#issuecomment-963042676
+  Closes #7971
+
+- curl_easy_perform.3: add a para about recv and send data
+  
+  Reported-by: Godwin Stewart
+  Fixes #7973
+  Closes #7974
+
+- tool_operate: fclose stream only if fopened
+  
+  Fixes torture test failures
+  Follow-up to cc71d352651
+  
+  Closes #7972
+
+- libcurl-easy.3: language polish
+
+- limit-rate.d: this is average over several seconds
+  
+  Closes #7970
+
+- docs: reduce/avoid English contractions
+  
+  You're => You are
+  Hasn't => Has not
+  Doesn't => Does not
+  Don't => Do not
+  You'll => You will
+  etc
+  
+  Closes #7930
+
+- tool_operate: fix torture leaks with etags
+  
+  Spotted by torture testing 343 344 345 347.
+  
+  Follow-up from cc71d352651a0
+  Pointed-out-by: Dan Fandrich
+  
+  Closes #7969
+
+- [Amaury Denoyelle brought this change]
+
+  ngtcp2: support latest QUIC TLS RFC9001
+  
+  QUIC Transport Parameters Extension has been changed between draft-29
+  and latest RFC9001. Most notably, its identifier has been updated from
+  0xffa5 to 0x0039. The version is selected through the QUIC TLS library
+  via the legacy codepoint.
+  
+  Disable the usage of legacy codepoint in curl to switch to latest
+  RFC9001. This is required to be able to keep up with latest QUIC
+  implementations.
+  
+  Acked-by: Tatsuhiro Tsujikawa
+  Closes #7960
+
+- test1173: make manpage-syntax.pl spot \n errors in examples
+
+- man pages: fix backslash-n in examples
+  
+  ... to be proper backslash-backslash-n sequences to render nicely in man
+  and on website.
+  
+  Follow-up to 24155569d8a
+  Reported-by: Sergey Markelov
+  
+  Fixes https://github.com/curl/curl-www/issues/163
+  Closes #7962
+
+- scripts/release-notes.pl: use out of repo links verbatim in refs
+
+- tool_operate: a failed etag save now only fails that transfer
+  
+  When failing to create the output file for saving an etag, only fail
+  that particular single transfer and allow others to follow.
+  
+  In a serial transfer setup, if no transfer at all is done due to them
+  all being skipped because of this error, curl will output an error
+  message and return exit code 26.
+  
+  Added test 369 and 370 to verify.
+  
+  Reported-by: Earnestly on github
+  Ref: #7942
+  Closes #7945
+
+- [Kevin Burke brought this change]
+
+  .github: retry macos "brew install" command on failure
+  
+  Previously we saw errors attempting to run "brew install", see
+  https://github.com/curl/curl/runs/4095721123?check_suite_focus=true for
+  an example, since this command is idempotent, it is safe to run again.
+  
+  Closes #7955
+
+- CURLOPT_ALTSVC_CTRL.3: mention conn reuse is preferred
+  
+  Ref: https://github.com/curl/curl/discussions/7954
+  
+  Closes #7957
+
+- RELEASE-NOTES: synced
+
+- zuul: pin the quiche build to use an older cmake-rs
+  
+  The latest cmake-rs assumes cmake's --parallel works. That was added in
+  cmake 3.12, but a lot of our CI builds run on Ubuntu Bionic which only
+  has cmake 3.10.
+  
+  Fixes #7927
+  Closes #7952
+
+- [Marc Hoersken brought this change]
+
+  Revert "src/tool_filetime: disable -Wformat on mingw for this file"
+  
+  This reverts commit 7c88fe375b15c44d77bccc9ab733b8069d228e6f.
+  
+  Follow up to #6535 as the pragma is obsolete with warnf
+  
+  Closes #7941
+
+Jay Satiro (2 Nov 2021)
+- schannel: fix memory leak due to failed SSL connection
+  
+  - Call schannel_shutdown if the SSL connection fails.
+  
+  Prior to this change schannel_shutdown (which shuts down the SSL
+  connection as well as memory cleanup) was not called when the SSL
+  connection failed (eg due to failed handshake).
+  
+  Co-authored-by: Gisle Vanem
+  
+  Fixes https://github.com/curl/curl/issues/7877
+  Closes https://github.com/curl/curl/pull/7878
+
+Daniel Stenberg (2 Nov 2021)
+- Curl_updateconninfo: store addresses for QUIC connections too
+  
+  So that CURLINFO_PRIMARY_IP etc work for HTTP/3 like for other HTTP
+  versions.
+  
+  Reported-by: Jerome Mao
+  Fixes #7939
+  Closes #7944
+
+- [Sergio Durigan Junior brought this change]
+
+  curl.1: fix typos in the manpage
+  
+  s/transfering/transferring/
+  s/transfered/transferred/
+  
+  Signed-off-by: Sergio Durigan Junior <sergiodj@sergiodj.net>
+  Closes #7937
+
+Marc Hoersken (1 Nov 2021)
+- tests/smbserver.py: fix compatibility with impacket 0.9.23+
+  
+  impacket now performs sanity checks if the requested and to
+  be served file path actually is inside the real share path.
+  
+  Ref: https://github.com/SecureAuthCorp/impacket/pull/1066
+  
+  Fixes #7924
+  Closes #7935
+
+Daniel Stenberg (1 Nov 2021)
+- docs: reduce use of "very"
+  
+  "Very" should be avoided in most texts. If intensifiers are needed, try
+  find better words instead.
+  
+  Closes #7936
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: specify the missing required callback functions
+  
+  Closes #7929
+
+- CURLOPT_[PROXY]_SSL_CIPHER_LIST.3: bold instead of quote
+  
+  Bold the example ciphers instead of using single quotes, which then also
+  avoids the problem of how to use single quotes when first in a line.
+  
+  Also rephrased the pages a little.
+  
+  Reported-by: Sergio Durigan Junior
+  Ref: #7928
+  Closes #7934
+
+- gen.pl: replace leading single quotes with \(aq
+  
+  ... and allow single quotes to be used "normally" in the .d files.
+  
+  Makes the output curl.1 use better nroff.
+  
+  Reported-by: Sergio Durigan Junior
+  Ref: #7928
+  Closes #7933
+
+Marc Hoersken (1 Nov 2021)
+- tests: kill some test servers afterwards to avoid locked logfiles
+  
+  Reviewed-by: Daniel Stenberg
+  Closes #7925
+
+Daniel Stenberg (1 Nov 2021)
+- smooth-gtk-thread.c: enhance the mutex lock use
+  
+  Reported-by: ryancaicse on github
+  Fixes #7926
+  Closes #7931
+
+Marc Hoersken (31 Oct 2021)
+- CI/runtests.pl: restore -u flag, but remove it from CI runs
+  
+  This makes it possible to use -u again for local testing,
+  but removes the flag from CI config files and make targets.
+  
+  Reviewed-by: Daniel Stenberg
+  
+  Partially reverts #7841
+  Closes #7921
+
+Daniel Stenberg (29 Oct 2021)
+- [Jonathan Cardoso Machado brought this change]
+
+  CURLOPT_HSTSWRITEFUNCTION.3: using CURLOPT_HSTS_CTRL is required
+  
+  Closes #7923
+
+- [Axel Morawietz brought this change]
+
+  imap: display quota information
+  
+  Show response to "GETQUOTAROOT INBOX" command.
+  
+  Closes #6973
+
+- RELEASE-NOTES: synced
+
+- [Boris Rasin brought this change]
+
+  cmake: fix error getting LOCATION property on non-imported target
+  
+  Closes #7885
+
+- [x2018 brought this change]
+
+  url: check the return value of curl_url()
+  
+  Closes #7917
+
+- [Roy Li brought this change]
+
+  configure.ac: replace krb5-config with pkg-config
+  
+  The rationale is that custom *-config tools don't work well when
+  cross-compiling or using sysroots (such as when using Yocto project) and
+  require custom fixing for each of them; pkg-config on the other hand
+  works similarly everywhere.
+  
+  Signed-off-by: Roy Li <rongqing.li@windriver.com>
+  Signed-off-by: Alexander Kanavin <alex@linutronix.de>
+  
+  Closes #7916
+
+- test1160: edited to work with hyper
+  
+  Closes #7912
+
+- data/DISABLED: enable tests that now work with hyper
+  
+  Closes #7911
+
+- test559: add 'HTTP' in keywords
+  
+  Makes it run fine with hyper
+  
+  Closes #7911
+
+- test552: updated to work with hyper
+  
+  Closes #7911
+
+Marc Hoersken (27 Oct 2021)
+- github: fix incomplete permission to label PRs for Hacktoberfest
+  
+  Unfortunately the GitHub API requires a token with write permission
+  for both issues and pull-requests to edit labels on even just PRs.
+  
+  Follow up to #7897
+
+Daniel Stenberg (27 Oct 2021)
+- opt-manpages: use 'Added in' instead of 'Since'
+  
+  Closes #7913
+
+Marc Hoersken (27 Oct 2021)
+- github: fix missing permission to label PRs for Hacktoberfest
+  
+  Follow up to #7897
+  
+  Test references to see if permissions are now sufficient:
+  
+  Closes #7832
+  Closes #7897
+
+- CI: more use of test-ci make target and verbose output
+  
+  Replace test-nonflaky with test-ci and enable verbose output
+  in all remaining CIs except Zuul which is customized a lot.
+  
+  Reviewed-by: Daniel Stenberg
+  Reviewed-by: Jay Satiro
+  
+  Follow up to #7785
+  Closes #7832
+
+- github: add support for Hacktoberfest using labels
+  
+  Automatically add hacktoberfest-accepted label to PRs opened between
+  September 30th and November 1st once a commit with a close reference
+  to it is pushed onto the master branch.
+  
+  With this workflow we can participate in Hacktoberfest while not
+  relying on GitHub to identify PRs as merged due to our rebasing.
+  
+  Requires hacktoberfest-accepted labels to exist for PRs on the
+  participating repository. Also requires hacktoberfest topic on
+  the participating repository to avoid applying to forked repos.
+  
+  Reviewed-by: Daniel Stenberg
+  
+  Fixes #7865
+  Closes #7897
+
+Daniel Stenberg (27 Oct 2021)
+- http: reject HTTP response codes < 100
+  
+  ... which then also includes negative ones as test 1430 uses.
+  
+  This makes native + hyper backend act identically on this and therefore
+  test 1430 can now be enabled when building with hyper. Adjust test 1431
+  as well.
+  
+  Closes #7909
+
+- [Kerem Kat brought this change]
+
+  docs: fix typo in CURLOPT_TRAILERFUNCTION example
+  
+  Closes #7910
+
+- docs/HYPER: remove some remaining issues, add HTTP/0.9 limitation
+
+- configure: when hyper is selected, deselect nghttp2
+  
+  Closes #7908
+
+- [Patrick Monnerat brought this change]
+
+  sendf: accept zero-length data in Curl_client_write()
+  
+  Historically, Curl_client_write() used a length value of 0 as a marker
+  for a null-terminated data string. This feature has been removed in
+  commit f4b85d2. To detect leftover uses of the feature, a DEBUGASSERT
+  statement rejecting a length with value 0 was introduced, effectively
+  precluding use of this function with zero-length data.
+  
+  The current commit removes the DEBUGASSERT and makes the function to
+  return immediately if length is 0.
+  
+  A direct effect is to fix trying to output a zero-length distinguished
+  name in openldap.
+  
+  Another DEBUGASSERT statement is also rephrased for better readability.
+  
+  Closes #7898
+
+- hyper: disable test 1294 since hyper doesn't allow such crazy headers
+  
+  Closes #7905
+
+- c-hyper: make CURLOPT_SUPPRESS_CONNECT_HEADERS work
+  
+  Verified by the enabled test 1288
+  
+  Closes #7905
+
+- test1287: make work on hyper
+  
+  Closes #7905
+
+- test1266/1267: disabled on hyper: no HTTP/0.9 support
+  
+  Closes #7905
+
+Viktor Szakats (25 Oct 2021)
+- Makefile.m32: fix to not require OpenSSL with -libssh2 or -rtmp options
+  
+  Previously, -libssh2/-rtmp options assumed that OpenSSL is also enabled
+  (and then failed with an error when not finding expected OpenSSL headers),
+  but this isn't necessarly true, e.g. when building both libssh2 and curl
+  against Schannel. This patch makes sure to only enable the OpenSSL backend
+  with -libssh2/-rtmp, when there was no SSL option explicitly selected.
+  
+  - Re-implement the logic as a single block of script.
+  - Also fix an indentation while there.
+  
+  Assisted-by: Jay Satiro
+  
+  Closes #7895
+
+Daniel Stenberg (25 Oct 2021)
+- docs: consistent use of "Added in"
+  
+  Make them all say "Added in [version]" without using 'curl' or 'libcurl'
+  in that phrase.
+
+- man pages: require all to use the same section header order
+  
+  This is the same order we already enforce among the options' man pages:
+  consistency is good. Add lots of previously missing examples.
+  
+  Adjust the manpage-syntax script for this purpose, used in test 1173.
+  
+  Closes #7904
+
+- [David Hu brought this change]
+
+  docs/HTTP3: improve build instructions
+  
+  1. If writing to a system path if the command is not prefixed with
+  `sudo` it will cause a permission denied error
+  
+  2. The patched OpenSSL branch has been updated to `openssl-3.0.0+quic`
+  to match upstream OpenSSL version.
+  
+  3. We should not disable GnuTLS docs.
+  
+  Updated some commands about `make install`
+  
+  Closes #7842
+
+- [Ricardo Martins brought this change]
+
+  CMake: restore support for SecureTransport on iOS
+  
+  Restore support for building curl for iOS with SecureTransport enabled.
+  
+  Closes #7501
+
+- tests: enable more tests with hyper
+  
+  Adjusted 1144, 1164 and 1176.
+  
+  Closes #7900
+
+- docs: provide "RETURN VALUE" section for more func manpages
+  
+  Three were missing, one used a non-standard name for the header.
+  
+  Closes #7902
+
+Jay Satiro (25 Oct 2021)
+- curl_multi_socket_action.3: add a "RETURN VALUE" section
+  
+  .. because it may not be immediately clear to the user what
+  curl_multi_socket_action returns.
+  
+  Ref: https://curl.se/mail/lib-2021-10/0035.html
+  
+  Closes https://github.com/curl/curl/pull/7901
+
+Daniel Stenberg (24 Oct 2021)
+- RELEASE-NOTES: synced
+
+- [Samuel Henrique brought this change]
+
+  tests: use python3 in test 1451
+  
+  This is a continuation of commit ec91b5a69000bea0794bbb3 in which
+  changing this test was missed.  There are no other python2 leftovers
+  now.
+  
+  Based on a Debian patch originally written by Alessandro Ghedini
+  <ghedo@debian.org>
+  
+  Closes #7899
+
+- [Eddie Lumpkin brought this change]
+
+  lib: fixing comment spelling typos in lib files
+  
+  Closes #7894
+  Signed-off-by: ewlumpkin <ewlumpkin@gmail.com>
+
+- openssl: if verifypeer is not requested, skip the CA loading
+  
+  It was previously done mostly to show a match/non-match in the verbose
+  output even when verification was not asked for. This change skips the
+  loading of the CA certs unless verifypeer is set to save memory and CPU.
+  
+  Closes #7892
+
+- curl-confopts.m4:  remove --enable/disable-hidden-symbols
+  
+  These configure options have been saying "deprecated" since 9e24b9c7af
+  (April 2012). It was about time we remove them.
+  
+  Closes #7891
+
+- c-hyper: don't abort CONNECT responses early when auth-in-progress
+  
+  ... and make sure to stop ignoring the body once the CONNECT is done.
+  
+  This should make test 206 work proper again and not be flaky.
+  
+  Closes #7889
+
+- hyper: does not support disabling CURLOPT_HTTP_TRANSFER_DECODING
+  
+  Simply because hyper doesn't have this ability. Mentioned in docs now.
+  
+  Skip test 326 then
+  
+  Closes #7889
+
+- test262: don't attempt with hyper
+  
+  This test verifies that curl works with binary zeroes in HTTP response
+  headers and hyper refuses such. They're not kosher http.
+  
+  Closes #7889
+
+- c-hyper: make test 217 run
+  
+  Closes #7889
+
+- DISABLED: enable test 209+213 for hyper
+  
+  Follow-up to 823d3ab855c
+  
+  Closes #7889
+
+- test207: accept a different error code for hyper
+  
+  It returns HYPERE_UNEXPECTED_EOF for this case which we convert to the
+  somewhat generic CURLE_RECV_ERROR.
+  
+  Closes #7889
+
+- [Érico Nogueira brought this change]
+
+  INSTALL: update symbol hiding option
+  
+  --enable-hidden-symbols was deprecated in
+  9e24b9c7afbcb81120af4cf3f6cdee49a06d8224.
+  
+  Closes #7890
+
+- http_proxy: multiple CONNECT with hyper done better
+  
+  Enabled test 206
+  
+  Closes #7888
+
+- hyper: pass the CONNECT line to the debug callback
+  
+  Closes #7887
+
+- mailmap: Malik Idrees Hasan Khan
+
+Jay Satiro (21 Oct 2021)
+- [Malik Idrees Hasan Khan brought this change]
+
+  build: fix typos
+  
+  Closes https://github.com/curl/curl/pull/7886
+
+- URL-SYNTAX: add IMAP UID SEARCH example
+  
+  - Explain the difference between IMAP search via URL (which returns
+    message sequence numbers) and IMAP search via custom request (which
+    can return UID numbers if prefixed with UID, eg "UID SEARCH ...").
+  
+  Bug: https://github.com/curl/curl/issues/7626
+  Reported-by: orycho@users.noreply.github.com
+  
+  Ref: https://github.com/curl/curl/issues/2789
+  
+  Closes https://github.com/curl/curl/pull/7881
+
+Daniel Stenberg (20 Oct 2021)
+- manpage: adjust the asterisk in some SYNOPSIS sections
+  
+  Closes #7884
+
+- curl_multi_perform.3: polish wording
+  
+   - simplify the example by using curl_multi_poll
+  
+   - mention curl_multi_add_handle in the text
+  
+   - cut out the description of pre-7.20.0 return code behavior - that version
+     is now more than eleven years old and is basically no longer out there
+  
+   - adjust the "typical usage" to mention curl_multi_poll
+  
+  Closes #7883
+
+- docs/THANKS: removed on request
+
+- FAQ: polish the explanation of libcurl
+
+- curl_easy_perform.3: minor wording tweak
+
+- [Erik Stenlund brought this change]
+
+  mime: mention CURL_DISABLE_MIME in comment
+  
+  CURL_DISABLE_MIME is not mentioned in the comment describing the if else
+  preprocessor directive.
+  
+  Closes #7882
+
+- tls: remove newline from three infof() calls
+  
+  Follow-up to e7416cf
+  
+  Reported-by: billionai on github
+  Fixes #7879
+  Closes #7880
+
+- RELEASE-NOTES: synced
+
+- curl_gssapi: fix build warnings by removing const
+  
+  Follow-up to 20e980f85b0ea6
+  
+  In #7875 these inits were modified but I get two warnings that these new
+  typecasts are necessary for.
+  
+  Closes #7876
+
+- [Bo Anderson brought this change]
+
+  curl_gssapi: fix link error on macOS Monterey
+  
+  Fixes #7657
+  Closes #7875
+
+- test1185: verify checksrc
+  
+  Closes #7866
+
+- checksrc: improve the SPACESEMICOLON error message
+  
+  and adjust the MULTISPACE one to use plural
+  
+  Closes #7866
+
+- url: set "k->size" -1 at start of request
+  
+  The size of the transfer is unknown at that point.
+  
+  Fixes #7871
+  Closes #7872
+
+Daniel Gustafsson (18 Oct 2021)
+- doh: remove experimental code for DoH with GET
+  
+  The code for sending DoH requests with GET was never enabled in a way
+  such that it could be used or tested. As there haven't been requests
+  for this feature, and since it at this is effectively dead, remove it
+  and favor reimplementing the feature in case anyone is interested.
+  
+  Closes #7870
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (18 Oct 2021)
+- cirrus: remove FreeBSD 11.4 from the matrix
+  
+  It has reached End-Of-Life and causes some LDAP CI issues.
+  
+  Closes #7869
+
+- cirrus: switch to openldap24-client
+  
+  ... as it seems openldap-client doesn't exist anymore.
+  
+  Reported-by: Jay Satiro
+  Fixes #7868
+  Closes #7869
+
+- checksrc: ignore preprocessor lines
+  
+  In order to check the actual code better, checksrc now ignores
+  everything that look like preprocessor instructions. It also means
+  that code in macros are now longer checked.
+  
+  Note that some rules then still don't need to be followed when code is
+  exactly below a cpp instruction.
+  
+  Removes two checksrc exceptions we needed previously because of
+  preprocessor lines being checked.
+  
+  Reported-by: Marcel Raad
+  Fixes #7863
+  Closes #7864
+
+- urlapi: skip a strlen(), pass in zero
+  
+  ... to let curl_easy_escape() itself do the strlen. This avoids a (false
+  positive) Coverity warning and it avoids us having to store the strlen()
+  return value in an int variable.
+  
+  Reviewed-by: Daniel Gustafsson
+  Closes #7862
+
+- misc: update copyright years
+
+- examples/htmltidy: correct wrong printf() use
+  
+  ... and update the includes to match how current htmltidy wants them
+  used.
+  
+  Reported-by: Stathis Kapnidis
+  Fixes #7860
+  Closes #7861
+
+Jay Satiro (15 Oct 2021)
+- http: set content length earlier
+  
+  - Make content length (ie download size) accessible to the user in the
+    header callback, but only after all headers have been processed (ie
+    only in the final call to the header callback).
+  
+  Background:
+  
+  For a long time the content length could be retrieved in the header
+  callback via CURLINFO_CONTENT_LENGTH_DOWNLOAD_T as soon as it was parsed
+  by curl.
+  
+  Changes were made in 8a16e54 (precedes 7.79.0) to ignore content length
+  if any transfer encoding is used. A side effect of that was that
+  content length was not set by libcurl until after the header callback
+  was called the final time, because until all headers are processed it
+  cannot be determined if content length is valid.
+  
+  This change keeps the same intention --all headers must be processed--
+  but now the content length is available before the final call to the
+  header function that indicates all headers have been processed (ie
+  a blank header).
+  
+  Bug: https://github.com/curl/curl/commit/8a16e54#r57374914
+  Reported-by: sergio-nsk@users.noreply.github.com
+  
+  Co-authored-by: Daniel Stenberg
+  
+  Fixes https://github.com/curl/curl/issues/7804
+  Closes https://github.com/curl/curl/pull/7803
+
+Daniel Stenberg (15 Oct 2021)
+- [Abhinav Singh brought this change]
+
+  aws-sigv4: make signature work when post data is binary
+  
+  User sets the post fields size for binary data.  Hence, we should not be
+  using strlen on it.
+  
+  Added test 1937 and 1938 to verify.
+  
+  Closes #7844
+
+- [a1346054 brought this change]
+
+  MacOSX-Framework: remove redundant ';'
+  
+  Closes #7859
+
+- RELEASE-NOTES: synced
+
+- openssl: with OpenSSL 1.1.0+ a failed RAND_status means goaway
+  
+  One reason we know it can fail is if a provider is used that doesn't do
+  a proper job or is wrongly configured.
+  
+  Reported-by: Michael Baentsch
+  Fixes #7840
+  Closes #7856
+
+Marcel Raad (14 Oct 2021)
+- [Ryan Mast brought this change]
+
+  cmake: add CURL_ENABLE_SSL option and make CMAKE_USE_* SSL backend options depend on it
+  
+  Closes https://github.com/curl/curl/pull/7822
+
+Daniel Stenberg (14 Oct 2021)
+- http: remove assert that breaks hyper
+  
+  Reported-by: Jay Satiro
+  Fixes #7852
+  Closes #7855
+
+- http_proxy: fix one more result assign for hyper
+  
+  and remove the bad assert again, since it was run even with no error!
+  
+  Closes #7854
+
+Jay Satiro (14 Oct 2021)
+- sws: fix memory leak on exit
+  
+  - Free the allocated http request struct on cleanup.
+  
+  Prior to this change if sws was built with leak sanitizer it would
+  report a memory leak error during testing.
+  
+  Closes https://github.com/curl/curl/pull/7849
+
+Daniel Stenberg (14 Oct 2021)
+- c-hyper: make Curl_http propagate errors better
+  
+  Pass on better return codes when errors occur within Curl_http instead
+  of insisting that CURLE_OUT_OF_MEMORY is the only possible one.
+  
+  Pointed-out-by: Jay Satiro
+  Closes #7851
+
+- http_proxy: make hyper CONNECT() return the correct error code
+  
+  For every 'goto error', make sure the result variable holds the error
+  code for what went wrong.
+  
+  Reported-by: Rafał Mikrut
+  Fixes #7825
+  Closes #7846
+
+- docs/Makefile.am: repair 'make html'
+  
+  by removing index.html which isn't around anymore
+  
+  Closes #7853
+
+- [Борис Верховский brought this change]
+
+  curl: correct grammar in generated libcurl code
+  
+  Closes #7802
+
+- tests: disable test 2043
+  
+  It uses revoked.badssl.com which now is expired and therefor this now
+  permafails. We should not use external sites for tests, this test should
+  be converted to use our own infra.
+  
+  Closes #7845
+
+- runtests: split out ignored tests
+  
+  Report ignore tests separately from the actual fails.
+  
+  Don't exit non-zero if test servers couldn't get killed.
+  
+  Assisted-by: Jay Satiro
+  
+  Fixes #7818
+  Closes #7841
+
+- http2: make getsock not wait for write if there's no remote window
+  
+  While uploading, check for remote window availability in the getsock
+  function so that we don't wait for a writable socket if no data can be
+  sent.
+  
+  Reported-by: Steini2000 on github
+  Fixes #7821
+  Closes #7839
+
+- test368: verify dash is appended for "-r [num]"
+  
+  Follow-up to 8758a26f8878
+
+- [Борис Верховский brought this change]
+
+  curl: actually append "-" to --range without number only
+  
+  Closes #7837
+
+- RELEASE-NOTES: synced
+
+- urlapi: URL decode percent-encoded host names
+  
+  The host name is stored decoded and can be encoded when used to extract
+  the full URL. By default when extracting the URL, the host name will not
+  be URL encoded to work as similar as possible as before. When not URL
+  encoding the host name, the '%' character will however still be encoded.
+  
+  Getting the URL with the CURLU_URLENCODE flag set will percent encode
+  the host name part.
+  
+  As a bonus, setting the host name part with curl_url_set() no longer
+  accepts a name that contains space, CR or LF.
+  
+  Test 1560 has been extended to verify percent encodings.
+  
+  Reported-by: Noam Moshe
+  Reported-by: Sharon Brizinov
+  Reported-by: Raul Onitza-Klugman
+  Reported-by: Kirill Efimov
+  Fixes #7830
+  Closes #7834
+
+Marc Hoersken (8 Oct 2021)
+- CI/makefiles: introduce dedicated test target
+  
+  Make it easy to use the same set of test flags
+  throughout all current and future CI builds.
+  
+  Reviewed-by: Jay Satiro
+  
+  Follow up to #7690
+  Closes #7785
+
+Daniel Stenberg (8 Oct 2021)
+- maketgz: redirect updatemanpages.pl output to /dev/null
+
+- CURLOPT_HTTPHEADER.3: add descripion for specific headers
+  
+  Settting Host: or Transfer-Encoding: chunked actually have special
+  meanings to libcurl. This change tries to document them
+  
+  Closes #7829
+
+- c-hyper: use hyper_request_set_uri_parts to make h2 better
+  
+  and make sure to not send Host: over h2.
+  
+  Fixes #7679
+  Reported-by: David Cook
+  Closes #7827
+
+- [Michael Afanasiev brought this change]
+
+  curl-openssl.m4: modify library order for openssl linking
+  
+  lcrypto may depend on lz, and configure corrently fails with when
+  statically linking as the order is "-lz -lcrypto". This commit switches
+  the order to "-lcrypto -lz".
+  
+  Closes #7826
+
+Marcel Raad (7 Oct 2021)
+- sha256: use high-level EVP interface for OpenSSL
+  
+  Available since OpenSSL 0.9.7. The low-level SHA256 interface is
+  deprecated in OpenSSL v3, and its usage was discouraged even before.
+  
+  Closes https://github.com/curl/curl/pull/7808
+
+- curl_ntlm_core: use OpenSSL only if DES is available
+  
+  This selects another SSL backend then if available, or otherwise at
+  least gives a meaningful error message.
+  
+  Closes https://github.com/curl/curl/pull/7808
+
+- md5: fix compilation with OpenSSL 3.0 API
+  
+  Only use OpenSSL's MD5 code if it's available.
+  
+  Also fix wolfSSL build with `NO_MD5`, in which case neither the
+  wolfSSL/OpenSSL implementation nor the fallback implementation was
+  used.
+  
+  Closes https://github.com/curl/curl/pull/7808
+
+Daniel Stenberg (7 Oct 2021)
+- print_category: printf %*s needs an int argument
+  
+  ... not a size_t!
+  
+  Detected by Coverity: CID 1492331.
+  Closes #7823
+
+Jay Satiro (7 Oct 2021)
+- version_win32: use actual version instead of manifested version
+  
+  - Use RtlVerifyVersionInfo instead of VerifyVersionInfo, when possible.
+  
+  Later versions of Windows have normal version functions that compare and
+  return versions based on the way the application is manifested, instead
+  of the actual version of Windows the application is running on. We
+  prefer the actual version of Windows so we'll now call the Rtl variant
+  of version functions (RtlVerifyVersionInfo) which does a proper
+  comparison of the actual version.
+  
+  Reported-by: Wyatt O'Day
+  
+  Ref: https://github.com/curl/curl/pull/7727
+  
+  Fixes https://github.com/curl/curl/issues/7742
+  Closes https://github.com/curl/curl/pull/7810
+
+Daniel Stenberg (6 Oct 2021)
+- RELEASE-NOTES: synced
+
+- http: fix Basic auth with empty name field in URL
+  
+  Add test 367 to verify.
+  
+  Reported-by: Rick Lane
+  Fixes #7819
+  Closes #7820
+
+- [Jeffrey Tolar brought this change]
+
+  CURLOPT_MAXLIFETIME_CONN: maximum allowed lifetime for conn reuse
+  
+  ... and close connections that are too old instead of reusing them.
+  
+  By default, this behavior is disabled.
+  
+  Bug: https://curl.se/mail/lib-2021-09/0058.html
+  Closes #7751
+
+Daniel Gustafsson (6 Oct 2021)
+- docs/examples: add missing binaries to gitignore
+  
+  Commit f65d7889b added getreferrer, and commit ae8e11ed5 multi-legacy,
+  both of which missed adding .gitignore clauses for the built binaries.
+  
+  Closes #7817
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (5 Oct 2021)
+- [Josip Medved brought this change]
+
+  HTTP3: fix the HTTP/3 Explained book link
+  
+  Closes #7813
+
+- [Lucas Holt brought this change]
+
+  misc: fix a few issues on MidnightBSD
+  
+  Closes #7812
+
+Daniel Gustafsson (4 Oct 2021)
+- [8U61ife brought this change]
+
+  tool_main: fix typo in comment
+  
+  Closes: #7811
+  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
+
+Daniel Stenberg (4 Oct 2021)
+- [Ryan Mast brought this change]
+
+  BINDINGS: URL updates
+  
+  For cpr, BBHTTP, Eiffel, Harbour, Haskell, Mono, and Rust
+  
+  Closes #7809
+
+- scripts/delta: hide a git error message we don't care about
+  
+  fatal: path 'src/tool_listhelp.c' exists on disk, but not in [tag]
+
+- [Patrick Monnerat brought this change]
+
+  sasl: binary messages
+  
+  Capabilities of sasl module are extended to exchange messages in binary
+  as an alternative to base64.
+  
+  If http authentication flags have been set, those are used as sasl
+  default preferred mechanisms.
+  
+  Closes #6930
+
+- [Hayden Roche brought this change]
+
+  wolfssl: use for SHA256, MD4, MD5, and setting DES odd parity
+  
+  Prior to this commit, OpenSSL could be used for all these functions, but
+  not wolfSSL. This commit makes it so wolfSSL will be used if USE_WOLFSSL
+  is defined.
+  
+  Closes #7806
+
+- scripts/delta: count command line options in the new file
+  
+  ... which makes the shown delta number wrong until next release.
+
+- RELEASE-NOTES: synced
+
+- print_category: print help descriptions aligned
+  
+  Adjust the description position to make an aligned column when doing
+  help listings, which is more pleasing to the eye.
+  
+  Suggested-by: Gisle Vanem
+  Closes #7792
+
+- lib/mk-ca-bundle.pl: skip certs passed Not Valid After date
+  
+  With this change applied, the now expired 'DST Root CA X3' cert will no
+  longer be included in the output.
+  
+  Details: https://letsencrypt.org/docs/dst-root-ca-x3-expiration-september-2021/
+  
+  Closes #7801
+
+- tool_listhelp: easier to generate with gen.pl
+  
+  tool_listhelp.c is now a separate file with only the command line --help
+  output, exactly as generated by gen.pl. This makes it easier to generate
+  updates according to what's in the docs/cmdline-opts docs.
+  
+    cd $srcroot/docs/cmdline-opts
+    ./gen.pl listhelp *.d > $srcroot/src/tool_listhelp.c
+  
+  With a configure build, this also works:
+  
+    make -C src listhelp
+  
+  Closes #7787
+
+- [Anthony Hu brought this change]
+
+  wolfssl: allow setting of groups/curves
+  
+  In particular, the quantum safe KEM and hybrid curves if wolfSSL is
+  built to support them.
+  
+  Closes #7728
+
+- [Jan Mazur brought this change]
+
+  connnect: use sysaddr_un fron sys/un.h or custom-defined for windows
+  
+  Closes #7737
+
+Jay Satiro (30 Sep 2021)
+- [Rikard Falkeborn brought this change]
+
+  hostip: Move allocation to clarify there is no memleak
+  
+  By just glancing at the code, it looks like there is a memleak if the
+  call to Curl_inet_pton() fails. Looking closer, it is clear that the
+  call to Curl_inet_pton() can not fail, so the code will never leak
+  memory. However, we can make this obvious by moving the allocation
+  after the if-statement.
+  
+  Closes https://github.com/curl/curl/pull/7796
+
+Daniel Stenberg (30 Sep 2021)
+- gen.pl: make the output date format work better
+  
+  Follow-up to 15910dfd143dd
+  
+  The previous strftime format used didn't work correctly on Windows, so
+  change to %B %d %Y which today looks like "September 29 2021".
+  
+  Reported-by: Gisle Vanem
+  Bug: #7782
+  Closes #7793
+
+- typecheck-gcc.h: add CURLOPT_PREREQDATA awareness
+  
+  Follow-up to a517378de58358a
+  
+  To make test 1912 happy again
+  
+  Closes #7799
+
+Marcel Raad (29 Sep 2021)
+- configure: remove `HAVE_WINSOCK_H` definition
+  
+  It's not used anymore.
+  
+  Closes https://github.com/curl/curl/pull/7795
+
+- CMake: remove `HAVE_WINSOCK_H` definition
+  
+  It's not used anymore.
+  
+  Closes https://github.com/curl/curl/pull/7795
+
+- config: remove `HAVE_WINSOCK_H` definition
+  
+  It's not used anymore.
+  
+  Closes https://github.com/curl/curl/pull/7795
+
+- lib: remove `HAVE_WINSOCK_H` usage
+  
+  WinSock v1 is not supported anymore. Exclusively use `HAVE_WINSOCK2_H`
+  instead.
+  
+  Closes https://github.com/curl/curl/pull/7795
+
+Daniel Stenberg (29 Sep 2021)
+- easyoptions: add the two new PRE* options
+  
+  Follow-up to a517378de58358a
+  
+  Also fix optiontable.pl to do the correct remainder on the entry.
+  
+  Reported-by: Gisle Vanem
+  Bug: https://github.com/curl/curl/commit/a517378de58358a85b7cfe9efecb56051268f629#commitcomment-57224830
+  Closes #7791
+
+- Revert "build: remove checks for WinSock 1"
+  
+  Due to CI issues
+  
+  This reverts commit c2ea04f92b00b6271627cb218647527b5a50f2fc.
+  
+  Closes #7790
+
+Daniel Gustafsson (29 Sep 2021)
+- lib: avoid fallthrough cases in switch statements
+  
+  Commit b5a434f7f0ee4d64857f8592eced5b9007d83620 inhibits the warning
+  on implicit fallthrough cases, since the current coding of indicating
+  fallthrough with comments is falling out of fashion with new compilers.
+  This attempts to make the issue smaller by rewriting fallthroughs to no
+  longer fallthrough, via either breaking the cases or turning switch
+  statements into if statements.
+  
+    lib/content_encoding.c: the fallthrough codepath is simply copied
+      into the case as it's a single line.
+    lib/http_ntlm.c: the fallthrough case skips a state in the state-
+      machine and fast-forwards to NTLMSTATE_LAST. Do this before the
+      switch statement instead to set up the states that we actually
+      want.
+    lib/http_proxy.c: the fallthrough is just falling into exiting the
+      switch statement which can be done easily enough in the case.
+    lib/mime.c: switch statement rewritten as if statement.
+    lib/pop3.c: the fallthrough case skips to the next state in the
+      statemachine, do this explicitly instead.
+    lib/urlapi.c: switch statement rewritten as if statement.
+    lib/vssh/wolfssh.c: the fallthrough cases fast-forwards the state
+      machine, do this by running another iteration of the switch
+      statement instead.
+    lib/vtls/gtls.c: switch statement rewritten as if statement.
+    lib/vtls/nss.c: the fallthrough codepath is simply copied into the
+      case as it's a single line. Also twiddle a comment to not be
+      inside a non-brace if statement.
+  
+  Closes: #7322
+  See-also: #7295
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Marcel Raad (28 Sep 2021)
+- config-win32ce: enable WinSock 2
+  
+  WinSock 2.2 is supported by Windows CE .NET 4.1 (from 2002, out of
+  support since 2013).
+  
+  Ref: https://docs.microsoft.com/en-us/previous-versions/windows/embedded/ms899586(v=msdn.10)
+  
+  Closes https://github.com/curl/curl/pull/7778
+
+- externalsocket: use WinSock 2.2
+  
+  That's the only version we support.
+  
+  Closes https://github.com/curl/curl/pull/7778
+
+- build: remove checks for WinSock 1
+  
+  It's not supported anymore.
+  
+  Closes https://github.com/curl/curl/pull/7778
+
+Daniel Stenberg (28 Sep 2021)
+- scripts/copyright: .muse is .lift now
+  
+  And update 5 files with old copyright year range
+
+- cmdline-opts: made the 'Added:' field mandatory
+  
+  Since "too old" versions are no longer included in the generated man
+  page, this field is now mandatory so that it won't be forgotten and then
+  not included in the documentation.
+  
+  Closes #7786
+
+- curl.1: remove mentions of really old version changes
+  
+  To make the man page more readable, this change removes all references
+  to changes in support/versions etc that happened before 7.30.0 from the
+  curl.1 output file. 7.30.0 was released on Apr 12 2013. This particular
+  limit is a bit arbitrary but was fairly easy to grep for.
+  
+  It is handled like this: the 'Added' keyword is only used in output if
+  it refers to 7.30.0 or later. All occurances of "(Added in $VERSION)" in
+  description will be stripped out if the mentioned $VERSION is from
+  before 7.30.0. It is therefore important that the "Added in..."
+  references are always written exactly like that - and on a single line,
+  not split over two.
+  
+  This change removes about 80 version number references from curl.1, down
+  to 138 from 218.
+  
+  Closes #7786
+
+- RELEASE-NOTES: synced
+
+- tool_cb_prg: make resumed upload progress bar show better
+  
+  This is a regression that was *probably* injected in the larger progress
+  bar overhaul in 2018.
+  
+  Reported-by: beslick5 on github
+  Fixes #7760
+  Closes #7777
+
+- gen.pl: insert the current date and version in generated man page
+  
+  Reported-by: Gisle Vanem
+  Ref: #7780
+  Closes #7782
+
+- NTLM: use DES_set_key_unchecked with OpenSSL
+  
+  ... as the previously used function DES_set_key() will in some cases
+  reject using a key that it deems "weak" which will cause curl to
+  continue using the unitialized buffer content as key instead.
+  
+  Assisted-by: Harry Sintonen
+  Fixes #7779
+  Closes #7781
+
+Marc Hoersken (27 Sep 2021)
+- CI: align make and test flags in various config files
+  
+  1. Use Makefile target to run tests in autotools builds on AppVeyor.
+  2. Disable testing of SCP protocol on native Windows environments.
+  3. Remove redundant parameters -a -p from target test-nonflaky.
+  4. Don't use -vc parameter which is reserved for debugging.
+  
+  Replaces #7591
+  Closes #7690
+
+Daniel Stenberg (27 Sep 2021)
+- mailmap: unify Max!
+
+- [Max Dymond brought this change]
+
+  CURLOPT_PREREQFUNCTION: add new callback
+  
+  Triggered before a request is made but after a connection is set up
+  
+  Changes:
+  
+  - callback: Update docs and callback for pre-request callback
+  - Add documentation for CURLOPT_PREREQDATA and CURLOPT_PREREQFUNCTION,
+  - Add redirect test and callback failure test
+  - Note that the function may be called multiple times on a redirection
+  - Disable new 2086 test due to Windows weirdness
+  
+  Closes #7477
+
+- KNOWN_BUGS: HTTP/2 connections through HTTPS proxy frequently stall
+  
+  Closes #6936
+
+- TODO: make configure use --cache-file more and better
+  
+  Closes #7753
+
+- [Sergey Markelov brought this change]
+
+  urlapi: support UNC paths in file: URLs on Windows
+  
+  - file://host.name/path/file.txt is a valid UNC path
+    \\host.name\path\files.txt to a non-local file transformed into URI
+    (RFC 8089 Appendix E.3)
+  
+  - UNC paths on other OSs must be smb: URLs
+  
+  Closes #7366
+
+- [Gleb Ivanovsky brought this change]
+
+  urlapi: add curl_url_strerror()
+  
+  Add curl_url_strerror() to convert CURLUcode into readable string and
+  facilitate easier troubleshooting in programs using URL API.
+  Extend CURLUcode with CURLU_LAST for iteration in unit tests.
+  Update man pages with a mention of new function.
+  Update example code and tests with new functionality where it fits.
+  
+  Closes #7605
+
+- RELEASE-NOTES: synced
+
+- [Mats Lindestam brought this change]
+
+  libssh2: add SHA256 fingerprint support
+  
+  Added support for SHA256 fingerprint in command line curl and in
+  libcurl.
+  
+  Closes #7646
+
+- libcurl.rc: switch out the copyright symbol for plain ASCII
+  
+  Reported-by: Vitaly Varyvdin
+  Assisted-by: Viktor Szakats
+  Fixes #7765
+  Closes #7776
+
+- [Jun-ya Kato brought this change]
+
+  ngtcp2: fix QUIC transport parameter version
+  
+  fix inappropriate version setting for QUIC transport parameters.
+  this patch keeps curl with ngtcp2 uses QUIC draft version (h3-29).
+  
+  Closes #7771
+
+- examples/imap-append: fix end-of-data check
+  
+  Reported-by: Alexander Chuykov
+  Fixes #7774
+  Closes #7775
+
+Michael Kaufmann (24 Sep 2021)
+- vtls: Fix a memory leak if an SSL session cannot be added to the cache
+  
+  On connection shutdown, a new TLS session ticket may arrive after the
+  SSL session cache has already been destructed. In this case, the new
+  SSL session cannot be added to the SSL session cache.
+  
+  The callers of Curl_ssl_addsessionid() need to know whether the SSL
+  session has been added to the cache. If it has not been added, the
+  reference counter of the SSL session must not be incremented, or memory
+  used by the SSL session must be freed. This is now possible with the new
+  output parameter "added" of Curl_ssl_addsessionid().
+  
+  Fixes #7683
+  Closes #7752
+
+Daniel Stenberg (24 Sep 2021)
+- [Momoka Yamamoto brought this change]
+
+  HTTP3.md: use 'autoreconf -fi' instead of buildconf
+  
+  buildconf is not used since #5853
+  
+  Closes #7746
+
+- GIT-INFO: rephrase to adapt to s/buildconf/autoreconf
+
+- [h1zzz brought this change]
+
+  llist: remove redundant code, branch will not be executed
+  
+  Closes #7770
+
+- [tlahn brought this change]
+
+  HTTP-COOKIES.md: remove duplicate 'each'
+  
+  Closes #7772
+
+Jay Satiro (24 Sep 2021)
+- [Joel Depooter brought this change]
+
+  libssh2: Get the version at runtime if possible
+  
+  Previously this code used a compile time constant, meaning that libcurl
+  always reported the libssh2 version that libcurl was built with. This
+  could differ from the libssh2 version actually being used. The new code
+  uses the CURL_LIBSSH2_VERSION macro, which is defined in ssh.h. The
+  macro calls the libssh2_version function if it is available, otherwise
+  it falls back to the compile time version.
+  
+  Closes https://github.com/curl/curl/pull/7768
+
+- [Joel Depooter brought this change]
+
+  schannel: fix typo
+  
+  Closes https://github.com/curl/curl/pull/7769
+
+Daniel Stenberg (23 Sep 2021)
+- cmake: with OpenSSL, define OPENSSL_SUPPRESS_DEPRECATED
+  
+  To avoid the "... is deprecated" warnings brought by OpenSSL v3.
+  (We need to address the underlying code at some point of course.)
+  
+  Assisted-by: Jakub Zakrzewski
+  Closes #7767
+
+- curl-openssl: pass argument to sed single-quoted
+  
+  ... instead of using an escaped double-quote. This is an attempt to make
+  this work better with ksh that otherwise would insist on a double
+  escape!
+  
+  Reported-by: Randall S. Becker
+  Fixes #7758
+  Closes #7764
+
+- RELEASE-NOTES: synced
+  
+  Bumped curlver to 7.80.0-dev
+
+- [a1346054 brought this change]
+
+  misc: fix typos in docs and comments
+  
+  No user facing output from curl/libcurl is changed by this, just
+  comments.
+  
+  Closes #7747
+
+- [Thomas M. DuBuisson brought this change]
+
+  ci: update Lift config to match requirements of curl build
+  
+  Also renamed Muse -> Lift, the new tool name.
+  
+  Closes #7761
+
+- [Rikard Falkeborn brought this change]
+
+  cleanup: constify unmodified static structs
+  
+  Constify a number of static structs that are never modified. Make them
+  const to show this.
+  
+  Closes #7759
+
+Version 7.79.1 (22 Sep 2021)
+
+Daniel Stenberg (22 Sep 2021)
+- RELEASE-NOTES: synced
+  
+  curl 7.79.1 release
+
+- THANKS: added names from the 7.79.1 release
+
+- test897: verify delivery of IMAP post-body header content
+  
+  The "content" is delivered as "body" by curl, but the envelope continues
+  after the body and the rest of it should be delivered as header.
+  
+  The IMAP server can now get 'POSTFETCH' set to include more data to
+  include after the body and test 897 is done to verify that such "extra"
+  header data is in fact delivered by curl as header.
+  
+  Ref: #7284 but fails to reproduce the issue
+  
+  Closes #7748
+
+- KNOWN_BUGS: connection migration doesn't work
+  
+  Closes #7695
+
+- RELEASE-NOTES: synced
+
+- http: fix the broken >3 digit response code detection
+  
+  When the "reason phrase" in the HTTP status line starts with a digit,
+  that was treated as the forth response code digit and curl would claim
+  the response to be non-compliant.
+  
+  Added test 1466 to verify this case.
+  
+  Regression brought by 5dc594e44f73b17
+  Reported-by: Glenn de boer
+  Fixes #7738
+  Closes #7739
+
+Jay Satiro (17 Sep 2021)
+- strerror: use sys_errlist instead of strerror on Windows
+  
+  - Change Curl_strerror to use sys_errlist[errnum] instead of strerror to
+    retrieve the error message on Windows.
+  
+  Windows' strerror writes to a static buffer and is not thread-safe.
+  
+  Follow-up to 2f0bb86 which removed most instances of strerror in favor
+  of calling Curl_strerror (which calls strerror_r for other platforms).
+  
+  Ref: https://github.com/curl/curl/pull/7685
+  Ref: https://github.com/curl/curl/commit/2f0bb86
+  
+  Closes https://github.com/curl/curl/pull/7735
+
+Daniel Stenberg (16 Sep 2021)
+- dist: provide lib/.checksrc in the tarball
+  
+  So that debug builds work (checksrc really)
+  
+  Reported-by: Marcel Raad
+  Reported-by: tawmoto on github
+  Fixes #7733
+  Closes #7734
+
+- TODO: Improve documentation about fork safety
+  
+  Closes #6968
+
+- hsts: CURLSTS_FAIL from hsts read callback should fail transfer
+  
+  ... and have CURLE_ABORTED_BY_CALLBACK returned.
+  
+  Extended test 1915 to verify.
+  
+  Reported-by: Jonathan Cardoso
+  Fixes #7726
+  Closes #7729
+
+- test1184: disable
+  
+  The test should be fine and it works for me repeated when run manually,
+  but clearly it causes CI failures and it needs more research.
+  
+  Reported-by: RiderALT on github
+  Fixes #7725
+  Closes #7732
+
+- Curl_http2_setup: don't change connection data on repeat invokes
+  
+  Regression from 3cb8a748670ab88c (releasde in 7.79.0). That change moved
+  transfer oriented inits to before the check but also erroneously moved a
+  few connection oriented ones, which causes problems.
+  
+  Reported-by: Evangelos Foutras
+  Fixes #7730
+  Closes #7731
+
+- RELEASE-NOTES: synced
+  
+  and bump to 7.79.1
+
+Kamil Dudka (16 Sep 2021)
+- tests/sshserver.pl: make it work with openssh-8.7p1
+  
+  ... by not using options with no argument where an argument is required:
+  
+  === Start of file tests/log/ssh_server.log
+  curl_sshd_config line 6: no argument after keyword "DenyGroups"
+  curl_sshd_config line 7: no argument after keyword "AllowGroups"
+  curl_sshd_config line 10: Deprecated option AuthorizedKeysFile2
+  curl_sshd_config line 29: Deprecated option KeyRegenerationInterval
+  curl_sshd_config line 39: Deprecated option RhostsRSAAuthentication
+  curl_sshd_config line 40: Deprecated option RSAAuthentication
+  curl_sshd_config line 41: Deprecated option ServerKeyBits
+  curl_sshd_config line 45: Deprecated option UseLogin
+  curl_sshd_config line 56: no argument after keyword "AcceptEnv"
+  curl_sshd_config: terminating, 3 bad configuration options
+  === End of file tests/log/ssh_server.log
+  
+  === Start of file log/sftp_server.log
+  curl_sftp_config line 33: Unsupported option "rhostsrsaauthentication"
+  curl_sftp_config line 34: Unsupported option "rsaauthentication"
+  curl_sftp_config line 52: no argument after keyword "sendenv"
+  curl_sftp_config: terminating, 1 bad configuration options
+  Connection closed.
+  Connection closed
+  === End of file log/sftp_server.log
+  
+  Closes #7724
+
+Daniel Stenberg (15 Sep 2021)
+- hsts: handle unlimited expiry
+  
+  When setting a blank expire string, meaning unlimited, curl would pass
+  TIME_T_MAX to getime_r() when creating the output, while on 64 bit
+  systems such a large value cannot be convetered to a tm struct making
+  curl to exit the loop with an error instead. It can't be converted
+  because the year it would represent doesn't fit in the 'int tm_year'
+  field!
+  
+  Starting now, unlimited expiry is instead handled differently by using a
+  human readable expiry date spelled out as "unlimited" instead of trying
+  to use a distant actual date.
+  
+  Test 1660 and 1915 have been updated to help verify this change.
+  
+  Reported-by: Jonathan Cardoso
+  Fixes #7720
+  Closes #7721
+
+- curl_multi_fdset: make FD_SET() not operate on sockets out of range
+  
+  The VALID_SOCK() macro was made to only check for FD_SETSIZE if curl was
+  built to use select(), even though the curl_multi_fdset() function
+  always and unconditionally uses FD_SET and needs the check.
+  
+  Reported-by: 0xee on github
+  Fixes #7718
+  Closes #7719
+
+- FAQ: add GOPHERS + curl works on data, not files
+
+Version 7.79.0 (14 Sep 2021)
+
+Daniel Stenberg (14 Sep 2021)
+- RELEASE-NOTES: synced
+  
+  For the 7.79.0 release
+
+- THANKS: add contributors from 7.79.0 release cycle
+
+- FAQ: add two dev related questions
+  
+    8.1 Why does curl use C89?
+    8.2 Will curl be rewritten?
+  
+  Spell-checked-by: Paul Johnson
+  Closes #7715
+
+- zuul.d/jobs: disable three tests for *-openssl-disable-proxy
+  
+  ... as they mysteriously seem to permfail without being related to
+  proxy.
+  
+  Closes #7714
+
+- [Patrick Monnerat brought this change]
+
+  ftp,imap,pop3,smtp: reject STARTTLS server response pipelining
+  
+  If a server pipelines future responses within the STARTTLS response, the
+  former are preserved in the pingpong cache across TLS negotiation and
+  used as responses to the encrypted commands.
+  
+  This fix detects pipelined STARTTLS responses and rejects them with an
+  error.
+  
+  CVE-2021-22947
+  
+  Bug: https://curl.se/docs/CVE-2021-22947.html
+
+- [Patrick Monnerat brought this change]
+
+  ftp,imap,pop3: do not ignore --ssl-reqd
+  
+  In imap and pop3, check if TLS is required even when capabilities
+  request has failed.
+  
+  In ftp, ignore preauthentication (230 status of server greeting) if TLS
+  is required.
+  
+  Bug: https://curl.se/docs/CVE-2021-22946.html
+  
+  CVE-2021-22946
+
+- [z2_ on hackerone brought this change]
+
+  mqtt: clear the leftovers pointer when sending succeeds
+  
+  CVE-2021-22945
+  
+  Bug: https://curl.se/docs/CVE-2021-22945.html
+
+- zuul: bump the rustls job to use v0.7.2
+  
+  ... and add -lm when using a rust library.
+  
+  Closes #7701
+
+- RELEASE-PROCEDURE: add release dates from now to 8.0.0 in 2023
+
+- SECURITY-PROCESS: tweak a little to match current practices
+  
+  Closes #7713
+
+- http_proxy: fix the User-Agent inclusion in CONNECT
+  
+  It should not refer to the uagent string that is allocated and created
+  for the end server http request, as that pointer may be cleared on
+  subsequent CONNECT requests.
+  
+  Added test case 1184 to verify.
+  
+  Reported-by: T200proX7 on github
+  Fixes #7705
+  Closes #7707
+
+- Curl_hsts_loadcb: don't attempt to load if hsts wasn't inited
+  
+  Reported-by: Jonathan Cardoso
+  Fixes #7710
+  Closes #7711
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: fix build with ngtcp2 and nghttp3
+  
+  ngtcp2_conn_client_new and nghttp3_conn_client_new are now macros.
+  Check the wrapped functions instead.
+  
+  ngtcp2_stream_close callback now takes flags parameter.
+  
+  Closes #7709
+
+- write-out.d: clarify size_download/upload
+  
+  They show the number of "body" bytes transfered.
+  Fixes #7702
+  Closes #7706
+
+- http2: Curl_http2_setup needs to init stream data in all invokes
+  
+  Thus function was written to avoid doing multiple connection data
+  initializations, which is fine, but since it also initiates stream
+  related data it is crucial that it doesn't skip those even if called
+  again for the same connection. Solved by moving the stream
+  initializations before the "doing-it-again" check.
+  
+  Reported-by: Inho Oh
+  Fixes #7630
+  Closes #7692
+
+- url: fix compiler warning in no-verbose builds
+  
+  Follow-up from 2f0bb864c12
+  
+  Closes #7700
+
+- non-ascii: fix build errors from strerror fix
+  
+  Follow-up to 2f0bb864c12
+  
+  Closes #7697
+
+- parse_args: redo the warnings for --remote-header-name combos
+  
+  ... to avoid the memory leak risk pointed out by scan-build.
+  
+  Follow-up from 7a3e981781d6c18a
+  
+  Closes #7698
+
+- ngtcp2: adapt to new size defintions upstream
+  
+  Reviewed-by: Tatsuhiro Tsujikawa
+  Closes #7699
+
+- rustls: add strerror.h include
+  
+  Follow-up to 2f0bb864c12
+
+- docs: the security list is reached at security at curl.se now
+  
+  Also update the FAQ section a bit to encourage users to rather submit
+  security issues on hackerone than sending email.
+  
+  Closes #7689
+
+Marc Hoersken (9 Sep 2021)
+- runtests: add option -u to error on server unexpectedly alive
+  
+  Let's try to actually handle the server unexpectedly alive
+  case by first making them visible on CI builds as failures.
+  
+  This is needed to detect issues with killing of the test
+  servers completely including nested process chains with
+  multiple PIDs per test server (including bash and perl).
+  
+  On Windows/cygwin platforms this is especially helpful with
+  debugging PID mixups due to cygwin using its own PID space.
+  
+  Reviewed-by: Daniel Stenberg
+  Closes #7180
+
+Daniel Stenberg (9 Sep 2021)
+- opts docs: unify phrasing in NAME header
+  
+  - avoid writing "set ..." or "enable/disable ..." or "specify ..."
+    *All* options for curl_easy_setopt() are about setting or enabling
+    things and most of the existing options didn't use that way of
+    description.
+  
+  - start with lowercase letter, unless abbreviation. For consistency.
+  
+  - Some additional touch-ups
+  
+  Closes #7688
+
+- strerror.h: remove the #include from files not using it
+
+- lib: don't use strerror()
+  
+  We have and provide Curl_strerror() internally for a reason: strerror()
+  is not necessarily thread-safe so we should always try to avoid it.
+  
+  Extended checksrc to warn for this, but feature the check disabled by
+  default and only enable it in lib/
+  
+  Closes #7685
+
+Daniel Gustafsson (8 Sep 2021)
+- cirrus: Add FreeBSD 13.0 job and disable sanitizer build
+  
+  As alluded to the in the now removed comment, a 13.0 image became
+  available and is now ready to be used.
+  
+  The sanitizer builds were running on the 12.1 image which since has
+  been removed from the config, leaving the builds not running at all.
+  When enabled it turns out that they don't actually work due to very
+  long timeouts in executing the tests, so keep the disabled for now
+  but a bit more controlled.
+  
+  Closes #7592
+
+Daniel Stenberg (8 Sep 2021)
+- copyrights: update copyright year ranges
+
+- RELEASE-NOTES: synced
+
+- INTERNALS: c-ares has a new home: c-ares.org
+
+- docs: remove experimental mentions from HSTS and MQTT
+  
+  Reported-by: Jonathan Cardoso
+  Bug: https://github.com/curl/curl/pull/6700#issuecomment-913792863
+  Closes #7681
+
+- [Cao ZhenXiang brought this change]
+
+  curl: add warning for incompatible parameters usage
+  
+  --continue-at - and --remote-header-name are known incompatible parameters
+  
+  Closes #7674
+
+- [git-bruh brought this change]
+
+  examples/*hiperfifo.c: fix calloc arguments to match function proto
+  
+  Closes #7678
+
+- INTERNALS: bump c-ares requirement to 1.16.0
+  
+  Since ba904db0705c93 we use ares_getaddrinfo, added in c-ares 1.16.0
+
+- curl: stop retry if Retry-After: is longer than allowed
+  
+  If Retry-After: specifies a period that is longer than what fits within
+  --retry-max-time, then stop retrying immediately.
+  
+  Added test 366 to verify.
+  
+  Reported-by: Kari Pahula
+  Fixes #7675
+  Closes #7676
+
+- [Michał Antoniak brought this change]
+
+  mbedtls: avoid using a large buffer on the stack
+  
+  Use dynamic memory allocation for the buffer used in checking "pinned
+  public key". The PUB_DER_MAX_BYTES parameter with default settings is
+  set to a value greater than 2kB.
+  
+  Co-authored-by: Daniel Stenberg
+  Closes #7586
+
+- configure: make --disable-hsts work
+  
+  The AC_ARG_ENABLE() macro itself uses a variable called
+  'enable_[option]', so when our script also used a variable with that
+  name for the purpose of storing what the user wants, it also
+  accidentally made it impossible to switch off the feature with
+  --disable-hsts. Fix this by renaming our variable.
+  
+  Reported-by: Michał Antoniak
+  Fixes #7669
+  Closes #7672
+
+Jay Satiro (5 Sep 2021)
+- config.d: note that curlrc is used even when --config
+  
+  Bug: https://github.com/curl/curl/pull/7666#issuecomment-912214751
+  Reported-by: Viktor Szakats
+  
+  Closes https://github.com/curl/curl/pull/7667
+
+Daniel Stenberg (4 Sep 2021)
+- RELEASE-NOTES: synced
+
+- test1173: check references to libcurl options
+  
+  ... that they refer to actual existing libcurl options.
+  
+  Reviewed-by: Daniel Gustafsson
+  Closes #7656
+
+- CURLOPT_UNIX_SOCKET_PATH.3: remove nginx reference, add see also
+  
+  Closes #7656
+
+- opt-docs: verify man page sections + order
+  
+  In every libcurl option man page there are now 8 mandatory sections that
+  must use the right name in the correct order and test 1173 verifies
+  this. Only 14 man pages needed adjustments.
+  
+  The sections and the order is as follows:
+  
+   - NAME
+   - SYNOPSIS
+   - DESCRIPTION
+   - PROTOCOLS
+   - EXAMPLE
+   - AVAILABILITY
+   - RETURN VALUE
+   - SEE ALSO
+  
+  Reviewed-by: Daniel Gustafsson
+  Closes #7656
+
+- opt-docs: make sure all man pages have examples
+  
+  Extended manpage-syntax.pl (run by test 1173) to check that every man
+  page for a libcurl option has an EXAMPLE section that is more than two
+  lines. Then fixed all errors it found and added examples.
+  
+  Reviewed-by: Daniel Gustafsson
+  Closes #7656
+
+- get.d: provide more useful examples
+  
+  Closes #7668
+
+- page-header: add GOPHERS, simplify wording in the 1st para
+  
+  Closes #7665
+
+- connect: get local port + ip also when reusing connections
+  
+  Regression. In d6a37c23a3c (7.75.0) we removed the duplicated storage
+  (connection + easy handle), so this info needs be extracted again even
+  for re-used connections.
+  
+  Add test 435 to verify
+  
+  Reported-by: Max Dymond
+  Fixes #7660
+  Closes #7662
+
+Marcel Raad (2 Sep 2021)
+- multi: fix compiler warning with `CURL_DISABLE_WAKEUP`
+  
+  `use_wakeup` is unused in this case.
+  
+  Closes https://github.com/curl/curl/pull/7661
+
+Daniel Stenberg (1 Sep 2021)
+- tests: adjust the tftpd output to work with hyper mode
+  
+  By making them look less like http headers, the hyper mode "tweak"
+  doesn't interfere.
+  
+  Enable test 2002 and 2003 in hyper builds (and 1280 which is unrelated
+  but should be enabled).
+  
+  Closes #7658
+
+Daniel Gustafsson (1 Sep 2021)
+- [Gisle Vanem brought this change]
+
+  openssl: annotate SSL3_MT_SUPPLEMENTAL_DATA
+  
+  This adds support for the previously unhandled supplemental data which
+  in -v output was printed like:
+  
+      TLSv1.2 (IN), TLS header, Unknown (23):
+  
+  These will now be printed with proper annotation:
+  
+      TLSv1.2 (OUT), TLS header, Supplemental data (23):
+  
+  Closes #7652
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (1 Sep 2021)
+- curl.1: provide examples for each option
+  
+  The file format for each option now features a "Example:" header that
+  can provide one or more examples that get rendered appropriately in the
+  output. All options MUST have at least one example or gen.pl complains
+  at build-time.
+  
+  This fix also does a few other minor format and consistency cleanups.
+  
+  Closes #7654
+
+- progress: make trspeed avoid floats
+  
+  and compiler warnings for data conversions.
+  
+  Reported-by: Michał Antoniak
+  Fixes #7645
+  Closes #7653
+
+- test365: verify response with chunked AND Content-Length headers
+
+- http: ignore content-length if any transfer-encoding is used
+  
+  Fixes #7643
+  Closes #7649
+
+- RELEASE-NOTES: synced
+
+- Revert "http2: skip immediate parsing of payload following protocol switch"
+  
+  This reverts commit 455a63c66f188598275e87d32de2c4e8e26b80cb.
+  
+  Reported-by: Tk Xiong
+  Fixes #7633
+  Closes #7648
+
+- KNOWN_BUGS: HTTP/3 doesn't support client certs
+  
+  Closes #7625
+
+- mailing lists: move from cool.haxx.se to lists.haxx.se
+
+- http_proxy: only wait for writable socket while sending request
+  
+  Otherwise it would wait socket writability even after the entire CONNECT
+  request has sent and make curl basically busy-loop while waiting for a
+  response to come back.
+  
+  The previous fix attempt in #7484 (c27a70a591a4) was inadequate.
+  
+  Reported-by: zloi-user on github
+  Reported-by: Oleguer Llopart
+  Fixes #7589
+  Closes #7647
+
+- http: disallow >3-digit response codes
+  
+  Make the built-in HTTP parser behave similar to hyper and reject any
+  HTTP response using more than 3 digits for the response code.
+  
+  Updated test 1432 accordingly.
+  Enabled test 1432 in the hyper builds.
+  
+  Closes #7641
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: stop buffering crypto data
+  
+  Stop buffering crypto data because libngtcp2 now buffers submitted
+  crypto data.
+  
+  Closes #7637
+
+- test1280: CRLFify the response to please hyper
+  
+  Closes #7639
+
+- tests: enable test 1129 for hyper builds
+  
+  Closes #7638
+
+- curl: better error message when -O fails to get a good name
+  
+  Due to how this currently works internally, it needs a working initial
+  file name to store contents in, so it may still fail even with -J is
+  used (and thus accepting a name from content-disposition:) if the file
+  name part of the URL isn't "good enough".
+  
+  Fixes #7628
+  Closes #7635
+
+- curl_easy_setopt: tweak the string copy wording
+  
+  Reported-by: Yaobin Wen
+  Fixes #7632
+  Closes #7634
+
+- RELEASE-NOTES: synced
+
+- [Don J Olmstead brought this change]
+
+  cmake: sync CURL_DISABLE options
+  
+  Adds the full listing of CURL_DISABLE options to the CMake build. Moves
+  all option code, except for CURL_DISABLE_OPENSSL_AUTO_LOA_CONFIG which
+  resides near OpenSSL configuration, to the same block of code. Also
+  sorts the options here and in the cmake config header.
+  
+  Additionally sorted the CURL-DISABLE listing and fixed the
+  CURL_DISABLE_POP3 option.
+  
+  Closes #7624
+
+Jay Satiro (25 Aug 2021)
+- KNOWN_BUGS: FTPS upload data loss with TLS 1.3
+  
+  Bug: https://github.com/curl/curl/issues/6149
+  Reported-by: Bylon2@users.noreply.github.com
+  
+  Closes https://github.com/curl/curl/pull/7623
+
+Daniel Stenberg (24 Aug 2021)
+- cmake: avoid poll() on macOS
+  
+  ... like we do in configure builds. Since poll() on macOS is not
+  reliable enough.
+  
+  Reported-by: marc-groundctl
+  Fixes #7595
+  Closes #7619
+
+- c-hyper: handle HTTP/1.1 => HTTP/1.0 downgrade on reused connection
+  
+  Enable test 1074
+  
+  Closes #7617
+
+- c-hyper: deal with Expect: 100-continue combined with POSTFIELDS
+  
+  Enable test 1130 and 1131
+  
+  Closes #7616
+
+- [a1346054 brought this change]
+
+  tests: be explicit about using 'python3' instead of 'python'
+  
+  This fixes running tests in virtualenvs (or on distros) that no longer
+  have a symlink from python to python2 or python3.
+  
+  Closes #7602
+
+- [a1346054 brought this change]
+
+  scripts: invoke interpreters through /usr/bin/env
+  
+  Closes #7602
+
+- DISABLED: enable 11 more tests for hyper builds
+  
+  Closes #7612
+
+- setopt: enable CURLOPT_IGNORE_CONTENT_LENGTH for hyper
+  
+  Since this option is also used for FTP, it needs to work to set for
+  applications even if hyper doesn't support it for HTTP. Verified by test
+  1137.
+  
+  Updated docs to specify that the option doesn't work for HTTP when using
+  the hyper backend.
+  
+  Closes #7614
+
+- test1138: remove trailing space to make work with hyper
+  
+  Closes #7613
+
+- libcurl-errors.3: clarify two CURLUcode errors
+  
+  CURLUE_BAD_HANDLE and CURLUE_BAD_PARTPOINTER should be for "bad" or
+  wrong pointers in a generic sense, not just for NULL pointers.
+  
+  Reviewed-by: Jay Satiro
+  
+  Ref: #7605
+  Closes #7611
+
+Jay Satiro (23 Aug 2021)
+- symbols-in-versions: fix CURLSSLBACKEND_QSOSSL last used version
+  
+  ... and also change the 'Removed' column name to 'Last' since that
+  column is for the last version to contain the symbol.
+  
+  Closes https://github.com/curl/curl/pull/7609
+
+Daniel Stenberg (23 Aug 2021)
+- urlapi.c:seturl: assert URL instead of using if-check
+  
+  There's no code flow possible where this can happen. The assert makes
+  sure it also won't be introduced undetected in the future.
+  
+  Closes #7610
+
+- curl-openssl.m4: show correct output for OpenSSL v3
+  
+  Using 3.0.0 versions configure should now show this:
+  
+  checking for OpenSSL headers version... 3.0.0 - 0x300
+  checking for OpenSSL library version... 3.0.0
+  checking for OpenSSL headers and library versions matching... yes
+  
+  This output doesn't actually change what configure generates but is only
+  "cosmetic".
+  
+  Reported-by: Randall S. Becker
+  Fixes #7606
+  Closes #7608
+
+Jay Satiro (22 Aug 2021)
+- mksymbolsmanpage.pl: Fix showing symbol's last used version
+  
+  Prior to this change the symbol's deprecated version was erroneously
+  shown as its last used version.
+  
+  Bug: https://github.com/curl/curl/commit/4e53b94#commitcomment-55239509
+  Reported-by: i-ky@users.noreply.github.com
+
+Daniel Stenberg (21 Aug 2021)
+- mksymbolsmanpage.pl: match symbols case insenitively
+  
+  Follow-up to 4e53b9430c750 which made this bug show.
+  
+  Reported-by: i-ky
+  Bug: https://github.com/curl/curl/commit/4e53b9430c7504de8984796e2a2091ec16f27136#commitcomment-55239253
+  Closes #7607
+
+- asyn-ares: call ares_freeaddrinfo() to clean up addrinfo results
+  
+  As this leaks memory otherwise
+  
+  Follow-up to ba904db0705c931
+  
+  Closes #7599
+
+- [Ehren Bendler brought this change]
+
+  wolfssl: clean up wolfcrypt error queue
+  
+  If wolfSSL is built in certain ways (OPENSSL_EXTRA or Debug), the error
+  queue gets added on to for each session and never freed. Fix it by
+  calling ERR_clear_error() like in vtls/openssl when needed. This func is
+  a no-op in wolfcrypt if the error queue is not enabled.
+  
+  Closes #7594
+
+- man pages: remove trailing whitespaces
+  
+  Extended test 1173 (via the manpage-syntax.pl script) to detect and warn
+  for them.
+  
+  Ref: #7602
+  Reported-by: a1346054 on github
+  Closes #7604
+
+- mailmap: add Gleb Ivanovsky
+
+- config.d: escape the backslash properly
+  
+  Closes #7603
+
+- [Don J Olmstead brought this change]
+
+  curl_setup.h: sync values for HTTP_ONLY
+  
+  The values for HTTP_ONLY differed between CMakeLists.txt and
+  curl_setup.h. Sync them and sort the values in curl_setup.h to make it
+  easier to spot differences.
+  
+  Closes #7601
+
+Jay Satiro (21 Aug 2021)
+- configure: set classic mingw minimum OS version to XP
+  
+  - If the user has not specified a minimum OS version (via WINVER or
+    _WIN32_WINNT macros) then set it to Windows XP.
+  
+  Prior to this change classic MinGW defaulted the minimum OS version
+  to Windows NT 4.0 which is way too old. At least Windows XP is needed
+  for getaddrinfo (which resolves hostnames to IPv6 addresses).
+  
+  Ref: https://github.com/curl/curl/issues/7483#issuecomment-891597034
+  
+  Closes https://github.com/curl/curl/pull/7581
+
+- schannel: Work around typo in classic mingw macro
+  
+  - Define ALG_CLASS_DHASH (the typo from the include) to ALG_CLASS_HASH.
+  
+  Prior to this change there was an incomplete fix to ignore the
+  CALG_TLS1PRF macro on those versions of MinGW where it uses the
+  ALG_CLASS_DHASH typoed macro.
+  
+  Ref: 48cf45c
+  Ref: https://osdn.net/projects/mingw/ticket/38391
+  Ref: https://github.com/curl/curl/issues/2924
+  
+  Closes https://github.com/curl/curl/pull/7580
+
+Daniel Stenberg (20 Aug 2021)
+- RELEASE-NOTES: synced
+
+- http_proxy: fix user-agent and custom headers for CONNECT with hyper
+  
+  Enable test 287
+  
+  Closes #7598
+
+- c-hyper: initial support for "dumping" 1xx HTTP responses
+  
+  With the use hyper_request_on_informational()
+  
+  Enable test 155 and 158
+  
+  Closes #7597
+
+Marc Hoersken (18 Aug 2021)
+- tests/*server.pl: flush output before executing subprocess
+  
+  Also avoid shell processes staying around by using exec.
+  This is necessary to avoid output data being buffering
+  inside the process chain of Perl, Bash/Shell and our
+  test server binaries. On non-Windows systems the exec
+  will also make the subprocess replace the intermediate
+  shell, but on Windows it will at least bind the processes
+  together since there is no real fork or exec available.
+  
+  See: https://cygwin.com/cygwin-ug-net/highlights.html
+  and: https://docs.microsoft.com/cpp/c-runtime-library/exec-wexec-functions
+  Ref: https://github.com/curl/curl/pull/7530#issuecomment-900949010
+  
+  Reviewed-by: Daniel Stenberg
+  Reviewed-by: Jay Satiro
+  Closes #7530
+
+- CI: use GitHub Container Registry instead of Docker Hub
+  
+  Avoid limits on Docker Hub and improve image pull/download speed.
+  
+  Closes #7587
+
+Daniel Stenberg (18 Aug 2021)
+- openssl: when creating a new context, there cannot be an old one
+  
+  Remove the previous handling that would call SSL_CTX_free(), and instead
+  add an assert that halts a debug build if there ever is a context
+  already set at this point.
+  
+  Closes #7585
+
+Jay Satiro (18 Aug 2021)
+- KNOWN_BUGS: Renegotiate from server may cause hang for OpenSSL backend
+  
+  Closes https://github.com/curl/curl/issues/6785
+
+Viktor Szakats (17 Aug 2021)
+- docs/BINDINGS: URL update
+
+Marc Hoersken (17 Aug 2021)
+- tests/server/*.c: align handling of portfile argument and file
+  
+  1. Call the internal variable portname (like pidname) everywhere.
+  2. Have a variable wroteportfile (like wrotepidfile) everywhere.
+  3. Make sure the file is cleaned up on exit (like pidfile).
+  4. Add parameter --portfile to usage outputs everywhere.
+  
+  Reviewed-by: Daniel Stenberg
+  
+  Replaces #7523
+  Closes #7574
+
+Daniel Gustafsson (17 Aug 2021)
+- KNOWN_BUGS: Fix a number of typos in KNOWN_BUGS
+  
+  Fixes a set of typos found in section 11.3.
+
+Daniel Stenberg (17 Aug 2021)
+- getparameter: fix the --local-port number parser
+  
+  It could previously get tricked into parsing the uninitialized stack
+  based buffer.
+  
+  Reported-by: Brian Carpenter
+  Closes #7582
+
+- KNOWN_BUGS: Can't use Secure Transport with Crypto Token Kit
+  
+  Closes #7048
+
+- [Jan Verbeek brought this change]
+
+  curl: add warning for ignored data after quoted form parameter
+  
+  In an argument like `-F 'x=@/etc/hostname;filename="foo"abc'` the `abc`
+  is ignored. This adds a warning if the ignored data isn't all
+  whitespace.
+  
+  Closes #7394
+
+Jay Satiro (17 Aug 2021)
+- codeql: fix error "Resource not accessible by integration"
+  
+  - Enable codeql writing security-events.
+  
+  GitHub set the default permissions to read, apparently since earlier
+  this year.
+  
+  Ref: https://github.com/github/codeql-action/issues/464
+  Ref: https://github.blog/changelog/2021-04-20-github-actions-control-permissions-for-github_token/
+  
+  Fixes https://github.com/curl/curl/issues/7575
+  Closes https://github.com/curl/curl/pull/7576
+
+- tool_operate: Fix --fail-early with parallel transfers
+  
+  - Abort via progress callback to fail early during parallel transfers.
+  
+  When a critical error occurs during a transfer (eg --fail-early
+  constraint) then other running transfers will be aborted via progress
+  callback and finish with error CURLE_ABORTED_BY_CALLBACK (42). In this
+  case, the callback error does not become the most recent error and a
+  custom error message is used for those transfers:
+  
+  curld --fail --fail-early --parallel
+  https://httpbin.org/status/404 https://httpbin.org/delay/10
+  
+  curl: (22) The requested URL returned error: 404
+  curl: (42) Transfer aborted due to critical error in another transfer
+  
+  > echo %ERRORLEVEL%
+  22
+  
+  Fixes https://github.com/curl/curl/issues/6939
+  Closes https://github.com/curl/curl/pull/6984
+
+Daniel Stenberg (17 Aug 2021)
+- [Sergey Markelov brought this change]
+
+  sectransp: support CURLINFO_CERTINFO
+  
+  Fixes #4130
+  Closes #7372
+
+- ngtcp2: remove the acked_crypto_offset struct field init
+  
+  ... as it is gone from the API upstream.
+  
+  Closes #7578
+
+- misc: update incorrect copyright year ranges
+  
+  Closes #7577
+
+- KNOWN_BUGS: HTTP/3 quiche upload large file fails
+  
+  Closes #7532
+
+- KNOWN_BUGS: CMake build with MIT Kerberos does not work
+  
+  Closes #6904
+
+- TODO: add asynch getaddrinfo support
+  
+  Closes #6746
+
+- RELEASE-NOTES: synced
+
+- [Artur Sinila brought this change]
+
+  http2: revert call the handle-closed function correctly on closed stream
+  
+  Reverts 252790c5335a221
+  
+  Assisted-by: Gergely Nagy
+  Fixes #7400
+  Closes #7525
+
+- [Patrick Monnerat brought this change]
+
+  auth: do not append zero-terminator to authorisation id in kerberos
+  
+  RFC4752 Section 3.1 states "The authorization identity is not terminated
+  with a zero-valued (%x00) octet". Although a comment in code said it may
+  be needed anyway, nothing confirms it. In addition, servers may consider
+  it as part of the identity, causing a failure.
+  
+  Closes #7008
+
+- [Patrick Monnerat brought this change]
+
+  auth: use sasl authzid option in kerberos
+  
+  ... instead of deriving it from active ticket.
+  Closes #7008
+
+- [Patrick Monnerat brought this change]
+
+  auth: we do not support a security layer after kerberos authentication
+  
+  Closes #7008
+
+- [Patrick Monnerat brought this change]
+
+  auth: properly handle byte order in kerberos security message
+  
+  Closes #7008
+
+- [z2_ brought this change]
+
+  x509asn1: fix heap over-read when parsing x509 certificates
+  
+  Assisted-by: Patrick Monnerat
+  Closes #7536
+
+- KNOWN_BUGS: Disconnects don't do verbose
+  
+  Closes #6995
+
+- mailmap: fixup Michał Antoniak
+
+- [Michał Antoniak brought this change]
+
+  build: fix compiler warnings
+  
+  For when CURL_DISABLE_VERBOSE_STRINGS and DEBUGBUILD flags are both
+  active.
+  
+  - socks.c : warning C4100: 'lineno': unreferenced formal parameter
+    (co-authored by Daniel Stenberg)
+  
+  - mbedtls.c: warning C4189: 'port': local variable is initialized but
+    not referenced
+  
+  - schannel.c: warning C4189: 'hostname': local variable is initialized
+    but not referenced
+  
+  Cloes #7528
+
+- [Gleb Ivanovsky brought this change]
+
+  CODE_STYLE-md: fix bold font style
+  
+  Markdown gets confused with abundance of asterisks, so use underscores
+  instead.
+  
+  Reviewed-by: Daniel Gustafsson
+  Closes #7569
+
+- [Gleb Ivanovsky brought this change]
+
+  CODE_STYLE-md: add missing comma
+  
+  Reviewed-by: Daniel Gustafsson
+  Closes #7570
+
+- [Daniel Gustafsson brought this change]
+
+  examples/ephiperfifo.c: simplify signal handler
+  
+  The signal handler registered for SIGINT is only handling SIGINT
+  so there isn't much need for inspecting the signo.  While there,
+  rename the handler to be more specific.
+  
+  g_should_exit should really be of sig_atomic_t type, but relying
+  on autoconf in the examples seems like a bad idea so keep that
+  for now.
+  
+  Reviewed-by: Daniel Stenberg
+  Closes #7310
+
+- c-hyper: initial step for 100-continue support
+  
+  Enabled test 154
+  
+  Closes #7568
+
+- [Ikko Ashimine brought this change]
+
+  vtls: fix typo in schannel_verify.c
+  
+  occurence -> occurrence
+  
+  Closes #7566
+
+- [Emil Engler brought this change]
+
+  curl_url_get.3: clarify about path and query
+  
+  The current man-page lacks some details regarding the obtained path and
+  query.
+  
+  Closes #7563
+
+- c-hyper: fix header value passed to debug callback
+  
+  Closes #7567
+
+Viktor Szakats (12 Aug 2021)
+- cleanup: URL updates
+  
+  - replace broken URL with the one it was most probably pointing to
+    when added (lib/tftp.c)
+  - replace broken URL with archive.org link (lib/curl_ntlm_wb.c)
+  - delete unnecessary protocol designator from archive.org URL
+    (docs/BINDINGS.md)
+  
+  Closes #7562
+
+Daniel Stenberg (12 Aug 2021)
+- [April King brought this change]
+
+  DEPRECATE.md: linkify curl-library mailing list
+  
+  Closes #7561
+
+- [Barry Pollard brought this change]
+
+  output.d: add method to suppress response bodies
+  
+  Closes #7560
+
+- TODO: remove 'c-ares deviates on http://1346569778'
+  
+  Fixed since 56a037cc0ad1b2 (7.77.0)
+
+- [Colin O'Dell brought this change]
+
+  BINDINGS.md: update links to use https where available
+  
+  Closes #7558
+
+- asyn-ares.c: move all version number checks to the top
+  
+  ... and use #ifdef [feature] in the code as per our guidelines.
+
+- ares: use ares_getaddrinfo()
+  
+  ares_getaddrinfo() is the getaddrinfo() cloned provided by c-ares, introduced
+  in version 1.16.0.
+  
+  With older c-ares versions, curl invokes ares_gethostbyname() twice - once for
+  IPv4 and once for IPv6 to resolve both addresses, and then combines the
+  returned results.
+  
+  Reported-by: jjandesmet
+  Fixes #7364
+  Closes #7552
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: utilize crypto API functions to simplify
+  
+  Closes #7551
+
+- [megatronking brought this change]
+
+  ngtcp2: reset the oustanding send buffer again when drained
+  
+  Closes #7538
+
+Michael Kaufmann (10 Aug 2021)
+- progress: fix a compile warning on some systems
+  
+  lib/progress.c:380:40: warning: conversion to 'long double' from
+  'curl_off_t {aka long long int}' may alter its value [-Wconversion]
+  
+  Closes #7549
+
+Daniel Stenberg (10 Aug 2021)
+- RELEASE-NOTES: synced
+
+- http: consider cookies over localhost to be secure
+  
+  Updated test31.
+  Added test 392 to verify secure cookies used for http://localhost
+  
+  Reviewed-by: Daniel Gustafsson
+  Fixes #6733
+  Closes #7263
+
+- TODO: erase secrets from heap/stack after use
+  
+  Closes #7268
+
+Jay Satiro (10 Aug 2021)
+- hostip: Make Curl_ipv6works function independent of getaddrinfo
+  
+  - Do not assume IPv6 is not working when getaddrinfo is not present.
+  
+  The check to see if IPv6 actually works is now independent of whether
+  there is any resolver that can potentially resolve a hostname to IPv6.
+  
+  Prior to this change if getaddrinfo() was not found at compile time then
+  Curl_ipv6works() would be defined as a macro that returns FALSE.
+  
+  When getaddrinfo is not found then libcurl is built with CURLRES_IPV4
+  defined instead of CURLRES_IPV6, meaning that it cannot do IPv6 lookups
+  in the traditional way. With this commit if libcurl is built with IPv6
+  support (ENABLE_IPV6) but without getaddrinfo (CURLRES_IPV6), and the
+  IPv6 stack is actually working, then it is possible for libcurl to
+  resolve IPv6 addresses by using DoH.
+  
+  Ref: https://github.com/curl/curl/issues/7483#issuecomment-890765378
+  
+  Closes https://github.com/curl/curl/pull/7529
+
+- test1565: fix windows build errors
+  
+  - Use our wait_ms() instead of sleep() since Windows doesn't have the
+    latter.
+  
+  - Use a separate variable to keep track of whether the pthread_t thread
+    id is valid.
+  
+  On Windows pthread_t is not an integer type. pthread offers no macro for
+  invalid pthread_t thread id, so validity is kept track of separately.
+  
+  Closes https://github.com/curl/curl/pull/7527
+
+- [Jeremy Falcon brought this change]
+
+  winbuild/README.md: clarify GEN_PDB option
+  
+  - Document that GEN_PDB option creates an external database.
+  
+  Ref: https://github.com/curl/curl/issues/7502
+
+Daniel Stenberg (9 Aug 2021)
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: replace deprecated functions with nghttp3_conn_shutdown_stream_read
+  
+  Closes #7546
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: rework the return value handling of ngtcp2_conn_writev_stream
+  
+  Rework the return value handling of ngtcp2_conn_writev_stream and treat
+  NGTCP2_ERR_STREAM_SHUT_WR separately.
+  
+  Closes #7546
+
+- configure: error out if both ngtcp2 and quiche are specified
+  
+  Reported-by: Vincent Grande
+  See #7539
+  Closes #7545
+
+- [Jeff Mears brought this change]
+
+  easy: use a custom implementation of wcsdup on Windows
+  
+  ... so that malloc/free overrides from curl_global_init are used for
+  wcsdup correctly.
+  
+  Closes #7540
+
+- zuul: add an mbedtls3 CI job
+  
+  Closes #7544
+
+- [Benau brought this change]
+
+  mbedTLS: initial 3.0.0 support
+  
+  Closes #7428
+
+- RELEASE-NOTES: synced
+
+- configure.ac: revert bad nghttp2 library detection improvements
+  
+  This reverts commit b4b34db65f9f8, 673753344c5f and 29c7cf79e8b.
+  
+  The logic is now back to assuming that the nghttp2 lib is called nghttp2 and
+  nothing else.
+  
+  Reported-by: Rui Pinheiro
+  Reported-by: Alex Crichton
+  Fixes #7514
+  Closes #7515
+
+- happy-eyeballs-timeout-ms.d: polish the wording
+  
+  Reported-by: Josh Soref
+  Fixes #7433
+  Closes #7542
+
+- [modbw brought this change]
+
+  mbedtls_threadlock: fix unused variable warning
+  
+  Closes #7393
+
+- [Tatsuhiro Tsujikawa brought this change]
+
+  ngtcp2: compile with the latest ngtcp2 and nghttp3
+  
+  Closes #7541
+
+Marc Hoersken (31 Jul 2021)
+- CI/cirrus: reduce compile time with increased parallism
+  
+  Cirrus CI VMs have 2 CPUs, let's use them also for Windows builds.
+  
+  Reviewed-by: Daniel Stenberg
+  Closes #7505
+
+Daniel Stenberg (30 Jul 2021)
+- [Bin Lan brought this change]
+
+  tool/tests: fix potential year 2038 issues
+  
+  The length of 'long' in a 32-bit system is 32 bits, which cannot be used
+  to save timestamps after 2038. Most operating systems have extended
+  time_t to 64 bits.
+  
+  Remove the castings to long.
+  
+  Closes #7466
+
+- compressed.d: it's a request, not an order
+  
+  Clarified
+  
+  Reported-by: Dan Jacobson
+  Reviewed-by: Daniel Gustafsson
+  Fixes #7516
+  Closes #7517
+
+- [Bernhard M. Wiedemann brought this change]
+
+  tests: make three tests pass until 2037
+  
+  after 2038 something in test1915 fails on 32-bit OSes
+  
+  Closes #7512
+
+Daniel Gustafsson (30 Jul 2021)
+- connect: remove superfluous conditional
+  
+  Commit dbd16c3e2 cleaned up the logic for traversing the addrinfos,
+  but the move left a conditional on ai which no longer is needed as
+  the while loop reevaluation will cover it.
+  
+  Closes #7511
+  Reviewed-by: Carlo Marcelo Arenas Belón
+  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
+
+Daniel Stenberg (29 Jul 2021)
+- RELEASE-NOTES: synced
+  
+  and bump curlver to 7.79.0 for next release
+
+Marc Hoersken (29 Jul 2021)
+- tests/*server.py: remove pidfile on server termination
+  
+  Avoid pidfile leaking/laying around after server already exited.
+  
+  Reviewed-by: Daniel Stenberg
+  Closes #7506
+
+Daniel Gustafsson (27 Jul 2021)
+- tool_main: fix typo in comment
+  
+  The referred to library is NSPR, so fix the switched around characters.
+
+Daniel Stenberg (28 Jul 2021)
+- [Aleksandr Krotov brought this change]
+
+  bearssl: support CURLOPT_CAINFO_BLOB
+  
+  Closes #7468
+
+- curl.1: mention "global" flags
+  
+  Mention options that are "global". A global command line option is one
+  that doesn't get reset at --next uses and therefore don't need to be
+  used again.
+  
+  Reported-by: Josh Soref
+  
+  Fixes #7457
+  Closes #7510
+
+- CURLOPT_DOH_URL.3: CURLOPT_OPENSOCKETFUNCTION is not inherited
+  
+  Reported-by: Daniel Woelfel
+  Fixes #7441
+  Closes #7509
+
+- KNOWN_BUGS: add more HTTP/3 problems
+  
+  Closes #7351
+  Closes #7339
+  Closes #7125
+
+Marc Hoersken (27 Jul 2021)
+- CI/azure: reduce compile time with increased parallism
+  
+  Azure Pipelines CI VMs have 2 CPUs, let's use them.
+  
+  Closes #7489
+
+Jay Satiro (27 Jul 2021)
+- [Josh Soref brought this change]
+
+  docs: fix grammar
+  
+  Fixes https://github.com/curl/curl/issues/7444
+  Fixes https://github.com/curl/curl/issues/7451
+  Fixes https://github.com/curl/curl/issues/7465
+  Closes https://github.com/curl/curl/pull/7495
+
+- mail-rcpt.d: fix grammar
+  
+  Remove confusing sentence that says to specify an e-mail address for
+  mail transfer, since that's implied.
+  
+  Reported-by: Josh Soref
+  
+  Fixes https://github.com/curl/curl/issues/7452
+  Closes https://github.com/curl/curl/pull/7495
+
+Daniel Stenberg (27 Jul 2021)
+- c-hyper: remove the hyper_executor_poll() loop from Curl_http
+  
+  1. it's superfluous
+  2. it didn't work identically to the Curl_hyper_stream one which could
+     cause problems like #7486
+  
+  Pointed-out-by: David Cook
+  Closes #7499
+
+- curl-openssl.m4: check lib64 for the pkg-config file
+  
+  OpenSSL recently started putting the libs in $prefix/lib64 on 'make
+  install', so we check that directory for pkg-config data if the 'lib'
+  check fails.
+  
+  Closes #7503
+
+- CURLOPT_SSL_CTX_*.3: tidy up the example
+  
+  Use the proper code style. Don't store return codes that aren't read.
+  Copy the same example into CURLOPT_SSL_CTX_FUNCTION.3 as well.
+  
+  Closes #7500
+
+- example/cookie_interface: fix scan-build printf warning
+  
+  Follow-up to 4b79c4fb565
+  
+  Fixes #7497
+  Closes #7498
+
+- [Josh Soref brought this change]
+
+  limit-rate.d: clarify base unit
+  
+  Fixes #7439
+  Closes #7494
+
+- [Carlo Marcelo Arenas Belón brought this change]
+
+  examples/cookie_interface: avoid printfing time_t directly
+  
+  time_t representation is undefined and varies on bitsize and signedness,
+  and as of C11 could be even non integer.
+  
+  instead of casting to unsigned long (which would truncate in systems
+  with a 32bit long after 2106) use difftime to get the elapsed time as a
+  double and print that (without decimals) instead.
+  
+  alternatively a cast to curl_off_t and its corresponding print
+  formatting could have been used (at least in POSIX) but portability and
+  curl agnostic code was prioritized.
+  
+  Closes #7490
+
+Marc Hoersken (25 Jul 2021)
+- tests/servers: remove obsolete pid variable
+  
+  Variable is not used since pidfile handling moved to util.[ch]
+  
+  Reviewed-by: Jay Satiro
+  Closes #7482
+
+- tests/servers: use our platform-aware pid for server verification
+  
+  The pid used for server verification is later stored as pid2 in
+  the hash of running test servers and therefore used for shutdown.
+  
+  The pid used for shutdown must be the platform-aware (Win32) pid
+  to avoid leaking test servers while running them using Cygwin/msys.
+  
+  Reviewed-by: Jay Satiro
+  Closes #7481
+
+- tests/runtests.pl: cleanup copy&paste mistakes and unused code
+  
+  Reviewed-by: Jay Satiro
+  Part of #7481
+
+Daniel Stenberg (25 Jul 2021)
+- RELEASE-NOTES: synced
+  
+  bumped to 7.78.1 for next release
+
+- http_proxy: clear 'sending' when the outgoing request is sent
+  
+  ... so that Curl_connect_getsock() will know how to wait for the socket
+  to become readable and not writable after the entire CONNECT request has
+  been issued.
+  
+  Regression added in 7.77.0
+  
+  Reported-by: zloi-user on github
+  Assisted-by: Jay Satiro
+  Fixes #7155
+  Closes #7484
+
+Jay Satiro (25 Jul 2021)
+- [Josh Soref brought this change]
+
+  openssl: fix grammar
+  
+  Closes https://github.com/curl/curl/pull/7480
+
+- configure.ac: tweak nghttp2 library name fix again
+  
+  - Change extraction to handle multiple library names returned by
+    pkg-config (eg a possible scenario with pkg-config --static).
+  
+  Ref: https://github.com/curl/curl/pull/7472
+  
+  Closes https://github.com/curl/curl/pull/7485
+
+Dan Fandrich (23 Jul 2021)
+- Get rid of the unused HAVE_SIG_ATOMIC_T et. al.
+  
+  It was added in 2006 but I see no evidence it was ever used.
+
+Jay Satiro (23 Jul 2021)
+- docs: change max-filesize caveat again
+  
+  - Add protocols field to max-filesize.d.
+  
+  - Revert wording on unknown file size caveat and do not discuss specific
+    protocols in that section.
+  
+  Partial revert of ecf0225. All max-filesize options now have the list of
+  protocols and it's clearer just to have that list without discussing
+  specific protocols in the caveat.
+  
+  Reported-by: Josh Soref
+  
+  Ref: https://github.com/curl/curl/issues/7453#issuecomment-884128762
+
+Daniel Stenberg (22 Jul 2021)
+- [Christian Weisgerber brought this change]
+
+  configure: tweak nghttp2 library name fix
+  
+  commit 29c7cf79e8b44cf (shipped in 7.78.0) introduced a problem by
+  assuming that LIB_H2 does not have any leading whitespace.  At least
+  OpenBSD's native pkg-config can produce such whitespace, though:
+  
+      $ pkg-config --libs-only-l libnghttp2
+       -lnghttp2
+  
+  As a result, the configure check for libnghttp2 will erroneously fail.
+  
+  Bug: https://curl.se/mail/lib-2021-07/0050.html
+  Closes #7472
+
+- [Bastian Krause brought this change]
+
+  docs/MQTT: update state of username/password support
+  
+  PR #7243 implemented username/password support for MQTT, so let's drop
+  these items from the caveats.
+  
+  Signed-off-by: Bastian Krause <bst@pengutronix.de>
+  
+  Closes #7474
+
+- [Oleg Pudeyev brought this change]
+
+  CURLMOPT_TIMERFUNCTION.3: remove misplaced "time"
+  
+  Closes #7470
+
 Version 7.78.0 (21 Jul 2021)
 
 Daniel Stenberg (21 Jul 2021)
@@ -192,7 +3463,7 @@
   Closes #7411
   Closes #7412
 
-- [MAntoniak brought this change]
+- [Michał Antoniak brought this change]
 
   lib: fix compiler warnings with CURL_DISABLE_NETRC
   
@@ -279,7 +3550,7 @@
   Fixes #7415
   Closes #7417
 
-- [MAntoniak brought this change]
+- [Michał Antoniak brought this change]
 
   mbedtls: Remove unnecessary include
   
@@ -1789,19 +5060,19 @@
   Add test 3017 and 3018 to verify.
   Closes #7166
 
-- [theawless brought this change]
+- [Abhinav Singh brought this change]
 
   cmake: add CURL_DISABLE_NTLM option
   
   Closes #7028
 
-- [theawless brought this change]
+- [Abhinav Singh brought this change]
 
   configure: add --disable-ntlm option
   
   Closes #7028
 
-- [theawless brought this change]
+- [Abhinav Singh brought this change]
 
   define: re-add CURL_DISABLE_NTLM and corresponding ifdefs
   
@@ -3040,7 +6311,7 @@
   
   Closes #6960
 
-- [MAntoniak brought this change]
+- [Michał Antoniak brought this change]
 
   gskit: fix CURL_DISABLE_PROXY build
   
@@ -3050,7 +6321,7 @@
   
   Closes #6981
 
-- [MAntoniak brought this change]
+- [Michał Antoniak brought this change]
 
   gskit: fix undefined reference to 'conn'
   
@@ -5027,3065 +8298,3 @@
   Closes #6665
   Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
   Signed-off-by: Jean-Philippe Menil <jpmenil@gmail.com>
-
-- gnutls: Fix nettle discovery
-  
-  Commit e06fa7462ac258c removed support for libgcrypt leaving only
-  support for nettle which has been the default crypto library in
-  GnuTLS for a long time. There were however a few conditionals on
-  USE_GNUTLS_NETTLE which cause compilation errors in the metalink
-  code (as it used the gcrypt fallback instead as a result). See the
-  below autobuild for an example of the error:
-  
-    https://curl.se/dev/log.cgi?id=20210225123226-30704#prob1
-  
-  This removes all uses of USE_GNUTLS_NETTLE and also removes the
-  gcrypt support from the metalink code while at it.
-  
-  Closes #6656
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-- cookies: Support multiple -b parameters
-  
-  Previously only a single -b cookie parameter was supported with the last
-  one winning.  This adds support for supplying multiple -b params to have
-  them serialized semicolon separated.  Both cookiefiles and cookies can be
-  entered multiple times.
-  
-  Closes #6649
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (25 Feb 2021)
-- build: remove all traces of USE_BLOCKING_SOCKETS
-  
-  libcurl doesn't behave properly with the define set
-  
-  Closes #6655
-
-- RELEASE-NOTES: synced
-
-Daniel Gustafsson (25 Feb 2021)
-- docs: Fix typos
-  
-  Random typos spotted when skimming docs.
-
-- cookies: Use named parameters in header prototypes
-  
-  Align header with project style of using named parameters in the
-  function prototypes to aid readability and self-documentation.
-  
-  Closes #6653
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-
-Daniel Stenberg (24 Feb 2021)
-- urldata: make 'actions[]' use unsigned char instead of int
-  
-  ... as it only needs a few bits per index anyway.
-  
-  Reviewed-by: Daniel Gustafsson
-  Closes #6648
-
-- configure: fail if --with-quiche is used and quiche isn't found
-  
-  Closes #6652
-
-- [Gregor Jasny brought this change]
-
-  cmake: use CMAKE_INSTALL_INCLUDEDIR indirection
-  
-  Reviewed-by: Sergei Nikulov
-  Closes #6440
-
-Viktor Szakats (23 Feb 2021)
-- mingw: enable using strcasecmp()
-  
-  This makes the 'Features:' list sorted case-insensitively,
-  bringing output in-line with *nix builds.
-  
-  Reviewed-by: Jay Satiro
-  Closes #6644
-
-- build: delete unused feature guards
-  
-  - `HAVE_STRNCASECMP`
-  - `HAVE_TCGETATTR`
-  - `HAVE_TCSETATTR`
-  
-  Reviewed-by: Jay Satiro
-  Reviewed-by: Daniel Stenberg
-  Closes #6645
-
-Jay Satiro (23 Feb 2021)
-- docs: add CURLOPT_CURLU to 'See also' in curl_url_ functions
-  
-  Closes https://github.com/curl/curl/pull/6639
-
-Daniel Stenberg (23 Feb 2021)
-- [Jacob Hoffman-Andrews brought this change]
-
-  configure: make hyper opt-in, and fail if missing
-  
-  Previously, configure would look for hyper by default, and use it if
-  found; otherwise it would not use hyper, and not error.
-  
-  Now, configure will not look for hyper unless --with-hyper is passed. If
-  configure looks for hyper and fails, it will error.
-  
-  Also, add -ld -lpthread -lm to Hyper's libs. I think they are required.
-  
-  Closes #6598
-
-- multi: do once-per-transfer inits in before_perform in DID state
-  
-  ... since the state machine might go to RATELIMITING and then back to
-  PERFORMING doing once-per-transfer inits in that function is wrong and
-  it caused problems with receiving chunked HTTP and it set the
-  PRETRANSFER time much too often...
-  
-  Regression from b68dc34af341805aeb7b3715 (shipped in 7.75.0)
-  
-  Reported-by: Amaury Denoyelle
-  Fixes #6640
-  Closes #6641
-
-- RELEASE-NOTES: synced
-
-- CODE_STYLE.md: fix broken link to INTERNALS
-  
-  ... the link would only work if browsed on GitHub, while this link now
-  takes the user to the website instead and thus should work on either.
-  
-  Reported-by: David Demelier
-
-- curl_url_set.3: mention CURLU_PATH_AS_IS
-  
-  ... it has been supported since the URL API was added.
-  
-  Bug: https://curl.se/mail/lib-2021-02/0046.html
-  
-  Closes #6638
-
-Viktor Szakats (21 Feb 2021)
-- time: enable 64-bit time_t in supported mingw environments
-  
-  (Unless 32-bit `time_t` is selected manually via the `_USE_32BIT_TIME_T`
-  mingw macro.)
-  
-  Previously, 64-bit `time_t` was enabled on VS2005 and newer only, and
-  32-bit `time_t` was used on all other Windows builds.
-  
-  Assisted-by: Jay Satiro
-  Closes #6636
-
-Jay Satiro (20 Feb 2021)
-- test1188: Check for --fail HTTP status
-  
-  - Change the test to check for curl error on HTTP 404 Not Found.
-  
-  test1188 tests "--write-out with %{onerror} and %{urlnum} to stderr".
-  Prior to this change it did that by specifying a non-existent host which
-  would cause an error. ISPs may hijack DNS and resolve non-existent hosts
-  so the test would not work if that was the case.
-  
-  Ref: https://en.wikipedia.org/wiki/DNS_hijacking#Manipulation_by_ISPs
-  Ref: https://github.com/curl/curl/issues/6621
-  Ref: https://github.com/curl/curl/pull/6623
-  
-  Closes https://github.com/curl/curl/pull/6637
-
-- memdebug: close debug logfile explicitly on exit
-  
-  - Use atexit to register a dbg cleanup function that closes the logfile.
-  
-  LeakSantizier (LSAN) calls _exit() instead of exit() when a leak is
-  detected on exit so the logfile must be closed explicitly or data could
-  be lost. Though _exit() does not call atexit handlers such as this,
-  LSAN's call to _exit() comes after the atexit handlers are called.
-  
-  Prior to this change the logfile was not explicitly closed so it was
-  possible that if LSAN detected a leak and called _exit (which does
-  not flush or close files like exit) then the logfile could be missing
-  data. That could then cause curl's memanalyze to report false leaks
-  (eg a malloc was recorded to the logfile but the corresponding free was
-  discarded from the buffer instead of written to the logfile, then
-  memanalyze reports that as a leak).
-  
-  Ref: https://github.com/google/sanitizers/issues/1374
-  
-  Bug: https://github.com/curl/curl/pull/6591#issuecomment-780396541
-  
-  Closes https://github.com/curl/curl/pull/6620
-
-- curl_multibyte: always return a heap-allocated copy of string
-  
-  - Change the Windows char <-> UTF-8 conversion functions to return an
-    allocated copy of the passed in string instead of the original.
-  
-  Prior to this change the curlx_convert_ functions would, as what I
-  assume was an optimization, not make a copy of the passed in string if
-  no conversion was required. No conversion is required in non-UNICODE
-  Windows builds since our tchar strings are type char and remain in
-  whatever the passed in encoding is, which is assumed to be UTF-8 but may
-  be other encoding.
-  
-  In contrast the UNICODE Windows builds require conversion
-  (wchar <-> char) and do return a copy. That inconsistency could lead to
-  programming errors where the developer expects a copy, and does not
-  realize that won't happen in all cases.
-  
-  Closes https://github.com/curl/curl/pull/6602
-
-Viktor Szakats (19 Feb 2021)
-- http: add new files missed from referrer commit
-  
-  Ref: 44872aefc2d54f297caf2b0cc887df321bc9d791
-  Ref: #6591
-
-- http: add support to read and store the referrer header
-  
-  - add CURLINFO_REFERER libcurl option
-  - add --write-out '%{referer}' command-line option
-  - extend --xattr command-line option to fill user.xdg.referrer.url extended
-    attribute with the referrer (if there was any)
-  
-  Closes #6591
-
-Daniel Stenberg (19 Feb 2021)
-- urldata: remove the _ORIG suffix from string names
-  
-  It doesn't provide any useful info but only makes the names longer.
-  
-  Closes #6624
-
-- url: fix memory leak if OOM in the HSTS handling
-  
-  Reported-by: Viktor Szakats
-  Bug: https://github.com/curl/curl/pull/6627#issuecomment-781626205
-  
-  Closes #6628
-
-- gnutls: assume nettle crypto support
-  
-  nettle has been the default crypto library with GnuTLS since 2010. By
-  dropping support for the previous libcrypto, we simplify code.
-  
-  Closes #6625
-
-- asyn-ares: use consistent resolve error message
-  
-  ... with the help of Curl_resolver_error() which now is moved from
-  asyn-thead.c and is provided globally for this purpose.
-  
-  Follow-up to 35ca04ce1b77636
-  
-  Makes test 1188 work for c-ares builds
-  
-  Closes #6626
-
-Viktor Szakats (18 Feb 2021)
-- ci: stop building on freebsd-12-1
-  
-  An updated freebsd-12-2 image was added a few months ago, and this
-  older one is consistently failing to go past `pkginstall`:
-  ```
-  Newer FreeBSD version for package py37-mlt:
-  To ignore this error set IGNORE_OSVERSION=yes
-  - package: 1202000
-  - running kernel: 1201000
-  Ignore the mismatch and continue? [Y/n]: pkg: repository FreeBSD contains packages for wrong OS version: FreeBSD:12:amd64
-  ```
-  
-  FreeBSD thread suggests that 12.1 is EOL, and best to avoid.
-  
-  Ref: https://forums.freebsd.org/threads/78856/
-  
-  Reviewed-by: Daniel Stenberg
-  Closes #6622
-
-Daniel Stenberg (18 Feb 2021)
-- test1188: change error from connect to resolve error
-  
-  Using the %NOLISTENPORT to trigger a connection failure is somewhat
-  "risky" (since it isn't guaranteed to not be listened to) and caused
-  occasional CI problems. This fix changes the infused error to be a more
-  reliable one but still verifies the --write-out functionality properly -
-  which is the purpose of this test.
-  
-  Reported-by: Jay Satiro
-  Fixes #6621
-  Closes #6623
-
-- url.c: use consistent error message for failed resolve
-
-- BUGS: language polish
-
-- wolfssl: don't store a NULL sessionid
-  
-  This caused a memory leak as the session id cache entry was still
-  erroneously stored with a NULL sessionid and that would later be treated
-  as not needed to get freed.
-  
-  Reported-by: Gisle Vanem
-  Fixes #6616
-  Closes #6617
-
-- parse_proxy: fix a memory leak in the OOM path
-  
-  Reported-by: Jay Satiro
-  Reviewed-by: Jay Satiro
-  Reviewed-by: Emil Engler
-  
-  Closes #6614
-  Bug: https://github.com/curl/curl/pull/6591#issuecomment-780396541
-
-Jay Satiro (17 Feb 2021)
-- url: fix possible use-after-free in default protocol
-  
-  Prior to this change if the user specified a default protocol and a
-  separately allocated non-absolute URL was used then it was freed
-  prematurely, before it was then used to make the replacement URL.
-  
-  Bug: https://github.com/curl/curl/issues/6604#issuecomment-780138219
-  Reported-by: arvids-kokins-bidstack@users.noreply.github.com
-  
-  Closes https://github.com/curl/curl/pull/6613
-
-Daniel Stenberg (16 Feb 2021)
-- multi: rename the multi transfer states
-  
-  While working on documenting the states it dawned on me that step one is
-  to use more descriptive names on the states. This also changes prefix on
-  the states to make them shorter in the source.
-  
-  State names NOT ending with *ing are transitional ones.
-  
-  Closes #6612
-
-Viktor Szakats (16 Feb 2021)
-- http: do not add a referrer header with empty value
-  
-  Previously an empty 'Referer:' header was added to the HTTP request when
-  passing `--referer ';auto'` or `--referer ''` on the command-line. This
-  patch makes `--referer` work like `--header 'Referer:'` and will only add
-  the header if it has a non-zero length value.
-  
-  Reviewed-by: Jay Satiro
-  Closes #6610
-
-Daniel Stenberg (16 Feb 2021)
-- lib: remove 'conn->data' completely
-  
-  The Curl_easy pointer struct entry in connectdata is now gone. Just
-  before commit 215db086e0 landed on January 8, 2021 there were 919
-  references to conn->data.
-  
-  Closes #6608
-
-- openldap: pass 'data' to the callbacks instead of 'conn'
-
-Jay Satiro (15 Feb 2021)
-- doh: Fix sharing user's resolve list with DOH handles
-  
-  - Share the shared object from the user's easy handle with the DOH
-    handles.
-  
-  Prior to this change if the user had set a shared object with shared
-  cached DNS (CURL_LOCK_DATA_DNS) for their easy handle then that wasn't
-  used by any associated DOH handles, since they used the multi's default
-  hostcache.
-  
-  This change means all the handles now use the same hostcache, which is
-  either the shared hostcache from the user created shared object if it
-  exists or if not then the multi's default hostcache.
-  
-  Reported-by: Manuj Bhatia
-  
-  Fixes https://github.com/curl/curl/issues/6589
-  Closes https://github.com/curl/curl/pull/6607
-
-Daniel Stenberg (15 Feb 2021)
-- http2: remove conn->data use
-  
-  ... but instead use a private alternative that points to the "driving
-  transfer" from the connection. We set the "user data" associated with
-  the connection to be the connectdata struct, but when we drive transfers
-  the code still needs to know the pointer to the transfer. We can change
-  the user data to become the Curl_easy handle, but with older nghttp2
-  version we cannot dynamically update that pointer properly when
-  different transfers are used over the same connection.
-  
-  Closes #6520
-
-- openssl: remove conn->data use
-  
-  We still make the trace callback function get the connectdata struct
-  passed to it, since the callback is anchored on the connection.
-  
-  Repeatedly updating the callback pointer to set 'data' with
-  SSL_CTX_set_msg_callback_arg() doesn't seem to work, probably because
-  there might already be messages in the queue with the old pointer.
-  
-  This code therefore makes sure to set the "logger" handle before using
-  OpenSSL calls so that the right easy handle gets used for tracing.
-  
-  Closes #6522
-
-- RELEASE-NOTES: synced
-
-Jay Satiro (14 Feb 2021)
-- doh: add options to disable ssl verification
-  
-  - New libcurl options CURLOPT_DOH_SSL_VERIFYHOST,
-    CURLOPT_DOH_SSL_VERIFYPEER and CURLOPT_DOH_SSL_VERIFYSTATUS do the
-    same as their respective counterparts.
-  
-  - New curl tool options --doh-insecure and --doh-cert-status do the same
-    as their respective counterparts.
-  
-  Prior to this change DOH SSL certificate verification settings for
-  verifyhost and verifypeer were supposed to be inherited respectively
-  from CURLOPT_SSL_VERIFYHOST and CURLOPT_SSL_VERIFYPEER, but due to a bug
-  were not. As a result DOH verification remained at the default, ie
-  enabled, and it was not possible to disable. This commit changes
-  behavior so that the DOH verification settings are independent and not
-  inherited.
-  
-  Ref: https://github.com/curl/curl/pull/4579#issuecomment-554723676
-  
-  Fixes https://github.com/curl/curl/issues/4578
-  Closes https://github.com/curl/curl/pull/6597
-
-- hostip: fix crash in sync resolver builds that use DOH
-  
-  - Guard some Curl_async accesses with USE_CURL_ASYNC instead of
-    !CURLRES_SYNCH.
-  
-  This is another follow-up to 8335c64 which moved the async struct from
-  the connectdata struct into the Curl_easy struct. A previous follow-up
-  6cd167a fixed building for sync resolver by guarding some async struct
-  accesses with !CURLRES_SYNCH. The problem is since DOH (DNS-over-HTTPS)
-  is available as an asynchronous secondary resolver the async struct may
-  be used even when libcurl is built for the sync resolver. That means
-  that CURLRES_SYNCH and USE_CURL_ASYNC may be defined at the same time.
-  
-  Closes https://github.com/curl/curl/pull/6603
-
-Daniel Stenberg (13 Feb 2021)
-- KNOWN_BUGS: cannot enable LDAPS on Windows with cmake
-  
-  Reported-by: Jack Boos Yu
-  Closes #6284
-
-- KNOWN_BUGS: Excessive HTTP/2 packets with TCP_NODELAY
-  
-  Reported-by: Alex Xu
-  Closes #6363
-
-- http: use credentials from transfer, not connection
-  
-  HTTP auth "accidentally" worked before this cleanup since the code would
-  always overwrite the connection credentials with the credentials from
-  the most recent transfer and since HTTP auth is typically done first
-  thing, this has not been an issue. It was still wrong and subject to
-  possible race conditions or future breakage if the sequence of functions
-  would change.
-  
-  The data.set.str[] strings MUST remain unmodified exactly as set by the
-  user, and the credentials to use internally are instead set/updated in
-  state.aptr.*
-  
-  Added test 675 to verify different credentials used in two requests done
-  over a reused HTTP connection, which previously behaved wrongly.
-  
-  Fixes #6542
-  Closes #6545
-
-- test433: clear some home dir env variables
-  
-  Follow-up to bd6b54ba1f55b5
-  
-  ... so that XDG_CONFIG_HOME is the only home dir variable set and thus
-  used correctly in the test!
-  
-  Fixes #6599
-  Closes #6600
-
-- RELEASE-NOTES: synced
-  
-  bumped the version to 7.76.0
-
-- travis: install libgsasl-dev to add that to the builds
-  
-  Closes #6588
-
-- urldata: don't touch data->set.httpversion at run-time
-  
-  Rename it to 'httpwant' and make a cloned field in the state struct as
-  well for run-time updates.
-  
-  Also: refuse non-supported HTTP versions. Verified with test 129.
-  
-  Closes #6585
-
-Viktor Szakats (11 Feb 2021)
-- tests: disable .curlrc in more environments
-  
-  by also setting CURL_HOME and XDG_CONFIG_HOME envvars to the local
-  directory.
-  
-  Reviewed-by: Daniel Stenberg
-  Fixes #6595
-  Closes #6596
-
-- docs/Makefile.inc: format to be update-friendly
-  
-  - one source file per line
-  - convert tabs to spaces
-  - do not align line-continuation backslashes
-  - sort source files alphabetically
-  
-  Reviewed-by: Daniel Stenberg
-  Closes #6593
-
-Daniel Stenberg (11 Feb 2021)
-- curl: provide libgsasl version and feature info in -V output
-  
-  Closes #6592
-
-- gsasl: provide CURL_VERSION_GSASL if built-in
-  
-  To let applications know the feature is available.
-  
-  Closes #6592
-
-- curl: add --fail-with-body
-  
-  Prevent both --fail and --fail-with-body on the same command line.
-  
-  Verify with test 349, 360 and 361.
-  
-  Closes #6449
-
-- TODO: remove HSTS
-  
-  Provided now since commit 7385610d0c74
-
-Jay Satiro (10 Feb 2021)
-- tests: Fix tests failing due to change in curl --help
-  
-  Follow-up to parent 3183217 which added add missing <mode> argument to
-  --create-file-mode <mode>.
-  
-  Ref: https://github.com/curl/curl/issues/6590
-
-- tool_help: add missing argument for --create-file-mode
-  
-  Prior to this change the required argument was not shown in curl --help.
-  
-  before:
-       --create-file-mode File mode for created files
-  
-  after:
-       --create-file-mode <mode> File mode (octal) for created files
-  
-  Reported-by: ZimCodes@users.noreply.github.com
-  
-  Fixes https://github.com/curl/curl/issues/6590
-
-- create-file-mode.d: add missing Arg tag
-  
-  Prior to this change the required argument was not shown.
-  
-  curl.1 before: --create-file-mode
-  curl.1 after: --create-file-mode <mode>
-  
-  Reported-by: ZimCodes@users.noreply.github.com
-  
-  Fixes https://github.com/curl/curl/issues/6590
-
-Viktor Szakats (10 Feb 2021)
-- gsasl: fix errors/warnings building against libgsasl
-  
-  - also fix an indentation
-  - make Curl_auth_gsasl_token() use CURLcode (by Daniel Stenberg)
-  
-  Ref: https://github.com/curl/curl/pull/6372#issuecomment-776118711
-  Ref: https://github.com/curl/curl/pull/6588
-  
-  Reviewed-by: Jay Satiro
-  Assisted-by: Daniel Stenberg
-  Reviewed-by: Simon Josefsson
-  Closes #6587
-
-- Makefile.m32: add support for libgsasl dependency
-  
-  Reviewed-by: Marcel Raad
-  Closes #6586
-
-Marcel Raad (10 Feb 2021)
-- ngtcp2: clarify calculation precedence
-  
-  As suggested by Codacy/cppcheck.
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-- server: remove redundant condition
-  
-  `end` is always non-null here.
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-- lib: remove redundant code
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-- mqttd: remove unused variable
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-- tool_paramhlp: reduce variable scope
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-- tests: reduce variable scopes
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-- lib: reduce variable scopes
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-- ftp: fix Codacy/cppcheck warning about null pointer arithmetic
-  
-  Increment `bytes` only if it is non-null.
-  
-  Closes https://github.com/curl/curl/pull/6576
-
-Daniel Stenberg (9 Feb 2021)
-- ngtcp2: adapt to the new recv_datagram callback
-
-- quiche: fix build error: use 'int' for port number
-  
-  Follow-up to cb2dc1ba8
-
-- ftp: add 'list_only' to the transfer state struct
-  
-  and rename it from 'ftp_list_only' since it is also used for SSH and
-  POP3. The state is updated internally for 'type=D' FTP URLs.
-  
-  Added test case 1570 to verify.
-  
-  Closes #6578
-
-- ftp: add 'prefer_ascii' to the transfer state struct
-  
-  ... and make sure the code never updates 'set.prefer_ascii' as it breaks
-  handle reuse which should use the setting as the user specified it.
-  
-  Added test 1569 to verify: it first makes an FTP transfer with ';type=A'
-  and then another without type on the same handle and the second should
-  then use binary. Previously, curl failed this.
-  
-  Closes #6578
-
-- RELEASE-NOTES: synced
-
-- [Jacob Hoffman-Andrews brought this change]
-
-  vtls: initial implementation of rustls backend
-  
-  This adds a new TLS backend, rustls. It uses the C-to-rustls bindings
-  from https://github.com/abetterinternet/crustls.
-  
-  Rustls is at https://github.com/ctz/rustls/.
-  
-  There is still a fair bit to be done, like sending CloseNotify on
-  connection shutdown, respecting CAPATH, and properly indicating features
-  like "supports TLS 1.3 ciphersuites." But it works well enough to make
-  requests and receive responses.
-  
-  Blog post for context:
-  https://www.abetterinternet.org/post/memory-safe-curl/
-  
-  Closes #6350
-
-- [Simon Josefsson brought this change]
-
-  sasl: support SCRAM-SHA-1 and SCRAM-SHA-256 via libgsasl
-  
-  Closes #6372
-
-Jay Satiro (9 Feb 2021)
-- lib: use int type for more port variables
-  
-  This is a follow-up to 764c6bd. Prior to that change port variables
-  were usually type long.
-  
-  Closes https://github.com/curl/curl/pull/6553
-
-- tool_writeout: refactor write-out and write-out json
-  
-  - Deduplicate the logic used by write-out and write-out json.
-  
-  Rather than have separate writeLong, writeString, etc, logic for
-  each of write-out and write-out json instead have respective shared
-  functions that can output either format and a 'use_json' parameter to
-  indicate whether it is json that is output.
-  
-  This will make it easier to maintain. Rather than have to go through
-  two sets of logic now we only have to go through one.
-  
-  - Support write-out %{errormsg} and %{exitcode} in json.
-  
-  - Clarify in the doc that %{exitcode} is the exit code of the transfer.
-  
-  Prior to this change it just said "The numerical exitcode" which
-  implies it's the exit code of the tool, and it's not necessarily that.
-  
-  Closes https://github.com/curl/curl/pull/6544
-
-- lib: drop USE_SOCKETPAIR in favor of CURL_DISABLE_SOCKETPAIR
-  
-  .. since the former is undocumented and they both do the same thing.
-  
-  Closes https://github.com/curl/curl/pull/6517
-
-- curl_multibyte: fall back to local code page stat/access on Windows
-  
-  If libcurl is built with Unicode support for Windows then it is assumed
-  the filename string is Unicode in UTF-8 encoding and it is converted to
-  UTF-16 to be passed to the wide character version of the respective
-  function (eg wstat). However the filename string may actually be in the
-  local encoding so, even if it successfully converted to UTF-16, if it
-  could not be stat/accessed then try again using the local code page
-  version of the function (eg wstat fails try stat).
-  
-  We already do this with fopen (ie wfopen fails try fopen), so I think it
-  makes sense to extend it to stat and access functions.
-  
-  Closes https://github.com/curl/curl/pull/6514
-
-- [Stephan Szabo brought this change]
-
-  file: Support unicode urls on windows
-  
-  Closes https://github.com/curl/curl/pull/6501
-
-- [Vincent Torri brought this change]
-
-  cmake: fix import library name for non-MS compiler on Windows
-  
-  - Use _imp.lib suffix only for Microsoft's compiler (MSVC).
-  
-  Prior to this change library suffix _imp.lib was used for the import
-  library on Windows regardless of compiler.
-  
-  With this change the other compilers should now use their default
-  suffix which should be .dll.a.
-  
-  This change is motivated by the usage of pkg-config on MSYS2.
-  Indeed, when 'pkg-config --libs libcurl' is used, -lcurl is
-  passed to ld. The documentation of ld on Windows :
-  
-  https://sourceware.org/binutils/docs/ld/WIN32.html
-  
-  lists, in the 'direct linking to a dll' section, the pattern
-  of the searched import library, and libcurl_imp.lib is not there.
-  
-  Closes https://github.com/curl/curl/pull/6225
-
-Daniel Stenberg (9 Feb 2021)
-- urldata: move 'followlocation' to UrlState
-  
-  As this is a state variable it does not belong in UserDefined which is
-  used to store values set by the user.
-  
-  Closes #6582
-
-- [Ikko Ashimine brought this change]
-
-  http_proxy: fix typo in http_proxy.c
-  
-  settting -> setting
-  
-  Closes #6583
-
-- [Fabian Keil brought this change]
-
-  tests/server: Bump MAX_TAG_LEN to 200
-  
-  This is useful for tests containing HTML inside of <data> sections.
-  For <img> tags it's not uncommon to be longer than the previous
-  limit of 79 bytes.
-  
-  An example of a previously problem-causing tag is:
-  <img src="http://config.privoxy.org/send-banner?type=auto" border="0" title="Killed-http://www.privoxy.org/images/privoxy.png-by-size" width="88" height="31">
-  which is needed for a Privoxy test for the banners-by-size filter.
-  
-  Previously it caused server failures like:
-  12:29:05.786961 ====> Client connect
-  12:29:05.787116 accept_connection 3 returned 4
-  12:29:05.787194 accept_connection 3 returned 0
-  12:29:05.787285 Read 119 bytes
-  12:29:05.787345 Process 119 bytes request
-  12:29:05.787407 Got request: GET /banners-by-size/9 HTTP/1.1
-  12:29:05.787464 Requested test number 9 part 0
-  12:29:05.787686 getpart() failed with error: -2
-  12:29:05.787744 - request found to be complete (9)
-  12:29:05.787912 getpart() failed with error: -2
-  12:29:05.788048 Wrote request (119 bytes) input to log/server.input
-  12:29:05.788157 Send response test9 section <data>
-  12:29:05.788443 getpart() failed with error: -2
-  12:29:05.788498 instructed to close connection after server-reply
-  12:29:05.788550 ====> Client disconnect 0
-  12:29:05.871448 exit_signal_handler: 15
-  12:29:05.871714 signalled to die
-  12:29:05.872040 ========> IPv4 sws (port 21108 pid: 51758) exits with signal (15)
-
-- [Fabian Keil brought this change]
-
-  tests/badsymbols.pl: when opening '$incdir' fails include it in the error message
-
-- [Fabian Keil brought this change]
-
-  runtests.1: document -o, -P, -L, and -E
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: add %TESTNUMBER variable to make copying tests more convenient
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: add an -o option to change internal variables
-  
-  runtests.pl has lots of internal variables one might want to
-  change in certain situations, but adding a dedicated option
-  for every single one of them isn't practical.
-  
-  Usage:
-  ./runtests.pl -o TESTDIR=$privoxy_curl_test_dir -o HOSTIP=10.0.0.1 ...
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: cleanups
-  
-  - show the summarized test result in the last line of the report
-  - do not use $_ after mapping it to a named variable
-    Doing that makes the code harder to follow.
-  - log the restraints sorted by the number of their occurrences
-  - fix language when logging restraints that only occured once
-  - let runhttpserver() use $TESTDIR instead of $srcdir
-    ... so it works if a non-default $TESTDIR is being used.
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: add an -E option to specify an exclude file
-  
-  It can contain additional restraints for test numbers,
-  keywords and tools.
-  
-  The idea is to let third parties like the Privoxy project
-  distribute an exclude file with their tarballs that specifies
-  which curl tests are not expected to work when using Privoxy
-  as a proxy, without having to fork the whole curl test suite.
-  
-  The syntax could be changed to be extendable and maybe
-  more closely reflect the "curl test" syntax. Currently
-  it's a bunch of lines like these:
-  
-  test:$TESTNUMBER:Reason why this test with number $TESTNUMBER should be skipped
-  keyword:$KEYWORD:Reason why tests whose keywords contain the $KEYWORD should be skipped
-  tool:$TOOL:Reason why tests with tools that contain $TOOL should be skipped
-  
-  To specify multiple $TESTNUMBERs, $KEYWORDs and $TOOLs
-  on a single line, split them with commas.
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: add -L parameter to require additional perl libraries
-  
-  This is useful to change the behaviour of the script without
-  having to modify the file itself, for example to use a custom
-  compareparts() function that ignores header differences that
-  are expected to occur when an external proxy is being used.
-  
-  Such differences are proxy-specific and thus the modifications
-  should be maintained together with the proxy.
-
-- [Fabian Keil brought this change]
-
-  runtests.pl: add a -P option to specify an external proxy
-  
-  ... that should be used when executing the tests.
-  
-  The assumption is that the proxy is an HTTP proxy.
-  
-  This option should be used together with -L to provide
-  a customized compareparts() version that knows which
-  proxy-specific header differences should be ignored.
-  
-  This option doesn't work for all test types yet.
-
-- [Fabian Keil brought this change]
-
-  tests: fixup several tests
-  
-  missing CRs and modified %hostip
-  
-  lib556/test556: use a real HTTP version to make test reuse more convenient
-  
-  make sure the weekday in Date headers matches the date
-  
-  test61: replace stray "^M" (5e 4d) at the end of a cookie with a '^M' (0d)
-  
-  Gets the test working with external proxies like Privoxy again.
-  
-  Closes #6463
-
-- ftp: never set data->set.ftp_append outside setopt
-  
-  Since the set value then risks getting used like that when the easy
-  handle is reused by the application.
-  
-  Also: renamed the struct field from 'ftp_append' to 'remote_append'
-  since it is also used for SSH protocols.
-  
-  Closes #6579
-
-- urldata: remove the 'rtspversion' field
-  
-  from struct connectdata and the corresponding code in http.c that set
-  it. It was never used for anything!
-  
-  Closes #6581
-
-- CURLOPT_QUOTE.3: clarify that libcurl doesn't parse what's sent
-  
-  ... so passed in commands may confuse libcurl's knowledge of state.
-  
-  Reported-by: Bodo Bergmann
-  Fixes #6577
-  Closes #6580
-
-- [Jacob Hoffman-Andrews brought this change]
-
-  vtls: factor out Curl_ssl_getsock to field of Curl_ssl
-  
-  Closes #6558
-
-- RELEASE-PROCEDURE: remove old release dates, add new
-
-- docs/SSL-PROBLEMS: enhanced
-  
-  Elaborate on the intermediate cert issue, and mention that anything
-  below TLS 1.2 is generally considered insecure these days.
-  
-  Closes #6572
-
-- THANKS: remove a Jon Rumsey dupe
-
-Daniel Gustafsson (5 Feb 2021)
-- [nimaje brought this change]
-
-  docs: fix FILE example url in --metalink documentation
-  
-  In a url after <scheme>:// follows the possibly empty authority part
-  till the next /, so that url missed a /.
-  
-  Closes #6573
-  Reviewed-by: Daniel Stenberg <daniel@haxx.se>
-  Reviewed-by: Daniel Gustafsson <daniel@yesql.se>
-
-Daniel Stenberg (5 Feb 2021)
-- hostip: fix build with sync resolver
-  
-  Reported-by: David Goerger
-  Follow-up from 8335c6417
-  Fixes #6566
-  Closes #6568
-
-- mailmap: Jon Rumsey
-
-- [Jon Rumsey brought this change]
-
-  gskit: correct the gskit_send() prototype
-  
-  gskit_send() first paramater is a pointer to Curl_easy not connectdata
-  struct.
-  
-  Closes #6570
-  Fixes #6569
-
-- urldata: fix build without HTTP and MQTT
-  
-  Reported-by: Joseph Chen
-  Fixes #6562
-  Closes #6563
-
-- ftp: avoid SIZE when asking for a TYPE A file
-  
-  ... as we ignore it anyway because servers don't report the correct size
-  and proftpd even blatantly returns a 550.
-  
-  Updates a set of tests accordingly.
-  
-  Reported-by: awesomenode on github
-  Fixes #6564
-  Closes #6565
-
-- pingpong: rename the curl_pp_transfer enum to use PP prefix
-  
-  Using an FTP prefix for PP provided functionality was misleading.
-
-- RELEASE-NOTES: synced
-  
-  ... and bump pending version to 7.75.1 (for now)
-
-Jay Satiro (4 Feb 2021)
-- build: fix --disable-http-auth
-  
-  Broken since 215db08 (precedes 7.75.0).
-  
-  Reported-by: Benbuck Nason
-  
-  Fixes https://github.com/curl/curl/issues/6567
-
-- build: fix --disable-dateparse
-  
-  Broken since 215db08 (precedes 7.75.0).
-  
-  Bug: https://curl.se/mail/lib-2021-02/0008.html
-  Reported-by: Firefox OS
-
-Daniel Stenberg (4 Feb 2021)
-- [Jon Rumsey brought this change]
-
-  OS400: update for CURLOPT_AWS_SIGV4
-  
-  chkstrings fails because a new string option that could require codepage
-  conversion has been added.
-  
-  Closes #6561
-  Fixes #6560
-
-- BUG-BOUNTY: removed the cooperation mention
-
-Version 7.75.0 (3 Feb 2021)
-
-Daniel Stenberg (3 Feb 2021)
-- RELEASE-NOTES: synced
-
-- THANKS: added contributors from 7.75.0
-
-- copyright: fix year ranges in need of updates
-
-- TODO: remove items for next SONAME bump etc
-  
-  We want to avoid that completely, so we don't plan for things after such
-  an event.
-
-- [Jay Satiro brought this change]
-
-  ngtcp2: Fix build error due to change in ngtcp2_settings
-  
-  - Separate ngtcp2_transport_params.
-  
-  ngtcp2/ngtcp2@05d7adc made ngtcp2_transport_params separate from
-  ngtcp2_settings.
-  
-  ngtcp2 master is required to build curl with http3 support.
-  
-  Closes #6554
-
-- vtls: remove md5sum
-  
-  As it is not used anymore.
-  
-  Reported-by: Jacob Hoffman-Andrews
-  Bug: https://curl.se/mail/lib-2021-02/0000.html
-  
-  Closes #6557
-
-- [Alessandro Ghedini brought this change]
-
-  quiche: don't use primary_ip / primary_port
-  
-  Closes #6555
-
-Alessandro Ghedini (1 Feb 2021)
-- travis: enable quiche's FFI feature
-
-Daniel Stenberg (30 Jan 2021)
-- [Dmitry Wagin brought this change]
-
-  http: improve AWS HTTP v4 Signature auth
-  
-  - Add support services without region and service prefixes in
-  the URL endpoint (ex. Min.IO, GCP, Yandex Cloud, Mail.Ru Cloud Solutions, etc)
-  by providing region and service parameters via aws-sigv4 option.
-  - Add [:region[:service]] suffix to aws-sigv4 option;
-  - Fix memory allocation errors.
-  - Refactor memory management.
-  - Use Curl_http_method instead() STRING_CUSTOMREQUEST.
-  - Refactor canonical headers generating.
-  - Remove repeated sha256_to_hex() usage.
-  - Add some docs fixes.
-  - Add some codestyle fixes.
-  - Add overloaded strndup() for debug - curl_dbg_strndup().
-  - Update tests.
-  
-  Closes #6524
-
-- hyper: fix CONNECT to set 'data' as userdata
-  
-  Follow-up to 14e075d1a7fd
-
-- [Layla brought this change]
-
-  connect: fix compile errors in `Curl_conninfo_local`
-  
-  .. for the `#else` (`!HAVE_GETSOCKNAME`) case
-  
-  Fixes https://github.com/curl/curl/issues/6548
-  Closes #6549
-  
-  Signed-off-by: Layla <layla@insightfulvr.com>
-
-- [Michał Antoniak brought this change]
-
-  transfer: fix GCC 10 warning with flag '-Wint-in-bool-context'
-  
-  ... and return the error code from the Curl_mime_rewind call.
-  
-  Closes #6537
-
-- [Michał Antoniak brought this change]
-
-  avoid warning: enum constant in boolean context
-
-- copyright: fix missing year (range) updates
-
-- RELEASE-NOTES: synced
-
-- openssl: lowercase the hostname before using it for SNI
-  
-  ... because it turns out several servers out there don't actually behave
-  correctly otherwise in spite of the fact that the SNI field is
-  specifically said to be case insensitive in RFC 6066 section 3.
-  
-  Reported-by: David Earl
-  Fixes #6540
-  Closes #6543
-
-- KNOWN_BUGS: cmake: ExternalProject_Add does not set CURL_CA_PATH
-  
-  Closes #6313
-
-- KNOWN_BUGS: Multi perform hangs waiting for threaded resolver
-  
-  Closes #4852
-
-- KNOWN_BUGS: "pulseUI VPN client" is known to be buggy
-  
-  First entry in the new section "applications" for known problems in
-  libcurl using applications.
-  
-  Closes #6306
-
-- tool_writeout: make %{errormsg} blank for no errors
-  
-  Closes #6539
-
-Jay Satiro (27 Jan 2021)
-- [Gisle Vanem brought this change]
-
-  build: fix djgpp builds
-  
-  - Update build instructions in packages/DOS/README
-  
-  - Extend 'VPATH' with 'vquic' and 'vssh'.
-  
-  - Allow 'Makefile.dist' to build both 'lib' and 'src'.
-  
-  - Allow using the Windows hosted djgpp cross compiler to build for MSDOS
-    under Windows.
-  
-  - 'USE_SSL' -> 'USE_OPENSSL'
-  
-  - Added a 'link_EXE' macro. Etc, etc.
-  
-  - Linking 'curl.exe' needs '$(CURLX_CFILES)' too.
-  
-  - Do not pick-up '../lib/djgpp/*.o' files. Recompile locally.
-  
-  - Generate a gzipped 'tool_hugehelp.c' if 'USE_ZLIB=1'.
-  
-  - Remove 'djgpp-clean'
-  
-  - Adapt to new C-ares directory structure
-  
-  - Use conditional variable assignments
-  
-  Clarify the 'conditional variable assignment' in 'common.dj'.
-  
-  Closes https://github.com/curl/curl/pull/6382
-
-Daniel Stenberg (27 Jan 2021)
-- [Ikko Ashimine brought this change]
-
-  hyper: fix typo in c-hyper.c
-  
-  settting -> setting
-  
-  Closes #6538
-
-- libssh2: fix CURL_LIBSSH2_DEBUG-enabled build
-  
-  Follow-up to 2dcc940959772a
-  
-  Reported-by: Gisle Vanem
-  Bug: https://github.com/curl/curl/commit/2dcc940959772a652f6813fb6bd3092095a4877b#commitcomment-46420088
-
-Jay Satiro (27 Jan 2021)
-- asyn-thread: fix build for when getaddrinfo missing
-  
-  This is a follow-up to 8315343 which several days ago moved the resolver
-  pointer into the async struct but did not update the code that uses it
-  when getaddrinfo is not present.
-  
-  Closes https://github.com/curl/curl/pull/6536
-
-Daniel Stenberg (27 Jan 2021)
-- urldata: move 'ints' to the end of 'connectdata'
-  
-  To optimize storage slightly.
-  
-  Closes #6534
-
-- urldata: store ip version in a single byte
-  
-  Closes #6534
-
-- urldata: remove duplicate 'upkeep_interval_ms' from connectdata
-  
-  ... and rely only on the value already set in Curl_easy.
-  
-  Closes #6534
-
-- urldata: remove 'local_ip' from the connectdata struct
-  
-  As the info is already stored in the transfer handle anyway, there's no
-  need to carry around a duplicate buffer for the life-time of the handle.
-  
-  Closes #6534
-
-- urldata: remove duplicate port number storage
-  
-  ... and use 'int' for ports. We don't use 'unsigned short' since -1 is
-  still often used internally to signify "unknown value" and 0 - 65535 are
-  all valid port numbers.
-  
-  Closes #6534
-
-- urldata: remove the duplicate 'ip_addr_str' field
-  
-  ... as the numerical IP address is already stored and kept in 'primary_ip'.
-  
-  Closes #6534
-
-- select: convert Curl_select() to private static function
-  
-  The old function should not be used anywhere anymore (the only remaining
-  gskit use has to be fixed to instead use Curl_poll or none at all).
-  
-  The static function version is now called our_select() and is only built
-  if necessary.
-  
-  Closes #6531
-
-- Curl_chunker: shrink the struct
-  
-  ... by removing a field, converting the hex index into a byte and
-  rearranging the order. Cuts it down from 48 bytes to 32 on x86_64.
-  
-  Closes #6527
-
-- curl: include the file name in --xattr/--remote-time error msgs
-
-- curl: s/config->global/global/ in single_transfer()
-
-- curl: move fprintf outputs to warnf
-  
-  For setting and getting time of the download. To make the outputs
-  respect --silent etc.
-  
-  Reported-by: Viktor Szakats
-  Fixes #6533
-  Closes #6535
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: Fix http3 upload stall
-  
-  Closes #6521
-
-- [Tatsuhiro Tsujikawa brought this change]
-
-  ngtcp2: Fix stack buffer overflow
-  
-  Closes #6521
-
-- warnless.h: remove the prototype for curlx_ultosi
-  
-  Follow-up to 217552503ff3
-
-- warnless: remove curlx_ultosi
-  
-  ... not used anywhere
-  
-  Closes #6530
-
-- [Patrick Monnerat brought this change]
-
-  lib: remove conn->data uses
-  
-  Closes #6515
-
-- pingpong: remove the 'conn' struct member
-  
-  ... as it's superfluous now when Curl_easy is passed in and we can
-  derive the connection from that instead and avoid the duplicate copy.
-  
-  Closes #6525
-
-- hostip/proxy: remove conn->data use
-  
-  Closes #6513
-
-- url: reduce conn->data references
-  
-  ... there are a few left but let's keep them to last
-  
-  Closes #6512
-
-- scripts/singleuse: add curl_easy_option*
-
-Jay Satiro (25 Jan 2021)
-- test410: fix for windows
-  
-  - Pass the very long request header via file instead of command line.
-  
-  Prior to this change the 49k very long request header string was passed
-  via command line and on Windows that is too long so it was truncated and
-  the test would fail (specifically msys CI).
-  
-  Closes https://github.com/curl/curl/pull/6516
-
-Daniel Stenberg (25 Jan 2021)
-- libssh2: move data from connection object to transfer object
-  
-  Readdir data, filenames and attributes are strictly related to the
-  transfer and not the connection. This also reduces the total size of the
-  fixed connectdata struct.
-  
-  Closes #6519
-
-- RELEASE-NOTES: synced
-
-- [Patrick Monnerat brought this change]
-
-  lib: remove conn->data uses
-  
-  Closes #6499
-
-- hyper: remove the conn->data references
-  
-  Closes #6508
-
-- travis: build ngtcp2 --with-gnutls
-  
-  ... since they disable it by default since a few days back.
-  
-  Closes #6506
-  Fixes #6493
-
-- hostip: remove conn->data from resolver functions
-  
-  This also moves the 'async' struct from the connectdata struct into the
-  Curl_easy struct, which seems like a better home for it.
-  
-  Closes #6497
-
-Jay Satiro (22 Jan 2021)
-- strerror: skip errnum >= 0 assertion on windows
-  
-  On Windows an error number may be greater than INT_MAX and negative once
-  cast to int.
-  
-  The assertion is checked only in debug builds.
-  
-  Closes https://github.com/curl/curl/pull/6504
-
-Daniel Stenberg (21 Jan 2021)
-- doh: make Curl_doh_is_resolved survive a NULL pointer
-  
-  ... if Curl_doh() returned a NULL, this function gets called anyway as
-  in a asynch procedure. Then the doh struct pointer is NULL and signifies
-  an OOM situation.
-  
-  Follow-up to 6246a1d8c6776
-
-- wolfssh: remove conn->data references
-  
-  ... and repair recent build breakage
-  
-  Closes #6507
-
-- http: empty reply connection are not left intact
-  
-  ... so mark the connection as closed in this condition to prevent that
-  verbose message to wrongly appear.
-  
-  Reported-by: Matt Holt
-  Bug: https://twitter.com/mholt6/status/1352130240265375744
-  Closes #6503
-
-- chunk/encoding: remove conn->data references
-  
-  ... by anchoring more functions on Curl_easy instead of connectdata
-  
-  Closes #6498
-
-Jay Satiro (20 Jan 2021)
-- [Erik Olsson brought this change]
-
-  lib: save a bit of space with some structure packing
-  
-  - Reorder some internal struct members so that less padding is used.
-  
-  This is an attempt at saving a bit of space by packing some structs
-  (using pahole to find the holes) where it might make sense to do
-  so without losing readability.
-  
-  I.e., I tried to avoid separating fields that seem grouped
-  together (like the cwd... fields in struct ftp_conn for instance).
-  Also abstained from touching fields behind conditional macros as
-  that quickly can get complicated.
-  
-  Closes https://github.com/curl/curl/pull/6483
-
-Daniel Stenberg (20 Jan 2021)
-- INSTALL.md: fix typo
-  
-  Found-by: Marcel Raad
-
-- [Fabian Keil brought this change]
-
-  http: get CURLOPT_REQUEST_TARGET working with a HTTP proxy
-  
-  Added test 1613 to verify.
-  
-  Closes #6490
-
-- Merge branch 'bagder/curl_range-data-conn'
-
-- ftp: remove conn->data leftover
-
-- curl_range: remove conn->data
-  
-  Closes #6496
-
-- INSTALL: now at 85 operating systems
-
-- quiche: fix unused parameter ‘conn’
-  
-  Follow-up to 2bdec0b3
-
-- transfer: fix ‘conn’ undeclared mistake for iconv build
-  
-  Follow-up to 219d9f8620d
-
-- doh: allocate state struct on demand
-  
-  ... instead of having it static within the Curl_easy struct. This takes
-  away 1176 bytes (18%) from the Curl_easy struct that aren't used very
-  often and instead makes the code allocate it when needed.
-  
-  Closes #6492
-
-- socks: use the download buffer instead
-  
-  The SOCKS code now uses the generic download buffer for temporary
-  storage during the connection procedure, instead of having its own
-  private 600 byte buffer that adds to the connectdata struct size. This
-  works fine because this point the buffer is allocated but is not use for
-  download yet since the connection hasn't completed.
-  
-  This reduces the connection struct size by 22% on a 64bit arch!
-  
-  The SOCKS buffer needs to be at least 600 bytes, and the download buffer
-  is guaranteed to never be smaller than 1000 bytes.
-  
-  Closes #6491
-
-- urldata: make magic be the first struct field
-  
-  By making the `magic` identifier the same size and at the same place
-  within the structs (easy, multi, share), libcurl will be able to more
-  reliably detect and safely error out if an application passes in the
-  wrong handle to APIs. Easier to detect and less likely to cause crashes
-  if done.
-  
-  Such mixups can't be detected at compile-time due to them being
-  typedefed void pointers - unless `CURL_STRICTER` is defined.
-  
-  Closes #6484
-
-- http_chunks: correct and clarify a comment on hexnumber length
-  
-  ... and also rename the define for max length.
-  
-  Closes #6489
-
-- curl_path: remove conn->data use
-  
-  Closes #6487
-
-- transfer: remove conn->data use
-  
-  Closes #6486
-
-- quic: remove conn->data use
-  
-  Closes #6485
-
-- [Fabian Keil brought this change]
-
-  Add test1181: Proxy request with --proxy-header "Connection: Keep-Alive"
-
-- [Fabian Keil brought this change]
-
-  Add test1180: Proxy request with -H "Proxy-Connection: Keep-Alive"
-  
-  At the moment the test fails as curl sends two Proxy-Connection
-  headers.
-
-- c-hyper: avoid duplicated Proxy-Connection headers
-
-- http: make providing Proxy-Connection header not cause duplicated headers
-  
-  Fixes test 1180
-  
-  Bug: https://curl.se/mail/lib-2021-01/0095.html
-  Reported-by: Fabian Keil
-  Closes #6472
-
-- runtests: preprocess DISABLED to allow conditionals
-  
-  ... with this function provided, we can disable tests for specific
-  environments and setups directly within this file.
-  
-  Closes #6477
-
-- runtests: turn preprocessing into a separate function
-  
-  ... and remove all other variable substitutions as they're now done once
-  and for all in the preprocessor.
-
-- lib/Makefile.inc: convert to listing each file on its own line
-  
-  ... to make it diff friendlier and easier to read.
-  
-  Closes #6448
-
-- ftplistparser: remove use of conn->data
-  
-  Closes #6482
-
-- lib: more conn->data cleanups
-  
-  Closes #6479
-
-- [Patrick Monnerat brought this change]
-
-  vtls: reduce conn->data use
-  
-  Closes #6474
-
-- hyper: deliver data to application with Curl_client_write
-  
-  ... just as the native code path does. Avoids sending too large data
-  chunks in the callback and more.
-  
-  Reported-by: Gisle Vanem
-  Fixes #6462
-  Closes #6473
-
-- gopher: remove accidental conn->data leftover
-
-- libssh: avoid plain free() of libssh-memory
-  
-  Since curl's own memory debugging system redefines free() calls to track
-  and fiddle with memory, it cannot be used on memory allocated by 3rd
-  party libraries.
-  
-  Third party libraries SHOULD NOT require free() to release allocated
-  resources for this reason - and libs can use separate healp allocators
-  on some systems (like Windows) so free() doesn't necessarily work
-  anyway.
-  
-  Filed as an issue with libssh: https://bugs.libssh.org/T268
-  
-  Closes #6481
-
-- send: assert that Curl_write_plain() has a ->conn when called
-  
-  To help catch bad invokes.
-  
-  Closes #6476
-
-- test410: verify HTTPS GET with a 49K request header
-  
-  skip test 410 for mesalink in the CI as it otherwise hangs "forever"
-
-- lib: pass in 'struct Curl_easy *' to most functions
-  
-  ... in most cases instead of 'struct connectdata *' but in some cases in
-  addition to.
-  
-  - We mostly operate on transfers and not connections.
-  
-  - We need the transfer handle to log, store data and more. Everything in
-    libcurl is driven by a transfer (the CURL * in the public API).
-  
-  - This work clarifies and separates the transfers from the connections
-    better.
-  
-  - We should avoid "conn->data". Since individual connections can be used
-    by many transfers when multiplexing, making sure that conn->data
-    points to the current and correct transfer at all times is difficult
-    and has been notoriously error-prone over the years. The goal is to
-    ultimately remove the conn->data pointer for this reason.
-  
-  Closes #6425
-
-Emil Engler (17 Jan 2021)
-- docs: fix typos in NEW-PROTOCOL.md
-  
-  This fixes a misspelled "it" and a grammatically wrong "-ing" suffix.
-  
-  Closes #6471
-
-Daniel Stenberg (16 Jan 2021)
-- RELEASE-NOTES: synced
-
-Jay Satiro (16 Jan 2021)
-- [Razvan Cojocaru brought this change]
-
-  cmake: expose CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG
-  
-  This does for cmake builds what --disable-openssl-auto-load-config
-  does for autoconf builds.
-  
-  Closes https://github.com/curl/curl/pull/6435
-
-Daniel Stenberg (15 Jan 2021)
-- test1918: verify curl_easy_option_by_name() and curl_easy_option_by_id()
-  
-  ... and as a practical side-effect, make sure that the
-  Curl_easyopts_check() function is asserted in debug builds, which we
-  want to detect mismatches between the options list in easyoptions.c and
-  the options in curl.h
-  
-  Found-by: Gisle Vanem
-  Bug: https://github.com/curl/curl/commit/08e8455dddc5e48e58a12ade3815c01ae3da3b64#commitcomment-45991815
-  
-  Closes #6461
-
-- [Gisle Vanem brought this change]
-
-  easyoptions: add the missing AWS_SIGV4
-  
-  Follow-up from AWS_SIGV4
-
-- schannel_verify: fix safefree call typo
-  
-  Follow-up from e87ad71d1ba00519
-  
-  Closes #6459
-
-- mime: make sure setting MIMEPOST to NULL resets properly
-  
-  ... so that a function can first use MIMEPOST and then set it to NULL to
-  reset it back to a blank POST.
-  
-  Added test 584 to verify the fix.
-  
-  Reported-by: Christoph M. Becker
-  
-  Fixes #6455
-  Closes #6456
-
-- multi: set the PRETRANSFER time-stamp when we switch to PERFORM
-  
-  ... instead of at end of the DO state. This makes the timer more
-  accurate for the protocols that use the DOING state (such as FTP), and
-  simplifies how the function (now called init_perform) is called.
-  
-  The timer will then include the entire procedure up to PERFORM -
-  including all instructions for getting the transfer started.
-  
-  Closes #6454
-
-- CURLINFO_PRETRANSFER_TIME.3: clarify
-  
-  ... the timer *does* include the instructions for getting the remote
-  file.
-  
-  Ref: #6452
-  Closes #6453
-
-- [Gisle Vanem brought this change]
-
-  schannel: plug a memory-leak
-  
-  ... when built without -DUNICODE.
-  
-  Closes #6457
-
-Jay Satiro (14 Jan 2021)
-- gitattributes: Set batch files to CRLF line endings on checkout
-  
-  If a batch file is run without CRLF line endings (ie LF-only) then
-  arbitrary behavior may occur. I consider that a bug in Windows, however
-  the effects can be serious enough (eg unintended code executed) that
-  we're fixing it in the repo by requiring CRLF line endings for batch
-  files on checkout.
-  
-  Prior to this change the checked-out line endings of batch files were
-  dependent on a user's git preferences. On Windows it is common for git
-  users to have automatic CRLF conversion enabled (core.autocrlf true),
-  but those users that don't would run into this behavior.
-  
-  For example a user has reported running the Visual Studio project
-  generator batch file (projects/generate.bat) and it looped forever.
-  Output showed that the Windows OS interpreter was occasionally jumping
-  to arbitrary points in the batch file and executing commands. This
-  resulted in unintended files being removed (a removal sequence called)
-  and looping forever.
-  
-  Ref: https://serverfault.com/q/429594
-  Ref: https://stackoverflow.com/q/232651
-  Ref: https://www.dostips.com/forum/viewtopic.php?t=8988
-  Ref: https://git-scm.com/docs/gitattributes#_checking_out_and_checking_in
-  Ref: https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration#_core_autocrlf
-  
-  Bug: https://github.com/curl/curl/discussions/6427
-  Reported-by: Ganesh Kamath
-  
-  Closes https://github.com/curl/curl/pull/6442
-
-Daniel Stenberg (14 Jan 2021)
-- tool_operate: spellfix a comment
-
-- ROADMAP: refreshed
-  
-  o removed HSTS - already implemented
-  o added HTTPS RR records
-  o mention HTTP/3 completion
-
-- http_chunks: remove Curl_ prefix from static functions
-
-- transfer: remove Curl_ prefix from static functions
-
-- tftp: remove Curl_ prefix from static functions
-
-- multi: remove Curl_ prefix from static functions
-
-- ldap: remove Curl_ prefix from static functions
-
-- doh: remove Curl_ prefix from static functions
-
-- asyn-ares: remove Curl_ prefix from static functions
-
-- vtls: remove Curl_ prefix from static functions
-
-- bearssl: remove Curl_ prefix from static functions
-
-- mbedtls: remove Curl_ prefix from static functions
-
-- wolfssl: remove Curl_ prefix from static functions
-
-- nss: remove Curl_ prefix from static functions
-
-- gnutls: remove Curl_ prefix from static functions
-
-- openssl: remove Curl_ prefix from static functions
-  
-  ... as we reserve this prefix to library-wide functions.
-  
-  Closes #6443
-
-- nss: get the run-time version instead of build-time
-  
-  Closes #6445
-
-Jay Satiro (12 Jan 2021)
-- tool_doswin: Restore original console settings on CTRL signal
-  
-  - Move Windows terminal init code from tool_main to tool_doswin.
-  
-  - Restore the original console settings on CTRL+C and CTRL+BREAK.
-  
-  Background: On Windows the curl tool changes the console settings to
-  enable virtual terminal processing (eg color output) if supported
-  (ie Win 10). The original settings are restored on exit but prior to
-  this change were not restored in the case of the CTRL signals.
-  
-  Windows VT behavior varies depending on console/powershell/terminal;
-  refer to the discussion in #6226.
-  
-  Assisted-by: Rich Turner
-  
-  Closes https://github.com/curl/curl/pull/6226
-
-Daniel Stenberg (12 Jan 2021)
-- gen.pl: fix perl syntax
-  
-  Follow-up to 324cf1d2e
-
-- [Emil Engler brought this change]
-
-  help: update to current codebase
-  
-  This commit bumps the help to the current state of the project.
-  
-  Closes #6437
-
-- [Emil Engler brought this change]
-
-  docs: fix line length bug in gen.pl
-  
-  The script warns if the length of $opt and $desc is > 78. However, these
-  two variables are on totally separate lines so the check makes no sense.
-  Also the $bitmask field is totally forgotten. Currently this leads to
-  two warnings within `--resolve` and `--aws-sigv4`.
-  
-  Closes #6438
-
-- [Emil Engler brought this change]
-
-  docs: fix wrong documentation in help.d
-  
-  curl does not list all categories when you invoke "--help" without any
-  parameters.
-  
-  Closes #6436
-
-- aws-sigv4.d: polish the wording
-  
-  Make it shorter and imperative form
-  
-  Closes #6439
-
-- [Fabian Keil brought this change]
-
-  misc: fix typos
-  
-  Bug: https://curl.se/mail/lib-2021-01/0063.html
-  Closes #6434
-
-- multi_runsingle: bail out early on data->conn == NULL
-  
-  As that's a significant error condition and scan-build warns for NULL
-  pointer dereferences if we don't.
-  
-  Closes #6433
-
-- multi: skip DONE state if there's no connection left for ftp wildcard
-  
-  ... to avoid running in that state with data->conn being NULL.
-
-- libssh2: fix "Value stored to 'readdir_len' is never read"
-  
-  Detected by scan-build
-
-- connect: mark intentional ignores of setsockopt return values
-  
-  Pointed out by Coverity
-  
-  Closes #6431
-
-Jay Satiro (11 Jan 2021)
-- http_proxy: Fix CONNECT chunked encoding race condition
-  
-  - During the end-of-headers response phase do not mark the tunnel
-    complete unless the response body was completely parsed/ignored.
-  
-  Prior to this change if the entirety of a CONNECT response with chunked
-  encoding was not received by the time the final header was parsed then
-  the connection would be marked done prematurely, before all the chunked
-  data could be read in and ignored (since this is what we do with any
-  CONNECT response body) and the connection could not be used.
-  
-  Bug: https://curl.se/mail/lib-2021-01/0033.html
-  Reported-by: Fabian Keil
-  
-  Closes https://github.com/curl/curl/pull/6432
-
-Daniel Stenberg (11 Jan 2021)
-- RELEASE-NOTES: synced
-
-- url: if IDNA conversion fails, fallback to Transitional
-  
-  This improves IDNA2003 compatiblity.
-  
-  Reported-by: Bubu on github
-  Fixes #6423
-  Closes #6428
-
-- travis: make the Hyper build from its master branch
-  
-  Closes #6430
-
-- http: make 'authneg' also work for Hyper
-  
-  When doing a request with a request body expecting a 401/407 back, that
-  initial request is sent with a zero content-length. Test 177 and more.
-  
-  Closes #6424
-
-Jay Satiro (8 Jan 2021)
-- cmake: Add an option to disable libidn2
-  
-  New option USE_LIBIDN2 defaults to ON for libidn2 detection. Prior to
-  this change libidn2 detection could not be turned off in cmake builds.
-  
-  Reported-by: William A Rowe Jr
-  
-  Fixes https://github.com/curl/curl/issues/6361
-  Closes https://github.com/curl/curl/pull/6362
-
-Daniel Stenberg (8 Jan 2021)
-- HYPER: no longer needs the special branch
-
-- test179: use consistent header line endings
-  
-  ... to make "Hyper mode" work better.
-
-- file: don't provide content-length for directories
-  
-  ... as it is misleading.
-  
-  Ref #6379
-  Closes #6421
-
-- TODO: Directory listing for FILE:
-  
-  Ref #6379
-
-- curl.h: add CURLPROTO_GOPHERS as own protocol identifier
-  
-  Follow-up to a1f06f32b860, to make sure it can be handled separately
-  from plain gopher.
-  
-  Closes #6418
-
-- http: have CURLOPT_FAILONERROR fail after all headers
-  
-  ... so that Retry-After and other meta-content can still be used.
-  
-  Added 1634 to verify. Adjusted test 194 and 281 since --fail now also
-  includes the header-terminating CRLF in the output before it exits.
-  
-  Fixes #6408
-  Closes #6409
-
-- global_init: debug builds allocates a byte in init
-  
-  ... to make build tools/valgrind warn if no curl_global_cleanup is
-  called.
-  
-  This is conditionally only done for debug builds with the env variable
-  CURL_GLOBAL_INIT set.
-  
-  Closes #6410
-
-- lib/unit tests: add missing curl_global_cleanup() calls
-
-- travis: adapt to Hyper build change
-  
-  Closes #6419
-
-- pretransfer: setup the User-Agent header here
-  
-  ... and not in the connection setup, as for multiplexed transfers the
-  connection setup might be skipped and then the transfer would end up
-  without the set user-agent!
-  
-  Reported-by: Flameborn on github
-  Assisted-by: Andrey Gursky
-  Assisted-by: Jay Satiro
-  Assisted-by: Mike Gelfand
-  Fixes #6312
-  Closes #6417
-
-- test66: disable with Hyper
-  
-  ...as Hyper doesn't support HTTP/0.9
-
-- c-hyper: poll the tasks until end correctly
-  
-  ... makes test 36 work.
-  
-  Closes #6412
-
-- [Gergely Nagy brought this change]
-
-  mk-ca-bundle.pl: deterministic output when using -t
-  
-  Printing trust purposes are now sorted, making the output deterministic
-  when running on the same input certdata.txt.
-  
-  Closes #6413
-
-- KNOWN_BUGS: fixed "wolfSSL lacks support for renegotiation"
-  
-  Fixed by #6411
-
-- [Himanshu Gupta brought this change]
-
-  wolfssl: add SECURE_RENEGOTIATION support
-  
-  Closes #6411
-
-- RELEASE-NOTES: synced
-
-- wolfssl: update copyright year range
-  
-  Follow-up to 7de2e96535e9
-
-- c-hyper: make CURLE_GOT_NOTHING work
-  
-  Test 30
-  
-  Closes #6407
-
-- http_proxy: make CONNECT work with the Hyper backend
-  
-  Makes test 80 run
-  
-  Closes #6406
-
-- TODO: --fail-with-body perchance?
-
-Jay Satiro (4 Jan 2021)
-- tool_operate: fix the suppression logic of some error messages
-  
-  - Fix the failed truncation and failed writing body error messages to
-    not be shown unless error messages are shown. (ie the user has
-    specified -sS, or has not specified -s).
-  
-  - Also prefix same error messages with "curl: ", for example:
-    curl: (23) Failed to truncate, exiting
-  
-  Prior to this change the failed truncation error messages would be shown
-  if not -s, but did not account for -sS which should show.
-  
-  Prior to this change the failed writing body error messages would be
-  shown always.
-  
-  Ref: https://curl.se/docs/manpage.html#-S
-  
-  Bug: https://curl.se/mail/archive-2020-12/0017.html
-  Reported-by: Hongyi Zhao
-  
-  Closes https://github.com/curl/curl/pull/6402
-
-- wolfssl: Support wolfSSL builds missing TLS 1.1
-  
-  The wolfSSL TLS library defines NO_OLD_TLS in some of their build
-  configurations and that causes the library to be built without TLS 1.1.
-  For example if MD5 is explicitly disabled when building wolfSSL then
-  that defines NO_OLD_TLS and the library is built without TLS 1.1 [1].
-  
-  Prior to this change attempting to build curl with a wolfSSL that was
-  built with NO_OLD_TLS would cause a build link error undefined reference
-  to wolfTLSv1_client_method.
-  
-  [1]: https://github.com/wolfSSL/wolfssl/blob/v4.5.0-stable/configure.ac#L2366
-  
-  Bug: https://curl.se/mail/lib-2020-12/0121.html
-  Reported-by: Julian Montes
-  
-  Closes https://github.com/curl/curl/pull/6388
-
-Daniel Stenberg (4 Jan 2021)
-- test1633: set appropriate name
-  
-  "--retry with a 429 response and Retry-After:"
-
-- travis: limit the tests with quiche builds to HTTPS and FTPS only
-  
-  ... since it runs into the 50 minute time limit too often otherwise.
-  
-  Closes #6403
-
-- HISTORY: added dates to early history
-  
-  Mostly thanks to this archived web page for urlget:
-  
-  https://web.archive.org/web/19980216125115/http://www.inf.ufrgs.br/~sagula/urlget.html
-
-- httpauth: make multi-request auth work with custom port
-  
-  When doing HTTP authentication and a port number set with CURLOPT_PORT,
-  the code would previously have the URL's port number override as if it
-  had been a redirect to an absolute URL.
-  
-  Added test 1568 to verify.
-  
-  Reported-by: UrsusArctos on github
-  Fixes #6397
-  Closes #6400
-
-- [Emil Engler brought this change]
-
-  language: s/behaviour/behavior/g
-  
-  We currently use both spellings the british "behaviour" and the american
-  "behavior". However "behavior" is more used in the project so I think
-  it's worth dropping the british name.
-  
-  Closes #6395
-
-- cmdline-opts/retry.d: mention response code 429 as well
-  
-  Reported-by: Cherish98
-  Bug: https://curl.se/mail/archive-2020-12/0018.html
-
-- docs/HYPER.md: mention outstanding issues
-  
-  To make it more obvious to users what doesn't work (yet)
-  
-  Closes #6389
-
-- COPYING/configure: bump copyright year range
-
-- c-hyper: add timecondition to the request
-  
-  Test 77-78
-  
-  Closes #6391
-
-- c-hyper: make Digest and NTLM work
-  
-  Test 64, 65, 67, 68, 69, 70, 72
-  
-  Closes #6390
-
-- examples/curlgtk.c: fix the copyright year range
-  
-  ... and make private functions static.
-
-- [Olaf Hering brought this change]
-
-  docs/examples: adjust prototypes for CURLOPT_READFUNCTION
-  
-  The type of the buffer in curl_read_callback is 'char *', not 'void *'.
-  
-  Signed-off-by: Olaf Hering <olaf@aepfle.de>
-  Closes #6392
-
-- examples: fix more empty expression statement has no effect
-  
-  Follow-up to 26e46617b9
-
-- cleanup: fix two empty expression statement has no effect
-  
-  Follow-up to 26e46617b9
-
-- configure: set -Wextra-semi-stmt for clang with --enable-debug
-  
-  To have it properly complain on empty statements with no effect.
-  
-  Ref: #6376
-  Closes #6378
-
-- tests/unit: fix empty statements with no effect
-  
-  ... by making macros use "do {} while(0)"
-
-- [Paul Groke brought this change]
-
-  dns: extend CURLOPT_RESOLVE syntax for adding non-permanent entries
-  
-  Extend the syntax of CURLOPT_RESOLVE strings: allow using a '+' prefix
-  (similar to the existing '-' prefix for removing entries) to add
-  DNS cache entries that will time out just like entries that are added
-  by libcurl itself.
-  
-  Append " (non-permanent)" to info log message in case a non-permanent
-  entry is added.
-  
-  Adjust relevant comments to reflect the new behavior.
-  
-  Adjust documentation.
-  
-  Extend unit1607 to test the new functionality.
-  
-  Closes #6294
-
-- schannel: fix "empty expression statement has no effect"
-  
-  Bug: https://github.com/curl/curl/commit/8ab78f720ae478d533e30b202baec4b451741579#commitcomment-45445950
-  Reported-by: Gisle Vanem
-  Closes #6381
-
-- [Denis Laxalde brought this change]
-
-  docs: remove redundant "better" in --fail help
-  
-  Closes #6385
-
-- [Kevin Ushey brought this change]
-
-  curl.1: fix typo microsft -> microsoft
-  
-  Closes #6380
-
-- [XhmikosR brought this change]
-
-  misc: assorted typo fixes
-  
-  Closes #6375
-
-- RELEASE-NOTES: synced
-
-- tool_operate: avoid NULL dereference of first_arg
-  
-  Follow-up to 6a5e020d4d2b04a
-  Identified by OSS-Fuzz
-  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28999
-  Closes #6377
-
-- misc: fix "warning: empty expression statement has no effect"
-  
-  Turned several macros into do-while(0) style to allow their use to work
-  find with semicolon.
-  
-  Bug: https://github.com/curl/curl/commit/08e8455dddc5e48e58a12ade3815c01ae3da3b64#commitcomment-45433279
-  Follow-up to 08e8455dddc5e4
-  Reported-by: Gisle Vanem
-  Closes #6376
-
-- KNOWN_BUGS: 6.10 curl never completes Negotiate over HTTP
-  
-  Closes #5235
-  Closes #6370
-
-- writeout: fix NULL dereference for "this url"
-  
-  Detected by torture test 1029
-  
-  Follow-up to 7a90ddf88f5a
-  
-  Closes #6374
-
-- failf: remove newline from formatting strings
-  
-  ... as failf adds one itself.
-  
-  Also: add an assert() to failf() that triggers on a newline in the
-  format string!
-  
-  Closes #6365
-
-- [XhmikosR brought this change]
-
-  CI: fix warning with the latest versions
-  
-  `git checkout HEAD^2` is no longer needed
-  
-  Closes #6369
-
-- INSTALL: update the list known OSes and CPU archs curl has run on
-  
-  Closes #6366
-
-- [Cherish98 brought this change]
-
-  curl: fix handling of -q option
-  
-  The match of the "-q" option (short for "--disable") should:
-  a) allow concatenation with other single-letters; and
-  b) be case-sensitive, lest confusing with "-Q" ("--quote")
-  
-  Closes #6364
-
-- tests/badsymbols.pl: ignore stand-alone single hash lines
-  
-  Bug: https://curl.se/mail/lib-2020-12/0084.html
-  Reported-by: Dennis Clarke
-  Assisted-by: Jay Satiro
-  
-  Closes #6355
-
-- curl_easy_pause.3: add multiplexed pause effects
-  
-  and generally refresh and update. Remove details for ancient versions.
-  
-  Reviewed-by: Jay Satiro
-  Closes #6360
-
-Jay Satiro (22 Dec 2020)
-- curl_easy_pause.3: fix man page reference
-  
-  Follow-up to ac9a724 from earlier today.
-  
-  Ref: https://github.com/curl/curl/pull/6359
-
-Daniel Stenberg (22 Dec 2020)
-- EXPERIMENTAL: add the Hyper backend to the list
-  
-  ... of current experimental features in curl.
-
-- speedcheck: exclude paused transfers
-  
-  Paused transfers should not be stopped due to slow speed even when
-  CURLOPT_LOW_SPEED_LIMIT is set. Additionally, the slow speed timer is
-  now reset when the transfer is unpaused - as otherwise it would easily
-  just trigger immediately after unpausing.
-  
-  Reported-by: Harry Sintonen
-  Fixes #6358
-  Closes #6359
-
-- h2: do not wait for RECV on paused transfers
-  
-  ... as the socket might be readable all the time when paused and thus
-  causing a busy-loop.
-  
-  Reported-by: Harry Sintonen
-  Reviewed-by: Jay Satiro
-  Fixes #6356
-  Closes #6357
-
-- RELEASE-NOTES: synced
-
-- cmdline-opts/gen.pl: return hard on errors
-  
-  ... as the warnings tend to go unnoticed otherwise!
-  
-  Closes #6354
-
-- examples/libtest: add .checksrc to dist
-  
-  ... so that (auto)builds from tarballs also get the correct instructions.
-  
-  Fixes #6176
-  Closes #6353
-
-- test: verify new --write-out variables
-  
-  Extended test 1029 and added 1188
-
-- test970: adapted to the new internal order of variables
-
-- curl: add variables to --write-out
-  
-  In particular, these ones can help a user to create its own error
-  message when one or transfers fail.
-  
-  writeout: add 'onerror', 'url', 'urlnum', 'exitcode', 'errormsg'
-  
-  onerror - lets a user only show the rest on non-zero exit codes
-  
-  url - the input URL used for this transfer
-  
-  urlnum - the numerical URL counter (0 indexed) for this transfer
-  
-  exitcode - the numerical exit code for the transfer
-  
-  errormsg - obvious
-  
-  Reported-by: Earnestly on github
-  Fixes #6199
-  Closes #6207
-
-- [Matthias Gatto brought this change]
-
-  tests: add very simple AWS HTTP v4 Signature test
-  
-  Signed-off-by: Matthias Gatto <matthias.gatto@outscale.com>
-
-- [Matthias Gatto brought this change]
-
-  docs: add AWS HTTP v4 Signature
-
-- [Matthias Gatto brought this change]
-
-  tool: add AWS HTTP v4 Signature support
-  
-  Signed-off-by: Matthias Gatto <matthias.gatto@outscale.com>
-
-- [Matthias Gatto brought this change]
-
-  http: Make the call to v4 signature
-  
-  This patch allow to call the v4 signature introduce in previous commit
-  
-  Signed-off-by: Matthias Gatto <matthias.gatto@outscale.com>
-
-- [Matthias Gatto brought this change]
-
-  http: introduce AWS HTTP v4 Signature
-  
-  It is a security process for HTTP.
-  
-  It doesn't seems to be standard, but it is used by some cloud providers.
-  
-  Aws:
-  https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html
-  Outscale:
-  https://wiki.outscale.net/display/EN/Creating+a+Canonical+Request
-  GCP (I didn't test that this code work with GCP though):
-  https://cloud.google.com/storage/docs/access-control/signing-urls-manually
-  
-  most of the code is in lib/http_v4_signature.c
-  
-  Information require by the algorithm:
-  - The URL
-  - Current time
-  -  some prefix that are append to some of the signature parameters.
-  
-  The data extracted from the URL are: the URI, the region,
-  the host and the API type
-  
-  example:
-  https://api.eu-west-2.outscale.com/api/latest/ReadNets
-          ~~~ ~~~~~~~~               ~~~~~~~~~~~~~~~~~~~
-          ^       ^                          ^
-         /         \                        URI
-     API type     region
-  
-  Small description of the algorithm:
-  - make canonical header using content type, the host, and the date
-  - hash the post data
-  - make canonical_request using custom request, the URI,
-    the get data, the canonical header, the signed header
-    and post data hash
-  - hash canonical_request
-  - make str_to_sign using one of the prefix pass in parameter,
-    the date, the credential scope and the canonical_request hash
-  - compute hmac from date, using secret key as key.
-  - compute hmac from region, using above hmac as key
-  - compute hmac from api_type, using above hmac as key
-  - compute hmac from request_type, using above hmac as key
-  - compute hmac from str_to_sign using above hmac as key
-  - create Authorization header using above hmac, prefix pass in parameter,
-    the date, and above hash
-  
-  Signed-off-by: Matthias Gatto <matthias.gatto@outscale.com>
-  
-  Closes #5703
-
-- [Matthias Gatto brought this change]
-
-  http: add hmac support for sha256
-  
-  It seems current hmac implementation use md5 for the hash,
-  V4 signature require sha256, so I've added the needed struct in
-  this commit.
-  
-  I've added the functions that do the hmac in v4 signature file
-  as a static function ,in the next patch of the serie,
-  because it's used only by this file.
-  
-  Signed-off-by: Matthias Gatto <matthias.gatto@outscale.com>
-
-- [Cristian Rodríguez brought this change]
-
-  connect: on linux, enable reporting of all ICMP errors on UDP sockets
-  
-  The linux kernel does not report all ICMP errors back to userspace due
-  to historical reasons.
-  
-  IP*_RECVERR sockopt must be turned on to have the correct behaviour
-  which is to pass all ICMP errors to userspace.
-  
-  See https://bugzilla.kernel.org/show_bug.cgi?id=202355
-  
-  Closes #6341
-
-- curl: add --create-file-mode [mode]
-  
-  This option sets the (octal) mode to use for the remote file when one is
-  created, using the SFTP, SCP or FILE protocols. When not set, the
-  default is 0644.
-  
-  Closes #6244
-
-- c-hyper: fix compiler warnings
-  
-  Identified by clang on windows.
-  
-  Reported-by: Gisle Vanem
-  Bug: 58974d25d8173aec154e593ed9d866da566c9811
-  
-  Closes #6351
-
-- KNOWN_BUGS: Remote recursive folder creation with SFTP
-  
-  Closes #5204
-
-Jay Satiro (20 Dec 2020)
-- badsymbols.pl: Add verbose mode -v
-  
-  Use -v as the first option to enable verbose mode which will show source
-  input, extracted symbol and line info. For example:
-  
-  Source: ./../include/curl/typecheck-gcc.h
-  Symbol: curlcheck_socket_info(info)
-  Line #423: #define curlcheck_socket_info(info)                     \
-  
-  Ref: https://curl.se/mail/lib-2020-12/0084.html
-  
-  Closes https://github.com/curl/curl/pull/6349
-
-- KNOWN_BUGS: Secure Transport disabling hostname validation also disables SNI
-  
-  That behavior is a limitation of Apple's Secure Transport.
-  
-  Reported-by: Cory Benfield
-  Reported-by: Ian Spence
-  Confirmed-by: Nick Zitzmann
-  
-  Ref: https://github.com/curl/curl/issues/998
-  
-  Closes https://github.com/curl/curl/issues/6347
-  Closes https://github.com/curl/curl/pull/6348
-
-Daniel Stenberg (18 Dec 2020)
-- TODO: alt-svc should fallback if alt-svc doesn't work
-  
-  Closes #4908
-
-- travis: restrict the openssl3 job to only run https and ftps tests
-  
-  ... as it runs too long otherwise and the other tests are verified in
-  other builds anyway.
-  
-  Closes #6345
-
-- build: repair http disabled but mqtt enabled build
-  
-  ... as the mqtt code reuses the "method" originally used for HTTP.
-  
-  Closes #6344
-
-- [Jon Wilkes brought this change]
-
-  cookie: avoid the C1001 internal compiler error with MSVC 14
-  
-  Fixes #6112
-  Closes #6135
-
-- RELEASE-NOTES: synced
-
-- mqtt: handle POST/PUBLISH without a set POSTFIELDSIZE
-  
-  Detected by OSS-Fuzz
-  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28735
-  
-  Added test 1916 and 1917 to verify.
-  
-  Closes #6338
-
-- travis: add CI job for Hyper build
-
-- tests: updated tests for Hyper
-
-- lib: introduce c-hyper for using Hyper
-  
-  ... as an alternative HTTP backend within libcurl.
-
-- tool_setopt: provide helper output in debug builds
-  
-  ... for when setopt() returns error.
-
-- setopt: adjust to Hyper and disabled HTTP builds
-
-- rtsp: disable if Hyper is used
-
-- getinfo: build with disabled HTTP support
-
-- version: include hyper version
-
-- docs: add HYPER.md
-
-- configure: add --with-hyper
-  
-  As the first (optional) HTTP backend alternative instead of native
-  
-  Close #6110
-
-- test1522: add debug tracing
-  
-  I used this to track down some issues and I figured I could just as well
-  keep this extra logging in here for future needs.
-  
-  Closes #6331
-
-- http: show the request as headers even when split-sending
-  
-  When the initial request isn't possible to send in its entirety, the
-  remainder of request would be delivered to the debug callback as data
-  and would wrongly be counted internally as body-bytes sent.
-  
-  Extended test 1295 to verify.
-  
-  Closes #6328
-
-- multi: when erroring in TOOFAST state, act as for PERFORM
-  
-  When failing in TOOFAST, the multi_done() wasn't called so the same
-  cleanup and handling wasn't done like when it fails in PERFORM, which in
-  the case of FTP could mean that the control connection wouldn't be
-  marked as "dead" for the CURLE_ABORTED_BY_CALLBACK case. Which caused
-  ftp_disconnect() to use it to send "QUIT", which could end up waiting
-  for a response a long time before giving up!
-  
-  Reported-by: Tomas Berger
-  Fixes #6333
-  Closes #6337
-
-- cmake: enable gophers correctly in curl-config
-  
-  Closes #6336
-
-- test1198/9: add two mqtt publish tests without payload lengths
-  
-  Closes #6335
-
-- tests/mqttd: extract the client id from the correct offset
-  
-  Closes #6334
-
-- TODO: Prevent terminal injection when writing to terminal
-  
-  Closes #6150
-
-- Revert "CI/github: work-around for brew breakage on macOS"
-  
-  This reverts commit 4cbb17a2cbbbe6337142d39479e21c3990b9c22f.
-  
-  ... as the work-around now causes failures.
-  
-  Closes #6332
-
-- examples: remove superfluous asterisk uses
-  
-  ... for function pointers. Breaks in ancient compilers.
-
-- RELEASE-NOTES: synced
-
-- test1272: fix line ending
-  
-  Follow-up to f24784f9143
-
-- URL-SYNTAX: add gophers details
-
-- test1272: test gophers
-
-- runtests: add support for gophers, gopher over TLS
-
-- [parazyd brought this change]
-
-  gopher: Implement secure gopher protocol.
-  
-  This commit introduces a "gophers" handler inside the gopher protocol if
-  USE_SSL is defined. This protocol is no different than the usual gopher
-  prococol, with the added TLS encapsulation upon connecting. The protocol
-  has been adopted in the gopher community, and many people have enabled
-  TLS in their gopher daemons like geomyidae(8), and clients, like clic(1)
-  and hurl(1).
-  
-  I have not implemented test units for this protocol because my knowledge
-  of Perl is sub-par. However, for someone more knowledgeable it might be
-  fairly trivial, because the same test that tests the plain gopher
-  protocol can be used for "gophers" just by adding a TLS listener.
-  
-  Signed-off-by: parazyd <parazyd@dyne.org>
-  
-  Closes #6208
-
-- TODO: Package curl for Windows in a signed installer
-  
-  Closes #5424
-
-- mqtt: deal with 0 byte reads correctly
-  
-  OSS-Fuzz found it
-  Bug: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=28676
-  
-  Closes #6327
-
-- BUG-BOUNTY: minor language update
-  
-  ... and remove the wording about entries from before 2019 as the "within
-  12 months" is still there and covers that.
-  
-  Closes #6318
-
-- tooĺ_writeout: fix the -w time output units
-  
-  Fix regression from commit fc813f80e1bcac (#6248) that changed the unit
-  to microseconds instead of seconds with fractions
-  
-  Reported-by: 不确定
-  Fixes #6321
-  Closes #6322
-
-- quiche: remove fprintf() leftover
-
-Jay Satiro (14 Dec 2020)
-- KNOWN_BUGS: SHA-256 digest not supported in Windows SSPI builds
-  
-  Closes https://github.com/curl/curl/issues/6302
-
-- digest_sspi: Show InitializeSecurityContext errors in verbose mode
-  
-  The error is shown with infof rather than failf so that the user will
-  see the extended error message information only in verbose mode, and
-  will still see the standard CURLE_AUTH_ERROR message. For example:
-  
-  ---
-  
-  * schannel: InitializeSecurityContext failed: SEC_E_QOP_NOT_SUPPORTED
-  (0x8009030A) - The per-message Quality of Protection is not supported by
-  the security package
-  * multi_done
-  * Connection #1 to host 127.0.0.1 left intact
-  curl: (94) An authentication function returned an error
-  
-  ---
-  
-  Ref: https://github.com/curl/curl/issues/6302
-  
-  Closes https://github.com/curl/curl/pull/6315
-
-Daniel Stenberg (13 Dec 2020)
-- URL-SYNTAX: add default port numbers and IDNA details
-  
-  Closes #6316
-
-- URL-SYNTAX: mention how FILE:// access can access network on windows
-  
-  Closes #6314
-
-Jay Satiro (12 Dec 2020)
-- URL-SYNTAX: Document default SMTP port 25
-  
-  Note that ports 25 and 587 are common ports for smtp, the former being
-  the default.
-  
-  Closes https://github.com/curl/curl/pull/6310
-
-Daniel Stenberg (12 Dec 2020)
-- CURLOPT_URL.3: remove scheme specific details
-  
-  ... that are now found in URL-SYNTAX.md
-  
-  Closes #6307
-
-Dan Fandrich (12 Dec 2020)
-- docs: Fix some typos
-  
-  [skip ci]
-
-Daniel Stenberg (12 Dec 2020)
-- URL-SYNTAX: mention all supported schemes
-  
-  Closes #6311
-
-- [Douglas R. Reno brought this change]
-
-  URL-SYNTAX.md: minor language improvements
-  
-  Closes #6308
-
-- docs/URL-SYNTAX: the URL syntax curl accepts and works with
-  
-  Closes #6285
-
-- [0xflotus brought this change]
-
-  docs: enable syntax highlighting in several docs files
-  
-  ... for better readability
-  
-  Closes #6286
-
-- test1564/1565: require the 'wakeup' feature to run
-  
-  Fixes #6299
-  Fixes #6300
-  Closes #6301
-
-- runtests: add 'wakeup' as a feature
-
-- tests/server/disabled: add "wakeup"
-  
-  To allow the test suite to know if wakeup support is disabled in the
-  build.
-
-- lib1564/5: verify that curl_multi_wakeup returns OK
-
-- tests: make --libcurl tests only test FTP options if ftp enabled
-  
-  Adjust six --libcurl tests to only check the FTP option if FTP is
-  actually present in the build.
-  
-  Fixes #6303
-  Closes #6305
-
-- runtests.pl: fix "uninitialized value" warning
-  
-  follow-up to e12825c642a88774
-
-- runtests: add support for %if [feature] conditions
-  
-  ... to make tests run differently or expect different results depending
-  on what features that are present or not in curl.
-  
-  Bonus: initial minor 'Hyper' awareness but nothing is using that yet
-  
-  Closes #6304
-
-- [Jon Rumsey brought this change]
-
-  OS400: update ccsidcurl.c
-  
-  Add 'struct' to cast and declaration of cfcdata to fix compilation
-  error.
-  
-  Fixes #6292
-  Closes #6297
-
-- ngtcp2: make it build it current master again
-  
-  Closes #6296
-
-- [Cristian Rodríguez brought this change]
-
-  connect: defer port selection until connect() time
-  
-  If supported, defer port selection until connect() time
-  if --interface is given and source port is 0.
-  
-  Reproducer:
-  
-  * start fast webserver on port 80
-  * starve system of ephemeral ports
-  $  sysctl net.ipv4.ip_local_port_range="60990 60999"
-  
-  * start a curl/libcurl "crawler"
-  $curl --keepalive --parallel --parallel-immediate --head --interface
-  127.0.0.2 "http://127.0.0.[1-254]/file[001-002].txt"
-  
-  current result:
-  (possible some successful data)
-  curl: (45) bind failed with errno 98: Address already in use
-  
-  result after patch:
-  (complete success or few connections failing, higlhy depending on load)
-  
-  Fail only when all the possible 4-tuple combinations are exhausted,
-  which is impossible to do when port is selected at bind() time becuse
-  the kernel does not know if socket will be listen()'ed on or connect'ed
-  yet.
-  
-  Closes #6295
-
-- [Hans-Christian Noren Egtvedt brought this change]
-
-  connect: zero variable on stack to silence valgrind complaint
-  
-  Valgrind will complain that ssrem buffer usage if not explicit
-  initialized, hence initialize it to zero.
-  
-  This completes the change intially started in commit 2c0d7212151 ('ftp:
-  retry getpeername for FTP with TCP_FASTOPEN') where the ssloc buffer has
-  a similar memset to zero.
-  
-  Signed-off-by: Hans-Christian Noren Egtvedt <hegtvedt@cisco.com>
-  Closes #6289
-
-- RELEASE-NOTES: synced
-  
-  start over on the next release cycle
-
-Version 7.74.0 (9 Dec 2020)
-
-Daniel Stenberg (9 Dec 2020)
-- RELEASE-NOTES: synced
-  
-  for 7.74.0
-
-Jay Satiro (7 Dec 2020)
-- [Jacob Hoffman-Andrews brought this change]
-
-  urldata: restore comment on ssl_connect_data.use
-  
-  This comment was originally on the `use` field, but was separated from
-  its field in 62a2534.
-  
-  Closes https://github.com/curl/curl/pull/6287
-
-Daniel Stenberg (7 Dec 2020)
-- VERSIONS: refreshed
-  
-  We always use the patch number these days: all releases are
-  "major.minor.patch"
-
-- [Jakub Zakrzewski brought this change]
-
-  cmake: don't use reserved target name 'test'
-  
-  CMake up to 3.10 always reserves this name
-  
-  Fixes #6257
-  Closes #6258
-
-- openssl: make the OCSP verification verify the certificate id
-  
-  CVE-2020-8286
-  
-  Reported by anonymous
-  
-  Bug: https://curl.se/docs/CVE-2020-8286.html
-
-- ftp: make wc_statemach loop instead of recurse
-  
-  CVE-2020-8285
-  
-  Fixes #6255
-  Bug: https://curl.se/docs/CVE-2020-8285.html
-  Reported-by: xnynx on github
-
-- ftp: CURLOPT_FTP_SKIP_PASV_IP by default
-  
-  The command line tool also independently sets --ftp-skip-pasv-ip by
-  default.
-  
-  Ten test cases updated to adapt the modified --libcurl output.
-  
-  Bug: https://curl.se/docs/CVE-2020-8284.html
-  CVE-2020-8284
-  
-  Reported-by: Varnavas Papaioannou
-
-- urlapi: don't accept blank port number field without scheme
-  
-  ... as it makes the URL parser accept "very-long-hostname://" as a valid
-  host name and we don't want that. The parser now only accepts a blank
-  (no digits) after the colon if the URL starts with a scheme.
-  
-  Reported-by: d4d on hackerone
-  
-  Closes #6283
-
-- Revert "multi: implement wait using winsock events"
-  
-  This reverts commit d2a7d7c185f98df8f3e585e5620cbc0482e45fac.
-  
-  This commit also reverts the subsequent follow-ups to that commit, which
-  were all done within windows #ifdefs that are removed in this
-  change. Marc helped me verify this.
-  
-  Fixes #6146
-  Closes #6281
-
-- [Klaus Crusius brought this change]
-
-  ftp: retry getpeername for FTP with TCP_FASTOPEN
-  
-  In the case of TFO, the remote host name is not resolved at the
-  connetion time.
-  
-  For FTP that has lead to missing hostname for the secondary connection.
-  Therefore the name resolution is done at the time, when FTP requires it.
-  
-  Fixes #6252
-  Closes #6265
-  Closes #6282
-
-- [Thomas Danielsson brought this change]
-
-  scripts/completion.pl: parse all opts
-  
-  For tab-completion it may be preferable to include all the
-  available options.
-  
-  Closes #6280
-
-- RELEASE-NOTES: synced
-
-- openssl: use OPENSSL_init_ssl() with >= 1.1.0
-  
-  Reported-by: Kovalkov Dmitrii and Per Nilsson
-  Fixes #6254
-  Fixes #6256
-  Closes #6260
-
-- SECURITY-PROCESS: disclose on hackerone
-  
-  Once a vulnerability has been published, the hackerone issue should be
-  disclosed. For tranparency.
-  
-  Closes #6275
-
-Marc Hoersken (3 Dec 2020)
-- tests/util.py: fix compatibility with Python 2
-  
-  Backporting the Python 3 implementation of setStream
-  to ClosingFileHandler as a fallback within Python 2.
-  
-  Reported-by: Jay Satiro
-  
-  Fixes #6259
-  Closes #6270
-
-Daniel Gustafsson (3 Dec 2020)
-- docs: fix typos and markup in ETag manpage sections
-  
-  Reported-by: emanruse on github
-  Fixes #6273
-
-Daniel Stenberg (2 Dec 2020)
-- quiche: close the connection
-  
-  Reported-by: Junho Choi
-  Fixes #6213
-  Closes #6217
-
-Jay Satiro (2 Dec 2020)
-- ngtcp2: Fix build error due to symbol name change
-  
-  - NGTCP2_CRYPTO_LEVEL_APP -> NGTCP2_CRYPTO_LEVEL_APPLICATION
-  
-  ngtcp2/ngtcp2@76232e9 changed the name.
-  
-  ngtcp2 master is required to build curl with http3 support.
-  
-  Closes https://github.com/curl/curl/pull/6271
-
-Daniel Stenberg (1 Dec 2020)
-- [Klaus Crusius brought this change]
-
-  cmake: check for linux/tcp.h
-  
-  The HAVE_LINUX_TCP_H define was not set by cmake.
-  
-  Closes #6252
diff --git a/CMake/CurlTests.c b/CMake/CurlTests.c
index e418146..8666da0 100644
--- a/CMake/CurlTests.c
+++ b/CMake/CurlTests.c
@@ -229,10 +229,6 @@
 #  include <windows.h>
 #  ifdef HAVE_WINSOCK2_H
 #    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #endif
 
@@ -258,10 +254,6 @@
 #  include <windows.h>
 #  ifdef HAVE_WINSOCK2_H
 #    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #endif
 
@@ -285,10 +277,6 @@
 #  include <windows.h>
 #  ifdef HAVE_WINSOCK2_H
 #    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #endif
 
@@ -313,10 +301,6 @@
 #  include <windows.h>
 #  ifdef HAVE_WINSOCK2_H
 #    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #endif
 
@@ -403,10 +387,6 @@
 #  include <windows.h>
 #  ifdef HAVE_WINSOCK2_H
 #    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #endif
 /* includes start */
diff --git a/CMake/OtherTests.cmake b/CMake/OtherTests.cmake
index 466b567..73c813f 100644
--- a/CMake/OtherTests.cmake
+++ b/CMake/OtherTests.cmake
@@ -33,7 +33,6 @@
 if(HAVE_WINDOWS_H)
   add_header_include(HAVE_WINSOCK2_H "winsock2.h")
   add_header_include(HAVE_WINDOWS_H "windows.h")
-  add_header_include(HAVE_WINSOCK_H "winsock.h")
   set(_source_epilogue
       "${_source_epilogue}\n#ifndef WIN32_LEAN_AND_MEAN\n#define WIN32_LEAN_AND_MEAN\n#endif")
   set(signature_call_conv "PASCAL")
@@ -220,28 +219,6 @@
   return 0;
 }" HAVE_STRUCT_TIMEVAL)
 
-set(HAVE_SIG_ATOMIC_T 1)
-set(CMAKE_REQUIRED_FLAGS)
-if(HAVE_SIGNAL_H)
-  set(CMAKE_REQUIRED_FLAGS "-DHAVE_SIGNAL_H")
-  set(CMAKE_EXTRA_INCLUDE_FILES "signal.h")
-endif()
-check_type_size("sig_atomic_t" SIZEOF_SIG_ATOMIC_T)
-if(HAVE_SIZEOF_SIG_ATOMIC_T)
-  check_c_source_compiles("
-    #ifdef HAVE_SIGNAL_H
-    #  include <signal.h>
-    #endif
-    int main(void) {
-      static volatile sig_atomic_t dummy = 0;
-      (void)dummy;
-      return 0;
-    }" HAVE_SIG_ATOMIC_T_NOT_VOLATILE)
-  if(NOT HAVE_SIG_ATOMIC_T_NOT_VOLATILE)
-    set(HAVE_SIG_ATOMIC_T_VOLATILE 1)
-  endif()
-endif()
-
 if(HAVE_WINDOWS_H)
   set(CMAKE_EXTRA_INCLUDE_FILES winsock2.h)
 else()
@@ -259,6 +236,9 @@
 unset(CMAKE_TRY_COMPILE_TARGET_TYPE)
 
 if(NOT DEFINED CMAKE_TOOLCHAIN_FILE)
+  if(NOT ${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+  # only try this on non-macOS
+
   # if not cross-compilation...
   include(CheckCSourceRuns)
   set(CMAKE_REQUIRED_FLAGS "")
@@ -301,5 +281,6 @@
         }
         return 0;
     }" HAVE_POLL_FINE)
+  endif()
 endif()
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index c85295e..a88f49b 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -156,44 +156,78 @@
 
 include(CurlSymbolHiding)
 
-option(HTTP_ONLY "disables all protocols except HTTP (This overrides all CURL_DISABLE_* options)" OFF)
-mark_as_advanced(HTTP_ONLY)
-option(CURL_DISABLE_FTP "disables FTP" OFF)
-mark_as_advanced(CURL_DISABLE_FTP)
-option(CURL_DISABLE_LDAP "disables LDAP" OFF)
-mark_as_advanced(CURL_DISABLE_LDAP)
-option(CURL_DISABLE_TELNET "disables Telnet" OFF)
-mark_as_advanced(CURL_DISABLE_TELNET)
-option(CURL_DISABLE_DICT "disables DICT" OFF)
-mark_as_advanced(CURL_DISABLE_DICT)
-option(CURL_DISABLE_FILE "disables FILE" OFF)
-mark_as_advanced(CURL_DISABLE_FILE)
-option(CURL_DISABLE_TFTP "disables TFTP" OFF)
-mark_as_advanced(CURL_DISABLE_TFTP)
-option(CURL_DISABLE_HTTP "disables HTTP" OFF)
-mark_as_advanced(CURL_DISABLE_HTTP)
-
-option(CURL_DISABLE_LDAPS "to disable LDAPS" OFF)
-mark_as_advanced(CURL_DISABLE_LDAPS)
-
-option(CURL_DISABLE_RTSP "to disable RTSP" OFF)
-mark_as_advanced(CURL_DISABLE_RTSP)
-option(CURL_DISABLE_PROXY "to disable proxy" OFF)
-mark_as_advanced(CURL_DISABLE_PROXY)
-option(CURL_DISABLE_POP3 "to disable POP3" OFF)
-mark_as_advanced(CURL_DISABLE_POP3)
-option(CURL_DISABLE_IMAP "to disable IMAP" OFF)
-mark_as_advanced(CURL_DISABLE_IMAP)
-option(CURL_DISABLE_SMTP "to disable SMTP" OFF)
-mark_as_advanced(CURL_DISABLE_SMTP)
-option(CURL_DISABLE_GOPHER "to disable Gopher" OFF)
-mark_as_advanced(CURL_DISABLE_GOPHER)
-option(CURL_DISABLE_MQTT "to disable MQTT" OFF)
-mark_as_advanced(CURL_DISABLE_MQTT)
-
 option(CURL_ENABLE_EXPORT_TARGET "to enable cmake export target" ON)
 mark_as_advanced(CURL_ENABLE_EXPORT_TARGET)
 
+option(CURL_DISABLE_ALTSVC "disables alt-svc support" OFF)
+mark_as_advanced(CURL_DISABLE_ALTSVC)
+option(CURL_DISABLE_COOKIES "disables cookies support" OFF)
+mark_as_advanced(CURL_DISABLE_COOKIES)
+option(CURL_DISABLE_CRYPTO_AUTH "disables cryptographic authentication" OFF)
+mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH)
+option(CURL_DISABLE_DICT "disables DICT" OFF)
+mark_as_advanced(CURL_DISABLE_DICT)
+option(CURL_DISABLE_DOH "disables DNS-over-HTTPS" OFF)
+mark_as_advanced(CURL_DISABLE_DOH)
+option(CURL_DISABLE_FILE "disables FILE" OFF)
+mark_as_advanced(CURL_DISABLE_FILE)
+option(CURL_DISABLE_FTP "disables FTP" OFF)
+mark_as_advanced(CURL_DISABLE_FTP)
+option(CURL_DISABLE_GETOPTIONS "disables curl_easy_options API for existing options to curl_easy_setopt" OFF)
+mark_as_advanced(CURL_DISABLE_GETOPTIONS)
+option(CURL_DISABLE_GOPHER "disables Gopher" OFF)
+mark_as_advanced(CURL_DISABLE_GOPHER)
+option(CURL_DISABLE_HSTS "disables HSTS support" OFF)
+mark_as_advanced(CURL_DISABLE_HSTS)
+option(CURL_DISABLE_HTTP "disables HTTP" OFF)
+mark_as_advanced(CURL_DISABLE_HTTP)
+option(CURL_DISABLE_HTTP_AUTH "disables all HTTP authentication methods" OFF)
+mark_as_advanced(CURL_DISABLE_HTTP_AUTH)
+option(CURL_DISABLE_IMAP "disables IMAP" OFF)
+mark_as_advanced(CURL_DISABLE_IMAP)
+option(CURL_DISABLE_LDAP "disables LDAP" OFF)
+mark_as_advanced(CURL_DISABLE_LDAP)
+option(CURL_DISABLE_LDAPS "disables LDAPS" OFF)
+mark_as_advanced(CURL_DISABLE_LDAPS)
+option(CURL_DISABLE_LIBCURL_OPTION "disables --libcurl option from the curl tool" OFF)
+mark_as_advanced(CURL_DISABLE_LIBCURL_OPTION)
+option(CURL_DISABLE_MIME "disables MIME support" OFF)
+mark_as_advanced(CURL_DISABLE_MIME)
+option(CURL_DISABLE_MQTT "disables MQTT" OFF)
+mark_as_advanced(CURL_DISABLE_MQTT)
+option(CURL_DISABLE_NETRC "disables netrc parser" OFF)
+mark_as_advanced(CURL_DISABLE_NETRC)
+option(CURL_DISABLE_NTLM "disables NTLM support" OFF)
+mark_as_advanced(CURL_DISABLE_NTLM)
+option(CURL_DISABLE_PARSEDATE "disables date parsing" OFF)
+mark_as_advanced(CURL_DISABLE_PARSEDATE)
+option(CURL_DISABLE_POP3 "disables POP3" OFF)
+mark_as_advanced(CURL_DISABLE_POP3)
+option(CURL_DISABLE_PROGRESS_METER "disables built-in progress meter" OFF)
+mark_as_advanced(CURL_DISABLE_PROGRESS_METER)
+option(CURL_DISABLE_PROXY "disables proxy support" OFF)
+mark_as_advanced(CURL_DISABLE_PROXY)
+option(CURL_DISABLE_RTSP "disables RTSP" OFF)
+mark_as_advanced(CURL_DISABLE_RTSP)
+option(CURL_DISABLE_SHUFFLE_DNS "disables shuffle DNS feature" OFF)
+mark_as_advanced(CURL_DISABLE_SHUFFLE_DNS)
+option(CURL_DISABLE_SMB "disables SMB" OFF)
+mark_as_advanced(CURL_DISABLE_SMB)
+option(CURL_DISABLE_SMTP "disables SMTP" OFF)
+mark_as_advanced(CURL_DISABLE_SMTP)
+option(CURL_DISABLE_SOCKETPAIR "disables use of socketpair for curl_multi_poll" OFF)
+mark_as_advanced(CURL_DISABLE_SOCKETPAIR)
+option(CURL_DISABLE_TELNET "disables Telnet" OFF)
+mark_as_advanced(CURL_DISABLE_TELNET)
+option(CURL_DISABLE_TFTP "disables TFTP" OFF)
+mark_as_advanced(CURL_DISABLE_TFTP)
+option(CURL_DISABLE_VERBOSE_STRINGS "disables verbose strings" OFF)
+mark_as_advanced(CURL_DISABLE_VERBOSE_STRINGS)
+
+# Corresponds to HTTP_ONLY in lib/curl_setup.h
+option(HTTP_ONLY "disables all protocols except HTTP (This overrides all CURL_DISABLE_* options)" OFF)
+mark_as_advanced(HTTP_ONLY)
+
 if(HTTP_ONLY)
   set(CURL_DISABLE_DICT ON)
   set(CURL_DISABLE_FILE ON)
@@ -211,18 +245,6 @@
   set(CURL_DISABLE_TFTP ON)
 endif()
 
-option(CURL_DISABLE_ALTSVC "to disable alt-svc support" OFF)
-mark_as_advanced(CURL_DISABLE_ALTSVC)
-option(CURL_DISABLE_HSTS "to disable HSTS support" OFF)
-mark_as_advanced(CURL_DISABLE_HSTS)
-option(CURL_DISABLE_COOKIES "to disable cookies support" OFF)
-mark_as_advanced(CURL_DISABLE_COOKIES)
-option(CURL_DISABLE_CRYPTO_AUTH "to disable cryptographic authentication" OFF)
-mark_as_advanced(CURL_DISABLE_CRYPTO_AUTH)
-option(CURL_DISABLE_NTLM "to disable NTLM support" OFF)
-mark_as_advanced(CURL_DISABLE_NTLM)
-option(CURL_DISABLE_VERBOSE_STRINGS "to disable verbose strings" OFF)
-mark_as_advanced(CURL_DISABLE_VERBOSE_STRINGS)
 option(ENABLE_IPV6 "Define if you want to enable IPv6 support" ON)
 mark_as_advanced(ENABLE_IPV6)
 if(ENABLE_IPV6 AND NOT WIN32)
@@ -237,6 +259,17 @@
     set(ENABLE_IPV6 OFF
         CACHE BOOL "Define if you want to enable IPv6 support" FORCE)
   endif()
+
+  if(CMAKE_SYSTEM_NAME STREQUAL "Darwin" AND NOT ENABLE_ARES)
+    set(use_core_foundation ON)
+
+    find_library(SYSTEMCONFIGURATION_FRAMEWORK "SystemConfiguration")
+    if(NOT SYSTEMCONFIGURATION_FRAMEWORK)
+      message(FATAL_ERROR "SystemConfiguration framework not found")
+    endif()
+
+    list(APPEND CURL_LIBS "-framework SystemConfiguration")
+  endif()
 endif()
 
 if(USE_MANUAL)
@@ -321,28 +354,29 @@
 
 # check SSL libraries
 # TODO support GnuTLS
+option(CURL_ENABLE_SSL "Enable SSL support" ON)
 if(CMAKE_USE_WINSSL)
   message(FATAL_ERROR "The cmake option CMAKE_USE_WINSSL was renamed to CMAKE_USE_SCHANNEL.")
 endif()
 
 if(APPLE)
-  option(CMAKE_USE_SECTRANSP "enable Apple OS native SSL/TLS" OFF)
+  cmake_dependent_option(CMAKE_USE_SECTRANSP "enable Apple OS native SSL/TLS" OFF CURL_ENABLE_SSL OFF)
 endif()
 if(WIN32)
-  option(CMAKE_USE_SCHANNEL "enable Windows native SSL/TLS" OFF)
+  cmake_dependent_option(CMAKE_USE_SCHANNEL "enable Windows native SSL/TLS" OFF CURL_ENABLE_SSL OFF)
   cmake_dependent_option(CURL_WINDOWS_SSPI "Use windows libraries to allow NTLM authentication without openssl" ON
     CMAKE_USE_SCHANNEL OFF)
 endif()
-option(CMAKE_USE_MBEDTLS "Enable mbedTLS for SSL/TLS" OFF)
-option(CMAKE_USE_BEARSSL "Enable BearSSL for SSL/TLS" OFF)
-option(CMAKE_USE_NSS "Enable NSS for SSL/TLS" OFF)
-option(CMAKE_USE_WOLFSSL "enable wolfSSL for SSL/TLS" OFF)
+cmake_dependent_option(CMAKE_USE_MBEDTLS "Enable mbedTLS for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
+cmake_dependent_option(CMAKE_USE_BEARSSL "Enable BearSSL for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
+cmake_dependent_option(CMAKE_USE_NSS "Enable NSS for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
+cmake_dependent_option(CMAKE_USE_WOLFSSL "enable wolfSSL for SSL/TLS" OFF CURL_ENABLE_SSL OFF)
 
 set(openssl_default ON)
 if(WIN32 OR CMAKE_USE_SECTRANSP OR CMAKE_USE_SCHANNEL OR CMAKE_USE_MBEDTLS OR CMAKE_USE_NSS OR CMAKE_USE_WOLFSSL)
   set(openssl_default OFF)
 endif()
-option(CMAKE_USE_OPENSSL "Use OpenSSL code. Experimental" ${openssl_default})
+cmake_dependent_option(CMAKE_USE_OPENSSL "Use OpenSSL code. Experimental" ${openssl_default} CURL_ENABLE_SSL OFF)
 option(CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG "Disable automatic loading of OpenSSL configuration" OFF)
 
 count_true(enabled_ssl_options_count
@@ -372,29 +406,26 @@
   message(FATAL_ERROR "The cmake option CMAKE_USE_DARWINSSL was renamed to CMAKE_USE_SECTRANSP.")
 endif()
 
-if(${CMAKE_SYSTEM_NAME} MATCHES "Darwin")
+if(CMAKE_USE_SECTRANSP)
+  set(use_core_foundation ON)
+
+  find_library(SECURITY_FRAMEWORK "Security")
+  if(NOT SECURITY_FRAMEWORK)
+     message(FATAL_ERROR "Security framework not found")
+  endif()
+
+  set(SSL_ENABLED ON)
+  set(USE_SECTRANSP ON)
+  list(APPEND CURL_LIBS "-framework Security")
+endif()
+
+if(use_core_foundation)
   find_library(COREFOUNDATION_FRAMEWORK "CoreFoundation")
   if(NOT COREFOUNDATION_FRAMEWORK)
       message(FATAL_ERROR "CoreFoundation framework not found")
   endif()
 
-  find_library(SYSTEMCONFIGURATION_FRAMEWORK "SystemConfiguration")
-  if(NOT SYSTEMCONFIGURATION_FRAMEWORK)
-     message(FATAL_ERROR "SystemConfiguration framework not found")
-  endif()
-
-  list(APPEND CURL_LIBS "-framework CoreFoundation" "-framework SystemConfiguration")
-
-  if(CMAKE_USE_SECTRANSP)
-    find_library(SECURITY_FRAMEWORK "Security")
-    if(NOT SECURITY_FRAMEWORK)
-       message(FATAL_ERROR "Security framework not found")
-    endif()
-
-    set(SSL_ENABLED ON)
-    set(USE_SECTRANSP ON)
-    list(APPEND CURL_LIBS "-framework Security")
-  endif()
+  list(APPEND CURL_LIBS "-framework CoreFoundation")
 endif()
 
 if(CMAKE_USE_OPENSSL)
@@ -423,6 +454,8 @@
   check_symbol_exists(RAND_status "${CURL_INCLUDES}" HAVE_RAND_STATUS)
   check_symbol_exists(RAND_screen "${CURL_INCLUDES}" HAVE_RAND_SCREEN)
   check_symbol_exists(RAND_egd    "${CURL_INCLUDES}" HAVE_RAND_EGD)
+
+  add_definitions(-DOPENSSL_SUPPRESS_DEPRECATED)
 endif()
 
 if(CMAKE_USE_MBEDTLS)
@@ -886,7 +919,6 @@
 # Check for header files
 if(NOT UNIX)
   check_include_file_concat("windows.h"      HAVE_WINDOWS_H)
-  check_include_file_concat("winsock.h"      HAVE_WINSOCK_H)
   check_include_file_concat("ws2tcpip.h"     HAVE_WS2TCPIP_H)
   check_include_file_concat("winsock2.h"     HAVE_WINSOCK2_H)
   check_include_file_concat("wincrypt.h"     HAVE_WINCRYPT_H)
@@ -1462,12 +1494,10 @@
 foreach(_lib ${CMAKE_C_IMPLICIT_LINK_LIBRARIES} ${CURL_LIBS})
   if(TARGET "${_lib}")
     set(_libname "${_lib}")
-    get_target_property(_libtype "${_libname}" TYPE)
-    if(_libtype STREQUAL INTERFACE_LIBRARY)
-      # Interface libraries can occur when an external project embeds curl and
-      # defined targets such as ZLIB::ZLIB by themselves. Ignore these as
-      # reading the LOCATION property will error out. Assume the user won't need
-      # this information in the .pc file.
+    get_target_property(_imported "${_libname}" IMPORTED)
+    if(NOT _imported)
+      # Reading the LOCATION property on non-imported target will error out.
+      # Assume the user won't need this information in the .pc file.
       continue()
     endif()
     get_target_property(_lib "${_libname}" LOCATION)
diff --git a/METADATA b/METADATA
index d23bce3..87fb8f1 100644
--- a/METADATA
+++ b/METADATA
@@ -7,16 +7,16 @@
   }
   url {
     type: ARCHIVE
-    value: "https://github.com/curl/curl/releases/download/curl-7_78_0/curl-7.78.0.tar.xz"
+    value: "https://github.com/curl/curl/releases/download/curl-7_80_0/curl-7.80.0.tar.xz"
   }
-  version: "curl-7_78_0"
+  version: "curl-7_80_0"
   license_type: NOTICE
-  last_upgrade_date {
-    year: 2021
-    month: 8
-    day: 10
-  }
   security {
     tag: "NVD-CPE2.3:cpe:/a:haxx:curl:7.78.0"
   }
+  last_upgrade_date {
+    year: 2021
+    month: 12
+    day: 7
+  }
 }
diff --git a/MacOSX-Framework b/MacOSX-Framework
index fdf51d6..3c84527 100755
--- a/MacOSX-Framework
+++ b/MacOSX-Framework
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/env bash
 #***************************************************************************
 #                                  _   _ ____  _
 #  Project                     ___| | | |  _ \| |
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -55,7 +55,7 @@
 if test -d "$DEVELOPER_PATH/Platforms/MacOSX.platform/Developer/SDKs"; then
  SDK_PATH="$DEVELOPER_PATH/Platforms/MacOSX.platform/Developer/SDKs"
 else
- SDK_PATH="$DEVELOPER_PATH/SDKs";
+ SDK_PATH="$DEVELOPER_PATH/SDKs"
 fi
 OLD_SDK=`ls  $SDK_PATH|head -1`
 NEW_SDK=`ls -r $SDK_PATH|head -1`
diff --git a/Makefile.am b/Makefile.am
index 16adc98..3e55230 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -248,6 +248,9 @@
 test-am:
 	@(cd tests; $(MAKE) all am-test)
 
+test-ci:
+	@(cd tests; $(MAKE) all ci-test)
+
 endif
 
 examples:
diff --git a/README b/README
index b690816..9705f41 100644
--- a/README
+++ b/README
@@ -40,7 +40,7 @@
 
     git clone https://github.com/curl/curl.git
 
-  (you'll get a directory named curl created, filled with the source code)
+  (you will get a directory named curl created, filled with the source code)
 
 SECURITY PROBLEMS
 
diff --git a/RELEASE-NOTES b/RELEASE-NOTES
index 1dc8181..2dcccb1 100644
--- a/RELEASE-NOTES
+++ b/RELEASE-NOTES
@@ -1,198 +1,139 @@
-curl and libcurl 7.78.0
+curl and libcurl 7.80.0
 
- Public curl releases:         201
- Command line options:         242
- curl_easy_setopt() options:   290
- Public functions in libcurl:  85
- Contributors:                 2459
+ Public curl releases:         204
+ Command line options:         243
+ curl_easy_setopt() options:   294
+ Public functions in libcurl:  86
+ Contributors:                 2533
 
 This release includes the following changes:
 
- o curl_url_set: reject spaces in URLs w/o CURLU_ALLOW_SPACE [118]
- o CURLE_SETOPT_OPTION_SYNTAX: new error name for wrong setopt syntax [40]
- o hostip: make 'localhost' return fixed values [16]
- o mbedtls: add support for cert and key blob options [11]
- o metalink: remove all support for it [54]
- o mqtt: add support for username and password [91]
+ o CURLOPT_MAXLIFETIME_CONN: maximum allowed lifetime for conn reuse [25]
+ o CURLOPT_PREREQFUNCTION: add new callback [17]
+ o libssh2: add SHA256 fingerprint support [4]
+ o urlapi: add curl_url_strerror() [21]
+ o urlapi: support UNC paths in file: URLs on Windows [20]
+ o wolfssl: allow setting of groups/curves [22]
 
 This release includes the following bugfixes:
 
- o --socks4[a]: clarify where the host name is resolved [107]
- o ares: always store IPv6 addresses first [20]
- o asyn-ares: remove check for 'data' in Curl_resolver_cancel [89]
- o bearssl: explicitly initialize all fields of Curl_ssl [1]
- o bearssl: remove incorrect const on variable that is modified [1]
- o build: fix compiler warnings when CURL_DISABLE_VERBOSE_STRINGS [155]
- o c-hyper: abort CONNECT response reading early on non 2xx responses [75]
- o c-hyper: add support for transfer-encoding in the request [121]
- o c-hyper: bail on too long response headers [115]
- o c-hyper: clear NTLM auth buffer when request is issued [23]
- o c-hyper: convert HYPERE_INVALID_PEER_MESSAGE to CURLE_UNSUPPORTED_PROTOCOL [21]
- o c-hyper: fix NTLM on closed connection tested with test159 [4]
- o c-hyper: fix the uploaded field in progress callbacks [78]
- o c-hyper: handle NULL from hyper_buf_copy() [19]
- o c-hyper: support CURLINFO_STARTTRANSFER_TIME [29]
- o c-hyper: support CURLOPT_HEADER [32]
- o ccsidcurl: fix the compile errors [27]
- o CI/cirrus: install impacket from PyPI instead of FreeBSD packages [166]
- o CI: add bearssl build [1]
- o CI: add Circle CI [92]
- o CI: add jobs using Zuul [86]
- o CI: delete --enable-hsts option (it is the default now) [2]
- o CI: remove travis details [144]
- o cleanup: spell DoH with a lowercase o [172]
- o cmake: add CURL_DISABLE_NTLM option [44]
- o cmake: avoid leaking absolute paths into exported config [3]
- o cmake: fix IoctlSocket FIONBIO check [156]
- o cmake: fix support for UnixSockets feature on Win32 [104]
- o cmake: remove libssh2 feature checks [122]
- o cmake: try well-known send/recv signature for Apple [12]
- o configure.ac: make non-executable [109]
- o configure/cmake: remove checks for many unused functions [95]
- o configure: add --disable-ntlm option [45]
- o configure: disable RTSP when hyper is selected [68]
- o configure: do not strip out debug flags [110]
- o configure: fix nghttp2 library name for static builds [157]
- o configure: inhibit the implicit-fallthrough warning on gcc-12 [106]
- o configure: rename get-easy-option configure option to get-easy-options [81]
- o conn_shutdown: if closed during CONNECT cleanup properly [59]
- o conncache: lowercase the hash key for better match [5]
- o cookies: track expiration in jar to optimize removals [25]
- o copyright: add boiler-plate headers to CI config files [143]
- o crustls: bump crustls version and use new URL [119]
- o curl.h: <sys/select.h> is supported by VxWorks7 [102]
- o curl.h: include sys/select.h for NuttX RTOS [100]
- o curl: ignore blank --output-dir [57]
- o curl_endian: remove the unused Curl_write64_le function [85]
- o curl_multibyte: Remove local encoding fallbacks [58]
- o Curl_ntlm_core_mk_nt_hash: fix OOM in error path [8]
- o Curl_ssl_getsessionid: fail if no session cache exists [14]
- o CURLOPT_WRITEFUNCTION.3: minor update of the example [80]
- o docs/BINDINGS: fix outdated links [116]
- o docs/examples: use curl_multi_poll() in multi examples [152]
- o docs/INSTALL: remove mentions of configure --with-darwin-ssl [55]
- o docs: document missing arguments to commands [160]
- o docs: fix inconsistencies in EGDSOCKET documentation [159]
- o docs: fix incorrect argument name reference [161]
- o docs: Fix typos [146]
- o docs: make docs for --etag-save match the program behaviour [169]
- o docs: use --max-redirs instead of --max-redir [28]
- o doh: (void)-prefix call to curl_easy_setopt
- o doh: fix wrong DEBUGASSERT for doh private_data [62]
- o easy: during upkeep, attach Curl_easy to connections in the cache [171]
- o examples/multi-single: fix scan-build warning [150]
- o examples: length-limit two sscanf() uses of %s [96]
- o examples: safer and more proper read callback logic [127]
- o filecheck: quietly remove test-place/*~ [39]
- o formdata: avoid "Argument cannot be negative" warning [131]
- o formdata: correct typecast in curl_mime_data call [137]
- o GHA: add a linux-hyper job [52]
- o GHA: add several libcurl tests to the hyper job
- o GHA: run the newly fixed tests with hyper [36]
- o github: timeout jobs on macOS after 90 minutes [42]
- o glob: pass an 'int' as len when using printf's %*s [139]
- o gnutls: set the preferred TLS versions in correct order [94]
- o GOVERNANCE: add 'user', 'committer' and 'contributor' [15]
- o hostip: (macOS) free returned memory of SCDynamicStoreCopyProxies [105]
- o hostip: bad CURLOPT_RESOLVE syntax now returns error [35]
- o hsts: ignore numberical IP address hosts [17]
- o HSTS: not experimental anymore
- o http2: clarify 'Using HTTP2' verbose message [63]
- o http2: init recvbuf struct for pushed streams [13]
- o http2_connisdead: handle trailing GOAWAY better [18]
- o http: fix crash in rate-limited upload [142]
- o http: make the haproxy support work with unix domain sockets [99]
- o http_proxy: deal with non-200 CONNECT response with Hyper [22]
- o hyper: propagate errors back up from read callbacks [113]
- o HYPER: remove mentions of deprecated development branch
- o idn: fix libidn2 with windows unicode builds [117]
- o infof: remove newline from format strings, always append it [149]
- o lib: don't compare fd to FD_SETSIZE when using poll [61]
- o lib: fix compiler warnings with CURL_DISABLE_NETRC [168]
- o lib: fix type of len passed to *printf's %*s [133]
- o lib: more %u for port and int for %*s fixes [132]
- o lib: use %u instead of %ld for port number printf [134]
- o libcurl-security.3: mention file descriptors and forks [108]
- o libssh2: limit time a disconnect can take to 1 second [111]
- o mbedtls: make mbedtls_strerror always work [6]
- o mbedtls: Remove unnecessary include [175]
- o mqtt: detect illegal and too large file size [43]
- o mqtt: extend the error message for no topic [136]
- o msnprintf: return number of printed characters excluding null byte [148]
- o multi: add scan-build-6 work-around in curl_multi_fdset [88]
- o multi: alter transfer timeout ordering [97]
- o multi: do not switch off connect_only flag when closing [98]
- o multi: fix crash in curl_multi_wait / curl_multi_poll [153]
- o netrc: skip 'macdef' definitions [87]
- o ngtcp2: disable TLSv1.3 compatible mode when using GnuTLS [83]
- o openssl: avoid static variable for seed flag [101]
- o openssl: don't remove session id entry in disassociate [56]
- o pinnedpubkey.d: fix formatting for version support lists [126]
- o proto.d: fix formatting for paragraphs after margin changes [125]
- o quiche: use send() instead of sendto() to avoid macOS issue [103]
- o Revert "c-hyper: handle body on HYPER_TASK_EMPTY" [26]
- o Revert "ftp: Expression 'ftpc->wait_data_conn' is always false" [147]
- o runtests: also find the last test in Makefile.inc [66]
- o runtests: enable 'hyper mode' only for HTTP tests [34]
- o runtests: init $VERSION to avoid warnings when using -l
- o runtests: parse data/Makefile.inc instead of using make [38]
- o runtests: skip disabled tests unless -f is used [82]
- o rustls: remove native_roots fallback [65]
- o schannel: set ALPN length correctly for HTTP/2 [24]
- o SChannel: Use '_tcsncmp()' instead [164]
- o sectransp: check for client certs by name first, then file [167]
- o setopt: fix incorrect comments [10]
- o socketpair: fix potential hangs [37]
- o socks4: scan for the IPv4 address in resolve results [124]
- o ssl: read pending close notify alert before closing the connection [9]
- o sws: malloc request struct instead of using stack [60]
- o telnet: fix option parser to not send uninitialized contents [170]
- o test1116: hyper doesn't pass through "surprise-trailers" [123]
- o test1147: hyper doesn't allow "crazy" request headers like built-in [114]
- o test1151: added missing CRLF to work with hyper [120]
- o test1216: adjusted for hyper mode [73]
- o test1218: adjusted for hyper mode [72]
- o test1230: adjust to work in hyper mode [74]
- o test1340/1341: adjusted for hyper mode [71]
- o test1438/1457: add HTTP keyword to make hyper mode work [70]
- o test1514: add a CRLF to the response to make it correct [130]
- o test1518: adjusted to work with hyper [129]
- o test1519: adjusted to work with hyper [128]
- o test1594/1595/1596: fix to work in hyper mode [69]
- o test269: disable for hyper [33]
- o test3010: work with hyper mode [67]
- o test328: avoid a header-looking body to make hyper mode work [53]
- o test339: CRLFify better to work in hyper mode [51]
- o test347: CRLFify to work in hyper mode [50]
- o test393: make Content-Length fit within 64 bit for hyper [49]
- o test394: hyper returns a different error [48]
- o test395: hyper cannot work around > 64 bit content-lengths like built-in [47]
- o test433: adjust for hyper mode [46]
- o test434: add HTTP keyword [76]
- o test500: adjust to work with hyper mode
- o test566: adjust to work with hyper mode [79]
- o test599: adjusted to work in hyper mode [77]
- o test644: remove as duplicate of test 587 [84]
- o tests: fix Accept-Encoding strips to work with Hyper builds [41]
- o TLS: prevent shutdown loops to get stuck [112]
- o tool: make _lseeki64() macro work with the PellesC compiler [163]
- o tool_help: document that --tlspassword takes a password [162]
- o tool_help: remove unused define [154]
- o url.c: remove two variable assigns that are never read [90]
- o url: (void)-prefix a curl_url_get() call [138]
- o url: bad CURLOPT_CONNECT_TO syntax now returns error [31]
- o version: turn version number functions into returning void [135]
- o vtls: exit addsessionid if no cache is inited [7]
- o vtls: fix connection reuse checks for issuer cert and case sensitivity [165]
- o vtls: only store TIMER_APPCONNECT for non-proxy connect [93]
- o vtls: use free() not curl_free() [140]
- o warnless: simplify type size handling [30]
- o Win32: fix build with Watt-32
- o winbuild/README: VC should be set to 6 'or larger' [64]
- o winbuild: support alternate nghttp2 static lib name [174]
- o wolfssl: failing to set a session id is not reason to error out [151]
- o write-out.d: clarify urlnum is not unique for de-globbed URLs [145]
- o zuul: use the new rustls directory name [141]
+ o .github: retry macos "brew install" command on failure [125]
+ o aws-sigv4: make signature work when post data is binary [68]
+ o BINDINGS: URL updates [30]
+ o build: remove checks for WinSock 1 [36]
+ o c-hyper: don't abort CONNECT responses early when auth-in-progress [71]
+ o c-hyper: make Curl_http propagate errors better [50]
+ o c-hyper: make CURLOPT_SUPPRESS_CONNECT_HEADERS work [97]
+ o c-hyper: make test 217 run [74]
+ o c-hyper: use hyper_request_set_uri_parts to make h2 better [39]
+ o checksrc: ignore preprocessor lines [64]
+ o CI/makefiles: introduce dedicated test target [34]
+ o ci: update Lift config to match requirements of curl build [1]
+ o cirrus: remove FreeBSD 11.4 from the matrix [62]
+ o cirrus: switch to openldap24-client [63]
+ o cleanup: constify unmodified static structs [2]
+ o cmake: add CURL_ENABLE_SSL option [46]
+ o cmake: fix error getting LOCATION property on non-imported target [59]
+ o CMake: restore support for SecureTransport on iOS [103]
+ o cmake: with OpenSSL, define OPENSSL_SUPPRESS_DEPRECATED [14]
+ o cmdline-opts: made the 'Added:' field mandatory [37]
+ o configure.ac: replace krb5-config with pkg-config [80]
+ o configure: when hyper is selected, deselect nghttp2 [94]
+ o connect: use sysaddr_un from sys/un.h or custom-defined for windows [23]
+ o curl-confopts.m4:  remove --enable/disable-hidden-symbols [70]
+ o curl-openssl.m4: modify library order for openssl linking [40]
+ o curl-openssl: pass argument to sed single-quoted [15]
+ o curl.1: remove mentions of really old version changes [38]
+ o curl: actually append "-" to --range without number only [57]
+ o curl: correct grammar in generated libcurl code [53]
+ o curl: print help descriptions in an aligned right column [16]
+ o curl_gssapi: fix link error on macOS Monterey [55]
+ o curl_multi_socket_action.3: add a "RETURN VALUE" section [106]
+ o curl_ntlm_core: use OpenSSL only if DES is available [42]
+ o Curl_updateconninfo: store addresses for QUIC connections too [90]
+ o CURLOPT_ALTSVC_CTRL.3: mention conn reuse is preferred [126]
+ o CURLOPT_HSTSWRITEFUNCTION.3: using CURLOPT_HSTS_CTRL is required [114]
+ o CURLOPT_HTTPHEADER.3: add descripion for specific headers [35]
+ o docs/HTTP3: improve build instructions [102]
+ o docs/Makefile.am: repair 'make html' [52]
+ o docs: fix typo in CURLOPT_TRAILERFUNCTION example [93]
+ o docs: provide "RETURN VALUE" section for more func manpages [105]
+ o docs: reduce use of "very" [107]
+ o doh: remove experimental code for DoH with GET [61]
+ o examples/htmltidy: correct wrong printf() use [66]
+ o examples/imap-append: fix end-of-data check [7]
+ o ftp: make the MKD retry to retry once per directory [113]
+ o gen.pl: insert the current date and version in generated man page [11]
+ o gen.pl: replace leading single quotes with \(aq [110]
+ o http2: make getsock not wait for write if there's no remote window [56]
+ o HTTP3: fix the HTTP/3 Explained book link [27]
+ o http: fix Basic auth with empty name field in URL [24]
+ o http: reject HTTP response codes < 100 [92]
+ o http: remove assert that breaks hyper [47]
+ o http: set content length earlier [67]
+ o http_proxy: make hyper CONNECT() return the correct error code [51]
+ o http_proxy: multiple CONNECT with hyper done better [78]
+ o hyper: disable test 1294 since hyper doesn't allow such crazy headers [96]
+ o hyper: does not support disabling CURLOPT_HTTP_TRANSFER_DECODING [72]
+ o hyper: pass the CONNECT line to the debug callback [79]
+ o imap: display quota information [115]
+ o INSTALL: update symbol hiding option [77]
+ o lib/mk-ca-bundle.pl: skip certs passed Not Valid After date [18]
+ o lib: avoid fallthrough cases in switch statements [33]
+ o libcurl.rc: switch out the copyright symbol for plain ASCII [5]
+ o libssh2: Get the version at runtime if possible [12]
+ o limit-rate.d: this is average over several seconds [119]
+ o llist: remove redundant code, branch will not be executed [10]
+ o Makefile.m32: fix to not require OpenSSL with -libssh2 or -rtmp options [100]
+ o maketgz: redirect updatemanpages.pl output to /dev/null
+ o man pages: require all to use the same section header order [101]
+ o manpage: adjust the asterisk in some SYNOPSIS sections [82]
+ o md5: fix compilation with OpenSSL 3.0 API [43]
+ o misc: fix a few issues on MidnightBSD [28]
+ o misc: fix typos in docs and comments [3]
+ o ngtcp2: advertise h3 as well as h3-29 [109]
+ o ngtcp2: compile with the latest nghttp3 [117]
+ o ngtcp2: specify the missing required callback functions [108]
+ o ngtcp2: use latest QUIC TLS RFC9001 [122]
+ o NTLM: use DES_set_key_unchecked with OpenSSL [13]
+ o openssl: if verifypeer is not requested, skip the CA loading [69]
+ o openssl: with OpenSSL 1.1.0+ a failed RAND_status means goaway [44]
+ o Revert "src/tool_filetime: disable -Wformat on mingw for this file" [88]
+ o sasl: binary messages [31]
+ o schannel: fix memory leak due to failed SSL connection [89]
+ o scripts/delta: count command line options in the new file
+ o sendf: accept zero-length data in Curl_client_write() [95]
+ o sha256: use high-level EVP interface for OpenSSL [41]
+ o smooth-gtk-thread.c: enhance the mutex lock use [112]
+ o sws: fix memory leak on exit [49]
+ o test1160: edited to work with hyper [83]
+ o test1173: make manpage-syntax.pl spot \n errors in examples
+ o test1185: verify checksrc [58]
+ o test1266/1267: disabled on hyper: no HTTP/0.9 support [99]
+ o test1287: make work on hyper [98]
+ o test207: accept a different error code for hyper [76]
+ o test262: don't attempt with hyper [73]
+ o test552: updated to work with hyper [87]
+ o test559: add 'HTTP' in keywords [86]
+ o tests/smbserver.py: fix compatibility with impacket 0.9.23+ [104]
+ o tests: add Schannel-specific tests and disable unsupported ones [91]
+ o tests: disable test 2043 [54]
+ o tests: kill some test servers afterwards to avoid locked logfiles [111]
+ o tests: use python3 in test 1451 [48]
+ o tls: remove newline from three infof() calls [85]
+ o tool_cb_prg: make resumed upload progress bar show better [9]
+ o tool_listhelp: easier generated with gen.pl [19]
+ o tool_main: fix typo in comment [29]
+ o tool_operate: a failed etag save now only fails that transfer [124]
+ o URL-SYNTAX: add IMAP UID SEARCH example [81]
+ o url: check the return value of curl_url() [75]
+ o url: set "k->size" -1 at start of request [60]
+ o urlapi: skip a strlen(), pass in zero [65]
+ o urlapi: URL decode percent-encoded host names [26]
+ o version_win32: use actual version instead of manifested version [45]
+ o vtls: Fix a memory leak if an SSL session cannot be added to the cache [8]
+ o wolfssl: use for SHA256, MD4, MD5, and setting DES odd parity [32]
+ o zuul: pin the quiche build to use an older cmake-rs [84]
 
 This release includes the following known bugs:
 
@@ -201,199 +142,146 @@
 This release would not have looked like this without help, code, reports and
 advice from friends like these:
 
-  Albin Vass, Aleksander Mazur, Alexis Vachette, Alex Xu, Andrea Pappacoda,
-  Andrei Rybak, Bachue Zhou, Bastian Krause, Bin Lan, Bin Meng,
-  Christian Weisgerber, Christoph M. Becker, civodul on github, Dan Fandrich,
-  Daniel Gustafsson, Daniel Stenberg, David Hu, dEajL3kA on github,
-  Dmitry Karpov, Dmitry Kostjuchenko, Douglas R. Reno, Ebe Janchivdorj,
-  Fawad Mirza, Francisco Munoz, Gabriel Simmer, Gealber Morales, Gergely Nagy,
-  Gerrit Renker, Gisle Vanem, Gregor Jasny, Gregory Muchka, Harry Sintonen,
-  Hugh Macdonald, Jacob Hoffman-Andrews, Jishan Shaikh, Joel Depooter,
-  Jonathan Wernberg, Jon Rumsey, Josh Soref, Josie Huddleston, Jun-ya Kato,
-  Kevin Burke, Laurent Dufresne, Li Xinwei, MAntoniak on github, Marcel Raad,
-  Marc Hörsken, Mark Swaanenburg, Martin Howarth, Max Zettlmeißl,
-  Michael Forney, Michael Kaufmann, Mohammed Naser, nian6324 on github,
-  Nikos Mavrogiannopoulos, Paul Groke, Peter Körner, Phil E. Taylor,
-  Pierre Yager, Randolf J, Ray Satiro, Red Hat Product Security,
-  Richard Marion, Richard Whitehouse, Sergey Markelov, Shikha Sharma,
-  shithappens2016 on github, sylgal on github, Timur Artikov, Tobias Nyholm,
-  Tommy Chiang, User Sg, Vadim Grinshpun, Valentín Gutiérrez, Viktor Szakats,
-  William Desportes, Wyatt OʼDay, Xiang Xiao, Yongkang Huang, Younes El-karama,
-  Zhang Xiuhua, Борис Верховский, Коваленко Анатолий Викторович,
-  (83 contributors)
+  8U61ife on github, a1346054 on github, Abhinav Singh, Alexander Chuykov,
+  Alexander Kanavin, Amaury Denoyelle, Anthony Hu, Axel Morawietz,
+  beslick5 on github, billionai on github, Bo Anderson, Boris Rasin,
+  Dan Fandrich, Daniel Gustafsson, Daniel Stenberg, David Cook, David Hu,
+  Earnestly on github, Eddie Lumpkin, Érico Nogueira, Erik Stenlund,
+  Gisle Vanem, Gleb Ivanovsky, Godwin Stewart, h1zzz on github, Harry Sintonen,
+  Hayden Roche, Jakub Zakrzewski, Jan Mazur, Jeffrey Tolar, Jerome Mao,
+  Joel Depooter, Jonathan Cardoso Machado, Josip Medved, Jun-ya Kato,
+  Kerem Kat, Kevin Burke, Kirill Efimov, Lucas Holt, Malik Idrees Hasan Khan,
+  Marcel Raad, Marc Hörsken, Mats Lindestam, Max Dymond, Michael Afanasiev,
+  Michael Baentsch, Michael Kaufmann, Momoka Yamamoto, Noam Moshe,
+  orycho on github, Patrick Monnerat, Rafał Mikrut, Randall S. Becker,
+  Raul Onitza-Klugman, Ray Satiro, Ricardo Martins, Rick Lane,
+  Rikard Falkeborn, Roger Young, Roy Li, ryancaicse on github, Ryan Mast,
+  Samuel Henrique, Sean Molenaar, Sergey Markelov, Sergio Durigan Junior,
+  sergio-nsk on github, Sharon Brizinov, Stathis Kapnidis,
+  Steini2000 on github, Tatsuhiro Tsujikawa, Thomas M. DuBuisson,
+  tlahn on github, Viktor Szakats, Vitaly Varyvdin, Wyatt O'Day,
+  x2018 on github, Борис Верховский,
+  (78 contributors)
 
 References to bug reports and discussions on issues:
 
- [1] = https://curl.se/bug/?i=7133
- [2] = https://curl.se/bug/?i=7167
- [3] = https://curl.se/bug/?i=7152
- [4] = https://curl.se/bug/?i=7154
- [5] = https://curl.se/bug/?i=7159
- [6] = https://curl.se/bug/?i=7162
- [7] = https://curl.se/bug/?i=7165
- [8] = https://curl.se/bug/?i=7164
- [9] = https://curl.se/bug/?i=7095
- [10] = https://curl.se/bug/?i=7157
- [11] = https://curl.se/bug/?i=7157
- [12] = https://curl.se/bug/?i=7158
- [13] = https://curl.se/bug/?i=7153
- [14] = https://curl.se/bug/?i=7148
- [15] = https://curl.se/bug/?i=7151
- [16] = https://curl.se/bug/?i=7039
- [17] = https://curl.se/bug/?i=7146
- [18] = https://curl.se/mail/lib-2021-06/0001.html
- [19] = https://curl.se/bug/?i=7143
- [20] = https://curl.se/mail/lib-2021-06/0003.html
- [21] = https://curl.se/bug/?i=7141
- [22] = https://curl.se/bug/?i=7141
- [23] = https://curl.se/bug/?i=7139
- [24] = https://curl.se/bug/?i=7138
- [25] = https://curl.se/bug/?i=7172
- [26] = https://curl.se/bug/?i=7122
- [27] = https://curl.se/bug/?i=7134
- [28] = https://curl.se/bug/?i=7130
- [29] = https://curl.se/bug/?i=7204
- [30] = https://curl.se/bug/?i=7181
- [31] = https://curl.se/bug/?i=7183
- [32] = https://curl.se/bug/?i=7204
- [33] = https://curl.se/bug/?i=7184
- [34] = https://curl.se/bug/?i=7185
- [35] = https://curl.se/bug/?i=7170
- [36] = https://curl.se/bug/?i=7205
- [37] = https://curl.se/bug/?i=7144
- [38] = https://curl.se/bug/?i=7177
- [39] = https://curl.se/bug/?i=7179
- [40] = https://curl.se/bug/?i=7175
- [41] = https://curl.se/bug/?i=7169
- [42] = https://curl.se/bug/?i=7173
- [43] = https://curl.se/bug/?i=7166
- [44] = https://curl.se/bug/?i=7028
- [45] = https://curl.se/bug/?i=7028
- [46] = https://curl.se/bug/?i=7205
- [47] = https://curl.se/bug/?i=7205
- [48] = https://curl.se/bug/?i=7205
- [49] = https://curl.se/bug/?i=7205
- [50] = https://curl.se/bug/?i=7205
- [51] = https://curl.se/bug/?i=7205
- [52] = https://curl.se/bug/?i=7206
- [53] = https://curl.se/bug/?i=7203
- [54] = https://curl.se/bug/?i=7176
- [55] = https://curl.se/mail/lib-2021-06/0008.html
- [56] = https://curl.se/bug/?i=7222
- [57] = https://curl.se/bug/?i=7218
- [58] = https://curl.se/bug/?i=7257
- [59] = https://curl.se/bug/?i=7236
- [60] = https://curl.se/mail/lib-2021-06/0018.html
- [61] = https://curl.se/bug/?i=7240
- [62] = https://curl.se/bug/?i=7227
- [63] = https://github.com/curl/curl/discussions/7255
- [64] = https://curl.se/bug/?i=7253
- [65] = https://curl.se/bug/?i=7250
- [66] = https://curl.se/bug/?i=7209
- [67] = https://curl.se/bug/?i=7209
- [68] = https://curl.se/bug/?i=7209
- [69] = https://curl.se/bug/?i=7209
- [70] = https://curl.se/bug/?i=7209
- [71] = https://curl.se/bug/?i=7209
- [72] = https://curl.se/bug/?i=7209
- [73] = https://curl.se/bug/?i=7209
- [74] = https://curl.se/bug/?i=7209
- [75] = https://curl.se/bug/?i=493
- [76] = https://curl.se/bug/?i=7209
- [77] = https://curl.se/bug/?i=7209
- [78] = https://curl.se/bug/?i=7209
- [79] = https://curl.se/bug/?i=7209
- [80] = https://curl.se/bug/?i=7219
- [81] = https://curl.se/bug/?i=7211
- [82] = https://curl.se/bug/?i=7212
- [83] = https://curl.se/bug/?i=6896
- [84] = https://curl.se/bug/?i=7208
- [85] = https://curl.se/bug/?i=7280
- [86] = https://curl.se/bug/?i=7245
- [87] = https://curl.se/bug/?i=7238
- [88] = https://curl.se/bug/?i=7248
- [89] = https://curl.se/bug/?i=7248
- [90] = https://curl.se/bug/?i=7248
- [91] = https://curl.se/bug/?i=7243
- [92] = https://curl.se/bug/?i=7239
- [93] = https://curl.se/bug/?i=7274
- [94] = https://curl.se/bug/?i=7277
- [95] = https://curl.se/bug/?i=7276
- [96] = https://curl.se/bug/?i=7293
- [97] = https://curl.se/bug/?i=7178
- [98] = https://curl.se/mail/lib-2021-06/0024.html
- [99] = https://curl.se/bug/?i=7290
- [100] = https://curl.se/bug/?i=7287
- [101] = https://curl.se/bug/?i=7296
- [102] = https://curl.se/bug/?i=7285
- [103] = https://curl.se/bug/?i=7260
- [104] = https://curl.se/bug/?i=7034
- [105] = https://curl.se/bug/?i=7265
- [106] = https://curl.se/bug/?i=7295
- [107] = https://curl.se/bug/?i=7273
- [108] = https://curl.se/bug/?i=7270
- [109] = https://curl.se/bug/?i=7272
- [110] = https://curl.se/bug/?i=7216
- [111] = https://curl.se/bug/?i=7271
- [112] = https://curl.se/bug/?i=7271
- [113] = https://curl.se/bug/?i=7266
- [114] = https://curl.se/bug/?i=7349
- [115] = https://curl.se/bug/?i=7350
- [116] = https://curl.se/bug/?i=7301
- [117] = https://curl.se/bug/?i=7228
- [118] = https://curl.se/bug/?i=7073
- [119] = https://curl.se/bug/?i=7297
- [120] = https://curl.se/bug/?i=7350
- [121] = https://curl.se/bug/?i=7348
- [122] = https://curl.se/bug/?i=7343
- [123] = https://curl.se/bug/?i=7344
- [124] = https://curl.se/bug/?i=7345
- [125] = https://curl.se/bug/?i=7341
- [126] = https://curl.se/bug/?i=7340
- [127] = https://curl.se/bug/?i=7330
- [128] = https://curl.se/bug/?i=7333
- [129] = https://curl.se/bug/?i=7333
- [130] = https://curl.se/bug/?i=7334
- [131] = https://curl.se/bug/?i=7328
- [132] = https://curl.se/bug/?i=7329
- [133] = https://curl.se/bug/?i=7326
- [134] = https://curl.se/bug/?i=7325
- [135] = https://curl.se/bug/?i=7319
- [136] = https://curl.se/bug/?i=7316
- [137] = https://curl.se/bug/?i=7327
- [138] = https://curl.se/bug/?i=7320
- [139] = https://curl.se/bug/?i=7324
- [140] = https://curl.se/bug/?i=7318
- [141] = https://curl.se/bug/?i=7311
- [142] = https://curl.se/bug/?i=7308
- [143] = https://curl.se/bug/?i=7314
- [144] = https://curl.se/bug/?i=7313
- [145] = https://curl.se/bug/?i=7342
- [146] = https://curl.se/bug/?i=7370
- [147] = https://curl.se/mail/lib-2021-07/0025.html
- [148] = https://curl.se/bug/?i=7361
- [149] = https://curl.se/bug/?i=7357
- [150] = https://curl.se/bug/?i=7360
- [151] = https://curl.se/bug/?i=7358
- [152] = https://curl.se/bug/?i=7352
- [153] = https://curl.se/bug/?i=7379
- [154] = https://curl.se/bug/?i=7380
- [155] = https://curl.se/bug/?i=7377
- [156] = https://curl.se/bug/?i=7375
- [157] = https://curl.se/bug/?i=7367
- [159] = https://curl.se/bug/?i=7391
- [160] = https://curl.se/bug/?i=7382
- [161] = https://curl.se/bug/?i=7383
- [162] = https://curl.se/bug/?i=7378
- [163] = https://curl.se/bug/?i=7397
- [164] = https://curl.se/bug/?i=7398
- [165] = https://curl.se/docs/CVE-2021-22924.html
- [166] = https://curl.se/bug/?i=7418
- [167] = https://curl.se/docs/CVE-2021-22926.html
- [168] = https://curl.se/bug/?i=7423
- [169] = https://curl.se/bug/?i=7429
- [170] = https://curl.se/docs/CVE-2021-22925.html
- [171] = https://curl.se/bug/?i=7386
- [172] = https://curl.se/bug/?i=7413
- [174] = https://curl.se/bug/?i=7446
- [175] = https://curl.se/bug/?i=7419
+ [1] = https://curl.se/bug/?i=7761
+ [2] = https://curl.se/bug/?i=7759
+ [3] = https://curl.se/bug/?i=7747
+ [4] = https://curl.se/bug/?i=7646
+ [5] = https://curl.se/bug/?i=7765
+ [7] = https://curl.se/bug/?i=7774
+ [8] = https://curl.se/bug/?i=7683
+ [9] = https://curl.se/bug/?i=7760
+ [10] = https://curl.se/bug/?i=7770
+ [11] = https://curl.se/bug/?i=7782
+ [12] = https://curl.se/bug/?i=7768
+ [13] = https://curl.se/bug/?i=7779
+ [14] = https://curl.se/bug/?i=7767
+ [15] = https://curl.se/bug/?i=7758
+ [16] = https://curl.se/bug/?i=7792
+ [17] = https://curl.se/bug/?i=7477
+ [18] = https://curl.se/bug/?i=7801
+ [19] = https://curl.se/bug/?i=7787
+ [20] = https://curl.se/bug/?i=7366
+ [21] = https://curl.se/bug/?i=7605
+ [22] = https://curl.se/bug/?i=7728
+ [23] = https://curl.se/bug/?i=7737
+ [24] = https://curl.se/bug/?i=7819
+ [25] = https://curl.se/mail/lib-2021-09/0058.html
+ [26] = https://curl.se/bug/?i=7830
+ [27] = https://curl.se/bug/?i=7813
+ [28] = https://curl.se/bug/?i=7812
+ [29] = https://curl.se/bug/?i=7811
+ [30] = https://curl.se/bug/?i=7809
+ [31] = https://curl.se/bug/?i=6930
+ [32] = https://curl.se/bug/?i=7806
+ [33] = https://curl.se/bug/?i=7322
+ [34] = https://curl.se/bug/?i=7785
+ [35] = https://curl.se/bug/?i=7829
+ [36] = https://curl.se/bug/?i=7778
+ [37] = https://curl.se/bug/?i=7786
+ [38] = https://curl.se/bug/?i=7786
+ [39] = https://curl.se/bug/?i=7679
+ [40] = https://curl.se/bug/?i=7826
+ [41] = https://curl.se/bug/?i=7808
+ [42] = https://curl.se/bug/?i=7808
+ [43] = https://curl.se/bug/?i=7808
+ [44] = https://curl.se/bug/?i=7840
+ [45] = https://curl.se/bug/?i=7742
+ [46] = https://curl.se/bug/?i=7822
+ [47] = https://curl.se/bug/?i=7852
+ [48] = https://curl.se/bug/?i=7899
+ [49] = https://curl.se/bug/?i=7849
+ [50] = https://curl.se/bug/?i=7851
+ [51] = https://curl.se/bug/?i=7825
+ [52] = https://curl.se/bug/?i=7853
+ [53] = https://curl.se/bug/?i=7802
+ [54] = https://curl.se/bug/?i=7845
+ [55] = https://curl.se/bug/?i=7657
+ [56] = https://curl.se/bug/?i=7821
+ [57] = https://curl.se/bug/?i=7837
+ [58] = https://curl.se/bug/?i=7866
+ [59] = https://curl.se/bug/?i=7885
+ [60] = https://curl.se/bug/?i=7871
+ [61] = https://curl.se/bug/?i=7870
+ [62] = https://curl.se/bug/?i=7869
+ [63] = https://curl.se/bug/?i=7868
+ [64] = https://curl.se/bug/?i=7863
+ [65] = https://curl.se/bug/?i=7862
+ [66] = https://curl.se/bug/?i=7860
+ [67] = https://github.com/curl/curl/commit/8a16e54#r57374914
+ [68] = https://curl.se/bug/?i=7844
+ [69] = https://curl.se/bug/?i=7892
+ [70] = https://curl.se/bug/?i=7891
+ [71] = https://curl.se/bug/?i=7889
+ [72] = https://curl.se/bug/?i=7889
+ [73] = https://curl.se/bug/?i=7889
+ [74] = https://curl.se/bug/?i=7889
+ [75] = https://curl.se/bug/?i=7917
+ [76] = https://curl.se/bug/?i=7889
+ [77] = https://curl.se/bug/?i=7890
+ [78] = https://curl.se/bug/?i=7888
+ [79] = https://curl.se/bug/?i=7887
+ [80] = https://curl.se/bug/?i=7916
+ [81] = https://github.com/curl/curl/issues/7626
+ [82] = https://curl.se/bug/?i=7884
+ [83] = https://curl.se/bug/?i=7912
+ [84] = https://curl.se/bug/?i=7927
+ [85] = https://curl.se/bug/?i=7879
+ [86] = https://curl.se/bug/?i=7911
+ [87] = https://curl.se/bug/?i=7911
+ [88] = https://curl.se/bug/?i=7941
+ [89] = https://curl.se/bug/?i=7877
+ [90] = https://curl.se/bug/?i=7939
+ [91] = https://curl.se/bug/?i=7968
+ [92] = https://curl.se/bug/?i=7909
+ [93] = https://curl.se/bug/?i=7910
+ [94] = https://curl.se/bug/?i=7908
+ [95] = https://curl.se/bug/?i=7898
+ [96] = https://curl.se/bug/?i=7905
+ [97] = https://curl.se/bug/?i=7905
+ [98] = https://curl.se/bug/?i=7905
+ [99] = https://curl.se/bug/?i=7905
+ [100] = https://curl.se/bug/?i=7895
+ [101] = https://curl.se/bug/?i=7904
+ [102] = https://curl.se/bug/?i=7842
+ [103] = https://curl.se/bug/?i=7501
+ [104] = https://curl.se/bug/?i=7924
+ [105] = https://curl.se/bug/?i=7902
+ [106] = https://curl.se/bug/?i=7901
+ [107] = https://curl.se/bug/?i=7936
+ [108] = https://curl.se/bug/?i=7929
+ [109] = https://curl.se/bug/?i=7979
+ [110] = https://curl.se/bug/?i=7933
+ [111] = https://curl.se/bug/?i=7925
+ [112] = https://curl.se/bug/?i=7926
+ [113] = https://curl.se/bug/?i=7967
+ [114] = https://curl.se/bug/?i=7923
+ [115] = https://curl.se/bug/?i=6973
+ [117] = https://curl.se/bug/?i=7978
+ [119] = https://curl.se/bug/?i=7970
+ [122] = https://curl.se/bug/?i=7960
+ [124] = https://curl.se/bug/?i=7945
+ [125] = https://curl.se/bug/?i=7955
+ [126] = https://curl.se/bug/?i=7957
diff --git a/acinclude.m4 b/acinclude.m4
index 23c06d6..feb9e81 100644
--- a/acinclude.m4
+++ b/acinclude.m4
@@ -235,43 +235,6 @@
 ])
 
 
-dnl CURL_CHECK_HEADER_WINSOCK
-dnl -------------------------------------------------
-dnl Check for compilable and valid winsock.h header
-
-AC_DEFUN([CURL_CHECK_HEADER_WINSOCK], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINDOWS])dnl
-  AC_CACHE_CHECK([for winsock.h], [curl_cv_header_winsock_h], [
-    AC_COMPILE_IFELSE([
-      AC_LANG_PROGRAM([[
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-      ]],[[
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-      ]])
-    ],[
-      curl_cv_header_winsock_h="yes"
-    ],[
-      curl_cv_header_winsock_h="no"
-    ])
-  ])
-  case "$curl_cv_header_winsock_h" in
-    yes)
-      AC_DEFINE_UNQUOTED(HAVE_WINSOCK_H, 1,
-        [Define to 1 if you have the winsock.h header file.])
-      ;;
-  esac
-])
-
-
 dnl CURL_CHECK_HEADER_WINSOCK2
 dnl -------------------------------------------------
 dnl Check for compilable and valid winsock2.h header
@@ -1043,7 +1006,6 @@
 dnl return value in RECV_TYPE_RETV.
 
 AC_DEFUN([CURL_CHECK_FUNC_RECV], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
   AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
   AC_CHECK_HEADERS(sys/types.h sys/socket.h)
   #
@@ -1058,10 +1020,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_PROTO_BSDSOCKET_H
@@ -1106,10 +1064,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #define RECVCALLCONV PASCAL
 #else
@@ -1187,7 +1141,6 @@
 dnl type qualifier of second argument in SEND_QUAL_ARG2.
 
 AC_DEFUN([CURL_CHECK_FUNC_SEND], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
   AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
   AC_CHECK_HEADERS(sys/types.h sys/socket.h)
   #
@@ -1202,10 +1155,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_PROTO_BSDSOCKET_H
@@ -1250,10 +1199,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #define SENDCALLCONV PASCAL
 #else
@@ -1368,10 +1313,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_PROTO_BSDSOCKET_H
@@ -1408,7 +1349,6 @@
 dnl Check for timeval struct
 
 AC_DEFUN([CURL_CHECK_STRUCT_TIMEVAL], [
-  AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK])dnl
   AC_REQUIRE([CURL_CHECK_HEADER_WINSOCK2])dnl
   AC_CHECK_HEADERS(sys/types.h sys/time.h sys/socket.h)
   AC_CACHE_CHECK([for struct timeval], [curl_cv_struct_timeval], [
@@ -1422,10 +1362,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #endif
 #ifdef HAVE_SYS_TYPES_H
@@ -1458,50 +1394,6 @@
 ])
 
 
-dnl TYPE_SIG_ATOMIC_T
-dnl -------------------------------------------------
-dnl Check if the sig_atomic_t type is available, and
-dnl verify if it is already defined as volatile.
-
-AC_DEFUN([TYPE_SIG_ATOMIC_T], [
-  AC_CHECK_HEADERS(signal.h)
-  AC_CHECK_TYPE([sig_atomic_t],[
-    AC_DEFINE(HAVE_SIG_ATOMIC_T, 1,
-      [Define to 1 if sig_atomic_t is an available typedef.])
-  ], ,[
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-  ])
-  case "$ac_cv_type_sig_atomic_t" in
-    yes)
-      #
-      AC_MSG_CHECKING([if sig_atomic_t is already defined as volatile])
-      AC_LINK_IFELSE([
-        AC_LANG_PROGRAM([[
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-        ]],[[
-          static volatile sig_atomic_t dummy = 0;
-        ]])
-      ],[
-        AC_MSG_RESULT([no])
-        curl_cv_sig_atomic_t_volatile="no"
-      ],[
-        AC_MSG_RESULT([yes])
-        curl_cv_sig_atomic_t_volatile="yes"
-      ])
-      #
-      if test "$curl_cv_sig_atomic_t_volatile" = "yes"; then
-        AC_DEFINE(HAVE_SIG_ATOMIC_T_VOLATILE, 1,
-          [Define to 1 if sig_atomic_t is already defined as volatile.])
-      fi
-      ;;
-  esac
-])
-
-
 dnl TYPE_IN_ADDR_T
 dnl -------------------------------------------------
 dnl Check for in_addr_t: it is used to receive the return code of inet_addr()
@@ -1525,10 +1417,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_SYS_TYPES_H
@@ -1571,10 +1459,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_SYS_TYPES_H
@@ -1867,10 +1751,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #endif
 #ifdef HAVE_SYS_TYPES_H
@@ -1925,10 +1805,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #define SELECTCALLCONV PASCAL
 #endif
@@ -2151,8 +2027,8 @@
 dnl /etc/ssl/certs/ca-certificates.crt Debian systems
 dnl /etc/pki/tls/certs/ca-bundle.crt Redhat and Mandriva
 dnl /usr/share/ssl/certs/ca-bundle.crt old(er) Redhat
-dnl /usr/local/share/certs/ca-root-nss.crt FreeBSD
-dnl /etc/ssl/cert.pem OpenBSD, FreeBSD (symlink)
+dnl /usr/local/share/certs/ca-root-nss.crt FreeBSD, MidnightBSD
+dnl /etc/ssl/cert.pem OpenBSD, FreeBSD, MidnightBSD (symlink)
 dnl /etc/ssl/certs/ (ca path) SUSE
 
 AC_DEFUN([CURL_CHECK_CA_BUNDLE], [
diff --git a/aclocal.m4 b/aclocal.m4
index bd780cc..09539ed 100644
--- a/aclocal.m4
+++ b/aclocal.m4
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.16.3 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.5 -*- Autoconf -*-
 
-# Copyright (C) 1996-2020 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -14,13 +14,13 @@
 m4_ifndef([AC_CONFIG_MACRO_DIRS], [m4_defun([_AM_CONFIG_MACRO_DIRS], [])m4_defun([AC_CONFIG_MACRO_DIRS], [_AM_CONFIG_MACRO_DIRS($@)])])
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
-m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.69],,
-[m4_warning([this file was generated for autoconf 2.69.
+m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.71],,
+[m4_warning([this file was generated for autoconf 2.71.
 You have another version of autoconf.  It may work, but is not guaranteed to.
 If you have problems, you may need to regenerate the build system entirely.
 To do so, use the procedure documented by the package, typically 'autoreconf'.])])
 
-# Copyright (C) 2002-2020 Free Software Foundation, Inc.
+# Copyright (C) 2002-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -35,7 +35,7 @@
 [am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.16.3], [],
+m4_if([$1], [1.16.5], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -51,14 +51,14 @@
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.16.3])dnl
+[AM_AUTOMAKE_VERSION([1.16.5])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2020 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -110,7 +110,7 @@
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2020 Free Software Foundation, Inc.
+# Copyright (C) 1997-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -141,7 +141,7 @@
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2020 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -332,7 +332,7 @@
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2020 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -400,7 +400,7 @@
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2020 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -428,6 +428,10 @@
 # release and drop the old call support.
 AC_DEFUN([AM_INIT_AUTOMAKE],
 [AC_PREREQ([2.65])dnl
+m4_ifdef([_$0_ALREADY_INIT],
+  [m4_fatal([$0 expanded multiple times
+]m4_defn([_$0_ALREADY_INIT]))],
+  [m4_define([_$0_ALREADY_INIT], m4_expansion_stack)])dnl
 dnl Autoconf wants to disallow AM_ names.  We explicitly allow
 dnl the ones we care about.
 m4_pattern_allow([^AM_[A-Z]+FLAGS$])dnl
@@ -464,7 +468,7 @@
 [_AM_SET_OPTIONS([$1])dnl
 dnl Diagnose old-style AC_INIT with new-style AM_AUTOMAKE_INIT.
 m4_if(
-  m4_ifdef([AC_PACKAGE_NAME], [ok]):m4_ifdef([AC_PACKAGE_VERSION], [ok]),
+  m4_ifset([AC_PACKAGE_NAME], [ok]):m4_ifset([AC_PACKAGE_VERSION], [ok]),
   [ok:ok],,
   [m4_fatal([AC_INIT should be called with package and version arguments])])dnl
  AC_SUBST([PACKAGE], ['AC_PACKAGE_TARNAME'])dnl
@@ -516,6 +520,20 @@
 		  [m4_define([AC_PROG_OBJCXX],
 			     m4_defn([AC_PROG_OBJCXX])[_AM_DEPENDENCIES([OBJCXX])])])dnl
 ])
+# Variables for tags utilities; see am/tags.am
+if test -z "$CTAGS"; then
+  CTAGS=ctags
+fi
+AC_SUBST([CTAGS])
+if test -z "$ETAGS"; then
+  ETAGS=etags
+fi
+AC_SUBST([ETAGS])
+if test -z "$CSCOPE"; then
+  CSCOPE=cscope
+fi
+AC_SUBST([CSCOPE])
+
 AC_REQUIRE([AM_SILENT_RULES])dnl
 dnl The testsuite driver may need to know about EXEEXT, so add the
 dnl 'am__EXEEXT' conditional if _AM_COMPILER_EXEEXT was seen.  This
@@ -597,7 +615,7 @@
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2020 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -618,7 +636,7 @@
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2020 Free Software Foundation, Inc.
+# Copyright (C) 2003-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -640,7 +658,7 @@
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2020 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -675,7 +693,7 @@
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2020 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -718,7 +736,7 @@
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2020 Free Software Foundation, Inc.
+# Copyright (C) 1997-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -752,7 +770,7 @@
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2020 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -781,7 +799,7 @@
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2020 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -828,7 +846,7 @@
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2020 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -847,7 +865,7 @@
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2020 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -928,7 +946,7 @@
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2020 Free Software Foundation, Inc.
+# Copyright (C) 2009-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -988,7 +1006,7 @@
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2020 Free Software Foundation, Inc.
+# Copyright (C) 2001-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1016,7 +1034,7 @@
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2020 Free Software Foundation, Inc.
+# Copyright (C) 2006-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1035,7 +1053,7 @@
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2020 Free Software Foundation, Inc.
+# Copyright (C) 2004-2021 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
diff --git a/buildconf.bat b/buildconf.bat
index 13ae07e..475736e 100644
--- a/buildconf.bat
+++ b/buildconf.bat
@@ -1,317 +1,317 @@
-@echo off
-rem ***************************************************************************
-rem *                                  _   _ ____  _
-rem *  Project                     ___| | | |  _ \| |
-rem *                             / __| | | | |_) | |
-rem *                            | (__| |_| |  _ <| |___
-rem *                             \___|\___/|_| \_\_____|
-rem *
-rem * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
-rem *
-rem * This software is licensed as described in the file COPYING, which
-rem * you should have received as part of this distribution. The terms
-rem * are also available at https://curl.se/docs/copyright.html.
-rem *
-rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-rem * copies of the Software, and permit persons to whom the Software is
-rem * furnished to do so, under the terms of the COPYING file.
-rem *
-rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-rem * KIND, either express or implied.
-rem *
-rem ***************************************************************************
-
-rem NOTES
-rem
-rem This batch file must be used to set up a git tree to build on systems where
-rem there is no autotools support (i.e. DOS and Windows).
-rem
-
-:begin
-  rem Set our variables
-  if "%OS%" == "Windows_NT" setlocal
-  set MODE=GENERATE
-
-  rem Switch to this batch file's directory
-  cd /d "%~0\.." 1>NUL 2>&1
-
-  rem Check we are running from a curl git repository
-  if not exist GIT-INFO goto norepo
-
-  rem Detect programs. HAVE_<PROGNAME>
-  rem When not found the variable is set undefined. The undefined pattern
-  rem allows for statements like "if not defined HAVE_PERL (command)"
-  groff --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_GROFF=) else (set HAVE_GROFF=Y)
-  nroff --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_NROFF=) else (set HAVE_NROFF=Y)
-  perl --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_PERL=) else (set HAVE_PERL=Y)
-  gzip --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (set HAVE_GZIP=) else (set HAVE_GZIP=Y)
-
-:parseArgs
-  if "%~1" == "" goto start
-
-  if /i "%~1" == "-clean" (
-    set MODE=CLEAN
-  ) else if /i "%~1" == "-?" (
-    goto syntax
-  ) else if /i "%~1" == "-h" (
-    goto syntax
-  ) else if /i "%~1" == "-help" (
-    goto syntax
-  ) else (
-    goto unknown
-  )
-
-  shift & goto parseArgs
-
-:start
-  if "%MODE%" == "GENERATE" (
-    echo.
-    echo Generating prerequisite files
-
-    call :generate
-    if errorlevel 3 goto nogenhugehelp
-    if errorlevel 2 goto nogenmakefile
-    if errorlevel 1 goto warning
-
-  ) else (
-    echo.
-    echo Removing prerequisite files
-
-    call :clean
-    if errorlevel 2 goto nocleanhugehelp
-    if errorlevel 1 goto nocleanmakefile
-  )
-
-  goto success
-
-rem Main generate function.
-rem
-rem Returns:
-rem
-rem 0 - success
-rem 1 - success with simplified tool_hugehelp.c
-rem 2 - failed to generate Makefile
-rem 3 - failed to generate tool_hugehelp.c
-rem
-:generate
-  if "%OS%" == "Windows_NT" setlocal
-  set BASIC_HUGEHELP=0
-
-  rem Create Makefile
-  echo * %CD%\Makefile
-  if exist Makefile.dist (
-    copy /Y Makefile.dist Makefile 1>NUL 2>&1
-    if errorlevel 1 (
-      if "%OS%" == "Windows_NT" endlocal
-      exit /B 2
-    )
-  )
-
-  rem Create tool_hugehelp.c
-  echo * %CD%\src\tool_hugehelp.c
-  call :genHugeHelp
-  if errorlevel 2 (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 3
-  )
-  if errorlevel 1 (
-    set BASIC_HUGEHELP=1
-  )
-  cmd /c exit 0
-
-  rem Setup c-ares git tree
-  if exist ares\buildconf.bat (
-    echo.
-    echo Configuring c-ares build environment
-    cd ares
-    call buildconf.bat
-    cd ..
-  )
-
-  if "%BASIC_HUGEHELP%" == "1" (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 1
-  )
-
-  if "%OS%" == "Windows_NT" endlocal
-  exit /B 0
-
-rem Main clean function.
-rem
-rem Returns:
-rem
-rem 0 - success
-rem 1 - failed to clean Makefile
-rem 2 - failed to clean tool_hugehelp.c
-rem
-:clean
-  rem Remove Makefile
-  echo * %CD%\Makefile
-  if exist Makefile (
-    del Makefile 2>NUL
-    if exist Makefile (
-      exit /B 1
-    )
-  )
-
-  rem Remove tool_hugehelp.c
-  echo * %CD%\src\tool_hugehelp.c
-  if exist src\tool_hugehelp.c (
-    del src\tool_hugehelp.c 2>NUL
-    if exist src\tool_hugehelp.c (
-      exit /B 2
-    )
-  )
-
-  exit /B
-
-rem Function to generate src\tool_hugehelp.c
-rem
-rem Returns:
-rem
-rem 0 - full tool_hugehelp.c generated
-rem 1 - simplified tool_hugehelp.c
-rem 2 - failure
-rem
-:genHugeHelp
-  if "%OS%" == "Windows_NT" setlocal
-  set LC_ALL=C
-  set ROFFCMD=
-  set BASIC=1
-
-  if defined HAVE_PERL (
-    if defined HAVE_GROFF (
-      set ROFFCMD=groff -mtty-char -Tascii -P-c -man
-    ) else if defined HAVE_NROFF (
-      set ROFFCMD=nroff -c -Tascii -man
-    )
-  )
-
-  if defined ROFFCMD (
-    echo #include "tool_setup.h"> src\tool_hugehelp.c
-    echo #include "tool_hugehelp.h">> src\tool_hugehelp.c
-
-    if defined HAVE_GZIP (
-      echo #ifndef HAVE_LIBZ>> src\tool_hugehelp.c
-    )
-
-    %ROFFCMD% docs\curl.1 2>NUL | perl src\mkhelp.pl docs\MANUAL >> src\tool_hugehelp.c
-    if defined HAVE_GZIP (
-      echo #else>> src\tool_hugehelp.c
-      %ROFFCMD% docs\curl.1 2>NUL | perl src\mkhelp.pl -c docs\MANUAL >> src\tool_hugehelp.c
-      echo #endif /^* HAVE_LIBZ ^*/>> src\tool_hugehelp.c
-    )
-
-    set BASIC=0
-  ) else (
-    if exist src\tool_hugehelp.c.cvs (
-      copy /Y src\tool_hugehelp.c.cvs src\tool_hugehelp.c 1>NUL 2>&1
-    ) else (
-      echo #include "tool_setup.h"> src\tool_hugehelp.c
-      echo #include "tool_hugehelp.h">> src\tool_hugehelp.c
-      echo.>> src\tool_hugehelp.c
-      echo void hugehelp(void^)>> src\tool_hugehelp.c
-      echo {>> src\tool_hugehelp.c
-      echo #ifdef USE_MANUAL>> src\tool_hugehelp.c
-      echo   fputs("Built-in manual not included\n", stdout^);>> src\tool_hugehelp.c
-      echo #endif>> src\tool_hugehelp.c
-      echo }>> src\tool_hugehelp.c
-    )
-  )
-
-  findstr "/C:void hugehelp(void)" src\tool_hugehelp.c 1>NUL 2>&1
-  if errorlevel 1 (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 2
-  )
-
-  if "%BASIC%" == "1" (
-    if "%OS%" == "Windows_NT" endlocal
-    exit /B 1
-  )
-
-  if "%OS%" == "Windows_NT" endlocal
-  exit /B 0
-
-rem Function to clean-up local variables under DOS, Windows 3.x and
-rem Windows 9x as setlocal isn't available until Windows NT
-rem
-:dosCleanup
-  set MODE=
-  set HAVE_GROFF=
-  set HAVE_NROFF=
-  set HAVE_PERL=
-  set HAVE_GZIP=
-  set BASIC_HUGEHELP=
-  set LC_ALL
-  set ROFFCMD=
-  set BASIC=
-
-  exit /B
-
-:syntax
-  rem Display the help
-  echo.
-  echo Usage: buildconf [-clean]
-  echo.
-  echo -clean    - Removes the files
-  goto error
-
-:unknown
-  echo.
-  echo Error: Unknown argument '%1'
-  goto error
-
-:norepo
-  echo.
-  echo Error: This batch file should only be used with a curl git repository
-  goto error
-
-:nogenmakefile
-  echo.
-  echo Error: Unable to generate Makefile
-  goto error
-
-:nogenhugehelp
-  echo.
-  echo Error: Unable to generate src\tool_hugehelp.c
-  goto error
-
-:nocleanmakefile
-  echo.
-  echo Error: Unable to clean Makefile
-  goto error
-
-:nocleanhugehelp
-  echo.
-  echo Error: Unable to clean src\tool_hugehelp.c
-  goto error
-
-:warning
-  echo.
-  echo Warning: The curl manual could not be integrated in the source. This means when
-  echo you build curl the manual will not be available (curl --man^). Integration of
-  echo the manual is not required and a summary of the options will still be available
-  echo (curl --help^). To integrate the manual your PATH is required to have
-  echo groff/nroff, perl and optionally gzip for compression.
-  goto success
-
-:error
-  if "%OS%" == "Windows_NT" (
-    endlocal
-  ) else (
-    call :dosCleanup
-  )
-  exit /B 1
-
-:success
-  if "%OS%" == "Windows_NT" (
-    endlocal
-  ) else (
-    call :dosCleanup
-  )
-  exit /B 0
+@echo off

+rem ***************************************************************************

+rem *                                  _   _ ____  _

+rem *  Project                     ___| | | |  _ \| |

+rem *                             / __| | | | |_) | |

+rem *                            | (__| |_| |  _ <| |___

+rem *                             \___|\___/|_| \_\_____|

+rem *

+rem * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.

+rem *

+rem * This software is licensed as described in the file COPYING, which

+rem * you should have received as part of this distribution. The terms

+rem * are also available at https://curl.se/docs/copyright.html.

+rem *

+rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell

+rem * copies of the Software, and permit persons to whom the Software is

+rem * furnished to do so, under the terms of the COPYING file.

+rem *

+rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY

+rem * KIND, either express or implied.

+rem *

+rem ***************************************************************************

+

+rem NOTES

+rem

+rem This batch file must be used to set up a git tree to build on systems where

+rem there is no autotools support (i.e. DOS and Windows).

+rem

+

+:begin

+  rem Set our variables

+  if "%OS%" == "Windows_NT" setlocal

+  set MODE=GENERATE

+

+  rem Switch to this batch file's directory

+  cd /d "%~0\.." 1>NUL 2>&1

+

+  rem Check we are running from a curl git repository

+  if not exist GIT-INFO goto norepo

+

+  rem Detect programs. HAVE_<PROGNAME>

+  rem When not found the variable is set undefined. The undefined pattern

+  rem allows for statements like "if not defined HAVE_PERL (command)"

+  groff --version <NUL 1>NUL 2>&1

+  if errorlevel 1 (set HAVE_GROFF=) else (set HAVE_GROFF=Y)

+  nroff --version <NUL 1>NUL 2>&1

+  if errorlevel 1 (set HAVE_NROFF=) else (set HAVE_NROFF=Y)

+  perl --version <NUL 1>NUL 2>&1

+  if errorlevel 1 (set HAVE_PERL=) else (set HAVE_PERL=Y)

+  gzip --version <NUL 1>NUL 2>&1

+  if errorlevel 1 (set HAVE_GZIP=) else (set HAVE_GZIP=Y)

+

+:parseArgs

+  if "%~1" == "" goto start

+

+  if /i "%~1" == "-clean" (

+    set MODE=CLEAN

+  ) else if /i "%~1" == "-?" (

+    goto syntax

+  ) else if /i "%~1" == "-h" (

+    goto syntax

+  ) else if /i "%~1" == "-help" (

+    goto syntax

+  ) else (

+    goto unknown

+  )

+

+  shift & goto parseArgs

+

+:start

+  if "%MODE%" == "GENERATE" (

+    echo.

+    echo Generating prerequisite files

+

+    call :generate

+    if errorlevel 3 goto nogenhugehelp

+    if errorlevel 2 goto nogenmakefile

+    if errorlevel 1 goto warning

+

+  ) else (

+    echo.

+    echo Removing prerequisite files

+

+    call :clean

+    if errorlevel 2 goto nocleanhugehelp

+    if errorlevel 1 goto nocleanmakefile

+  )

+

+  goto success

+

+rem Main generate function.

+rem

+rem Returns:

+rem

+rem 0 - success

+rem 1 - success with simplified tool_hugehelp.c

+rem 2 - failed to generate Makefile

+rem 3 - failed to generate tool_hugehelp.c

+rem

+:generate

+  if "%OS%" == "Windows_NT" setlocal

+  set BASIC_HUGEHELP=0

+

+  rem Create Makefile

+  echo * %CD%\Makefile

+  if exist Makefile.dist (

+    copy /Y Makefile.dist Makefile 1>NUL 2>&1

+    if errorlevel 1 (

+      if "%OS%" == "Windows_NT" endlocal

+      exit /B 2

+    )

+  )

+

+  rem Create tool_hugehelp.c

+  echo * %CD%\src\tool_hugehelp.c

+  call :genHugeHelp

+  if errorlevel 2 (

+    if "%OS%" == "Windows_NT" endlocal

+    exit /B 3

+  )

+  if errorlevel 1 (

+    set BASIC_HUGEHELP=1

+  )

+  cmd /c exit 0

+

+  rem Setup c-ares git tree

+  if exist ares\buildconf.bat (

+    echo.

+    echo Configuring c-ares build environment

+    cd ares

+    call buildconf.bat

+    cd ..

+  )

+

+  if "%BASIC_HUGEHELP%" == "1" (

+    if "%OS%" == "Windows_NT" endlocal

+    exit /B 1

+  )

+

+  if "%OS%" == "Windows_NT" endlocal

+  exit /B 0

+

+rem Main clean function.

+rem

+rem Returns:

+rem

+rem 0 - success

+rem 1 - failed to clean Makefile

+rem 2 - failed to clean tool_hugehelp.c

+rem

+:clean

+  rem Remove Makefile

+  echo * %CD%\Makefile

+  if exist Makefile (

+    del Makefile 2>NUL

+    if exist Makefile (

+      exit /B 1

+    )

+  )

+

+  rem Remove tool_hugehelp.c

+  echo * %CD%\src\tool_hugehelp.c

+  if exist src\tool_hugehelp.c (

+    del src\tool_hugehelp.c 2>NUL

+    if exist src\tool_hugehelp.c (

+      exit /B 2

+    )

+  )

+

+  exit /B

+

+rem Function to generate src\tool_hugehelp.c

+rem

+rem Returns:

+rem

+rem 0 - full tool_hugehelp.c generated

+rem 1 - simplified tool_hugehelp.c

+rem 2 - failure

+rem

+:genHugeHelp

+  if "%OS%" == "Windows_NT" setlocal

+  set LC_ALL=C

+  set ROFFCMD=

+  set BASIC=1

+

+  if defined HAVE_PERL (

+    if defined HAVE_GROFF (

+      set ROFFCMD=groff -mtty-char -Tascii -P-c -man

+    ) else if defined HAVE_NROFF (

+      set ROFFCMD=nroff -c -Tascii -man

+    )

+  )

+

+  if defined ROFFCMD (

+    echo #include "tool_setup.h"> src\tool_hugehelp.c

+    echo #include "tool_hugehelp.h">> src\tool_hugehelp.c

+

+    if defined HAVE_GZIP (

+      echo #ifndef HAVE_LIBZ>> src\tool_hugehelp.c

+    )

+

+    %ROFFCMD% docs\curl.1 2>NUL | perl src\mkhelp.pl docs\MANUAL >> src\tool_hugehelp.c

+    if defined HAVE_GZIP (

+      echo #else>> src\tool_hugehelp.c

+      %ROFFCMD% docs\curl.1 2>NUL | perl src\mkhelp.pl -c docs\MANUAL >> src\tool_hugehelp.c

+      echo #endif /^* HAVE_LIBZ ^*/>> src\tool_hugehelp.c

+    )

+

+    set BASIC=0

+  ) else (

+    if exist src\tool_hugehelp.c.cvs (

+      copy /Y src\tool_hugehelp.c.cvs src\tool_hugehelp.c 1>NUL 2>&1

+    ) else (

+      echo #include "tool_setup.h"> src\tool_hugehelp.c

+      echo #include "tool_hugehelp.h">> src\tool_hugehelp.c

+      echo.>> src\tool_hugehelp.c

+      echo void hugehelp(void^)>> src\tool_hugehelp.c

+      echo {>> src\tool_hugehelp.c

+      echo #ifdef USE_MANUAL>> src\tool_hugehelp.c

+      echo   fputs("Built-in manual not included\n", stdout^);>> src\tool_hugehelp.c

+      echo #endif>> src\tool_hugehelp.c

+      echo }>> src\tool_hugehelp.c

+    )

+  )

+

+  findstr "/C:void hugehelp(void)" src\tool_hugehelp.c 1>NUL 2>&1

+  if errorlevel 1 (

+    if "%OS%" == "Windows_NT" endlocal

+    exit /B 2

+  )

+

+  if "%BASIC%" == "1" (

+    if "%OS%" == "Windows_NT" endlocal

+    exit /B 1

+  )

+

+  if "%OS%" == "Windows_NT" endlocal

+  exit /B 0

+

+rem Function to clean-up local variables under DOS, Windows 3.x and

+rem Windows 9x as setlocal isn't available until Windows NT

+rem

+:dosCleanup

+  set MODE=

+  set HAVE_GROFF=

+  set HAVE_NROFF=

+  set HAVE_PERL=

+  set HAVE_GZIP=

+  set BASIC_HUGEHELP=

+  set LC_ALL

+  set ROFFCMD=

+  set BASIC=

+

+  exit /B

+

+:syntax

+  rem Display the help

+  echo.

+  echo Usage: buildconf [-clean]

+  echo.

+  echo -clean    - Removes the files

+  goto error

+

+:unknown

+  echo.

+  echo Error: Unknown argument '%1'

+  goto error

+

+:norepo

+  echo.

+  echo Error: This batch file should only be used with a curl git repository

+  goto error

+

+:nogenmakefile

+  echo.

+  echo Error: Unable to generate Makefile

+  goto error

+

+:nogenhugehelp

+  echo.

+  echo Error: Unable to generate src\tool_hugehelp.c

+  goto error

+

+:nocleanmakefile

+  echo.

+  echo Error: Unable to clean Makefile

+  goto error

+

+:nocleanhugehelp

+  echo.

+  echo Error: Unable to clean src\tool_hugehelp.c

+  goto error

+

+:warning

+  echo.

+  echo Warning: The curl manual could not be integrated in the source. This means when

+  echo you build curl the manual will not be available (curl --man^). Integration of

+  echo the manual is not required and a summary of the options will still be available

+  echo (curl --help^). To integrate the manual your PATH is required to have

+  echo groff/nroff, perl and optionally gzip for compression.

+  goto success

+

+:error

+  if "%OS%" == "Windows_NT" (

+    endlocal

+  ) else (

+    call :dosCleanup

+  )

+  exit /B 1

+

+:success

+  if "%OS%" == "Windows_NT" (

+    endlocal

+  ) else (

+    call :dosCleanup

+  )

+  exit /B 0

diff --git a/compile b/compile
index 23fcba0..df363c8 100755
--- a/compile
+++ b/compile
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2020 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 # Written by Tom Tromey <tromey@cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
diff --git a/configure b/configure
index bd32f77..2d73516 100755
--- a/configure
+++ b/configure
@@ -1,11 +1,12 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for curl -.
+# Generated by GNU Autoconf 2.71 for curl -.
 #
 # Report bugs to <a suitable curl mailing list: https://curl.se/mail/>.
 #
 #
-# Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
+# Copyright (C) 1992-1996, 1998-2017, 2020-2021 Free Software Foundation,
+# Inc.
 #
 #
 # This configure script is free software; the Free Software Foundation
@@ -263,14 +264,16 @@
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -280,53 +283,46 @@
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
 IFS=" ""	$as_nl"
 
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
+
+
+
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -335,8 +331,12 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -348,30 +348,10 @@
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 # Use a proper internal environment variable to ensure we don't fall
   # into an infinite loop, continuously re-executing ourselves.
@@ -393,20 +373,22 @@
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
-as_fn_exit 255
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
+exit 255
   fi
   # We don't want this to propagate to other subprocesses.
           { _as_can_reexec=; unset _as_can_reexec;}
 if test "x$CONFIG_SHELL" = x; then
-  as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then :
+  as_bourne_compatible="as_nop=:
+if test \${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '\${1+\"\$@\"}'='\"\$@\"'
   setopt NO_GLOB_SUBST
-else
+else \$as_nop
   case \`(set -o) 2>/dev/null\` in #(
   *posix*) :
     set -o posix ;; #(
@@ -426,12 +408,15 @@
 as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; }
 as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; }
 as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; }
-if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then :
+if ( set x; as_fn_ret_success y && test x = \"\$1\" )
+then :
 
-else
+else \$as_nop
   exitcode=1; echo positional parameters were not saved.
 fi
 test x\$exitcode = x0 || exit 1
+blah=\$(echo \$(echo blah))
+test x\"\$blah\" = xblah || exit 1
 test -x / || exit 1"
   as_suggested="  as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO
   as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO
@@ -446,30 +431,38 @@
     PATH=/empty FPATH=/empty; export PATH FPATH
     test \"X\`printf %s \$ECHO\`\" = \"X\$ECHO\" \\
       || test \"X\`print -r -- \$ECHO\`\" = \"X\$ECHO\" ) || exit 1"
-  if (eval "$as_required") 2>/dev/null; then :
+  if (eval "$as_required") 2>/dev/null
+then :
   as_have_required=yes
-else
+else $as_nop
   as_have_required=no
 fi
-  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then :
+  if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null
+then :
 
-else
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 as_found=false
 for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
   as_found=:
   case $as_dir in #(
 	 /*)
 	   for as_base in sh bash ksh sh5; do
 	     # Try only shells that exist, to save several forks.
-	     as_shell=$as_dir/$as_base
+	     as_shell=$as_dir$as_base
 	     if { test -f "$as_shell" || test -f "$as_shell.exe"; } &&
-		    { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then :
+		    as_run=a "$as_shell" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
   CONFIG_SHELL=$as_shell as_have_required=yes
-		   if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then :
+		   if as_run=a "$as_shell" -c "$as_bourne_compatible""$as_suggested" 2>/dev/null
+then :
   break 2
 fi
 fi
@@ -477,14 +470,21 @@
        esac
   as_found=false
 done
-$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
-	      { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then :
-  CONFIG_SHELL=$SHELL as_have_required=yes
-fi; }
 IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  if { test -f "$SHELL" || test -f "$SHELL.exe"; } &&
+	      as_run=a "$SHELL" -c "$as_bourne_compatible""$as_required" 2>/dev/null
+then :
+  CONFIG_SHELL=$SHELL as_have_required=yes
+fi
+fi
 
 
-      if test "x$CONFIG_SHELL" != x; then :
+      if test "x$CONFIG_SHELL" != x
+then :
   export CONFIG_SHELL
              # We cannot yet assume a decent shell, so we have to provide a
 # neutralization value for shells without unset; and this also
@@ -502,18 +502,19 @@
 exec $CONFIG_SHELL $as_opts "$as_myself" ${1+"$@"}
 # Admittedly, this is quite paranoid, since all the known shells bail
 # out after a failed `exec'.
-$as_echo "$0: could not re-execute with $CONFIG_SHELL" >&2
+printf "%s\n" "$0: could not re-execute with $CONFIG_SHELL" >&2
 exit 255
 fi
 
-    if test x$as_have_required = xno; then :
-  $as_echo "$0: This script requires a shell more modern than all"
-  $as_echo "$0: the shells that I found on your system."
-  if test x${ZSH_VERSION+set} = xset ; then
-    $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should"
-    $as_echo "$0: be upgraded to zsh 4.3.4 or later."
+    if test x$as_have_required = xno
+then :
+  printf "%s\n" "$0: This script requires a shell more modern than all"
+  printf "%s\n" "$0: the shells that I found on your system."
+  if test ${ZSH_VERSION+y} ; then
+    printf "%s\n" "$0: In particular, zsh $ZSH_VERSION has bugs and should"
+    printf "%s\n" "$0: be upgraded to zsh 4.3.4 or later."
   else
-    $as_echo "$0: Please tell bug-autoconf@gnu.org and a suitable curl
+    printf "%s\n" "$0: Please tell bug-autoconf@gnu.org and a suitable curl
 $0: mailing list: https://curl.se/mail/ about your system,
 $0: including any error possibly output before this
 $0: message. Then install a modern shell, or manually run
@@ -541,6 +542,7 @@
 }
 as_unset=as_fn_unset
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -558,6 +560,14 @@
   as_fn_set_status $1
   exit $1
 } # as_fn_exit
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_mkdir_p
 # -------------
@@ -572,7 +582,7 @@
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -581,7 +591,7 @@
 	 X"$as_dir" : 'X\(//\)[^/]' \| \
 	 X"$as_dir" : 'X\(//\)$' \| \
 	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -620,12 +630,13 @@
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -637,18 +648,27 @@
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
   }
 fi # as_fn_arith
 
+# as_fn_nop
+# ---------
+# Do nothing but, unlike ":", preserve the value of $?.
+as_fn_nop ()
+{
+  return $?
+}
+as_nop=as_fn_nop
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
 # ----------------------------------------
@@ -660,9 +680,9 @@
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
@@ -689,7 +709,7 @@
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$0" : 'X\(//\)$' \| \
 	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
@@ -733,7 +753,7 @@
       s/-\n.*//
     ' >$as_me.lineno &&
   chmod +x "$as_me.lineno" ||
-    { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
+    { printf "%s\n" "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; }
 
   # If we had to re-execute with $CONFIG_SHELL, we're ensured to have
   # already done that, so ensure we don't try to do so again and fall
@@ -747,6 +767,10 @@
   exit
 }
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -760,6 +784,13 @@
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -837,40 +868,36 @@
 ac_unique_file="lib/urldata.h"
 # Factoring default headers for most tests.
 ac_includes_default="\
-#include <stdio.h>
-#ifdef HAVE_SYS_TYPES_H
-# include <sys/types.h>
+#include <stddef.h>
+#ifdef HAVE_STDIO_H
+# include <stdio.h>
 #endif
-#ifdef HAVE_SYS_STAT_H
-# include <sys/stat.h>
-#endif
-#ifdef STDC_HEADERS
+#ifdef HAVE_STDLIB_H
 # include <stdlib.h>
-# include <stddef.h>
-#else
-# ifdef HAVE_STDLIB_H
-#  include <stdlib.h>
-# endif
 #endif
 #ifdef HAVE_STRING_H
-# if !defined STDC_HEADERS && defined HAVE_MEMORY_H
-#  include <memory.h>
-# endif
 # include <string.h>
 #endif
-#ifdef HAVE_STRINGS_H
-# include <strings.h>
-#endif
 #ifdef HAVE_INTTYPES_H
 # include <inttypes.h>
 #endif
 #ifdef HAVE_STDINT_H
 # include <stdint.h>
 #endif
+#ifdef HAVE_STRINGS_H
+# include <strings.h>
+#endif
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_STAT_H
+# include <sys/stat.h>
+#endif
 #ifdef HAVE_UNISTD_H
 # include <unistd.h>
 #endif"
 
+ac_header_c_list=
 enable_option_checking=no
 ac_subst_vars='am__EXEEXT_FALSE
 am__EXEEXT_TRUE
@@ -1027,6 +1054,9 @@
 PKGADD_PKG
 VERSIONNUM
 CURLVERSION
+CSCOPE
+ETAGS
+CTAGS
 am__fastdepCC_FALSE
 am__fastdepCC_TRUE
 CCDEPMODE
@@ -1133,7 +1163,6 @@
 enable_werror
 enable_curldebug
 enable_symbol_hiding
-enable_hidden_symbols
 enable_ares
 enable_rt
 enable_ech
@@ -1313,8 +1342,6 @@
   *)    ac_optarg=yes ;;
   esac
 
-  # Accept the important Cygnus configure options, so we can diagnose typos.
-
   case $ac_dashdash$ac_option in
   --)
     ac_dashdash=yes ;;
@@ -1355,9 +1382,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1381,9 +1408,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid feature name: $ac_useropt"
+      as_fn_error $? "invalid feature name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "enable_$ac_useropt"
@@ -1594,9 +1621,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1610,9 +1637,9 @@
     ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'`
     # Reject names that are not valid shell variable names.
     expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null &&
-      as_fn_error $? "invalid package name: $ac_useropt"
+      as_fn_error $? "invalid package name: \`$ac_useropt'"
     ac_useropt_orig=$ac_useropt
-    ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'`
+    ac_useropt=`printf "%s\n" "$ac_useropt" | sed 's/[-+.]/_/g'`
     case $ac_user_opts in
       *"
 "with_$ac_useropt"
@@ -1656,9 +1683,9 @@
 
   *)
     # FIXME: should be removed in autoconf 3.0.
-    $as_echo "$as_me: WARNING: you should use --build, --host, --target" >&2
+    printf "%s\n" "$as_me: WARNING: you should use --build, --host, --target" >&2
     expr "x$ac_option" : ".*[^-._$as_cr_alnum]" >/dev/null &&
-      $as_echo "$as_me: WARNING: invalid host type: $ac_option" >&2
+      printf "%s\n" "$as_me: WARNING: invalid host type: $ac_option" >&2
     : "${build_alias=$ac_option} ${host_alias=$ac_option} ${target_alias=$ac_option}"
     ;;
 
@@ -1674,7 +1701,7 @@
   case $enable_option_checking in
     no) ;;
     fatal) as_fn_error $? "unrecognized options: $ac_unrecognized_opts" ;;
-    *)     $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
+    *)     printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;;
   esac
 fi
 
@@ -1738,7 +1765,7 @@
 	 X"$as_myself" : 'X\(//\)[^/]' \| \
 	 X"$as_myself" : 'X\(//\)$' \| \
 	 X"$as_myself" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_myself" |
+printf "%s\n" X"$as_myself" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -1891,9 +1918,6 @@
   --disable-curldebug     Disable curl debug memory tracking
   --enable-symbol-hiding  Enable hiding of library internal symbols
   --disable-symbol-hiding Disable hiding of library internal symbols
-  --enable-hidden-symbols To be deprecated, use --enable-symbol-hiding
-  --disable-hidden-symbols
-                          To be deprecated, use --disable-symbol-hiding
   --enable-ares[=PATH]    Enable c-ares for DNS lookups
   --disable-ares          Disable c-ares for DNS lookups
   --disable-rt            disable dependency on -lrt
@@ -2154,9 +2178,9 @@
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -2184,7 +2208,8 @@
 ac_abs_srcdir=$ac_abs_top_srcdir$ac_dir_suffix
 
     cd "$ac_dir" || { ac_status=$?; continue; }
-    # Check for guested configure.
+    # Check for configure.gnu first; this name is used for a wrapper for
+    # Metaconfig's "Configure" on case-insensitive file systems.
     if test -f "$ac_srcdir/configure.gnu"; then
       echo &&
       $SHELL "$ac_srcdir/configure.gnu" --help=recursive
@@ -2192,7 +2217,7 @@
       echo &&
       $SHELL "$ac_srcdir/configure" --help=recursive
     else
-      $as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2
+      printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2
     fi || ac_status=$?
     cd "$ac_pwd" || { ac_status=$?; break; }
   done
@@ -2202,9 +2227,9 @@
 if $ac_init_version; then
   cat <<\_ACEOF
 curl configure -
-generated by GNU Autoconf 2.69
+generated by GNU Autoconf 2.71
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This configure script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it.
 
@@ -2225,14 +2250,14 @@
 ac_fn_c_try_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext
+  rm -f conftest.$ac_objext conftest.beam
   if { { ac_try="$ac_compile"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -2240,14 +2265,15 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_c_werror_flag" ||
 	 test ! -s conftest.err
-       } && test -s conftest.$ac_objext; then :
+       } && test -s conftest.$ac_objext
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -2269,7 +2295,7 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -2277,14 +2303,15 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } > conftest.i && {
 	 test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" ||
 	 test ! -s conftest.err
-       }; then :
+       }
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
     ac_retval=1
@@ -2300,14 +2327,14 @@
 ac_fn_c_try_link ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  rm -f conftest.$ac_objext conftest$ac_exeext
+  rm -f conftest.$ac_objext conftest.beam conftest$ac_exeext
   if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -2315,17 +2342,18 @@
     cat conftest.er1 >&5
     mv -f conftest.er1 conftest.err
   fi
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && {
 	 test -z "$ac_c_werror_flag" ||
 	 test ! -s conftest.err
        } && test -s conftest$ac_exeext && {
 	 test "$cross_compiling" = yes ||
 	 test -x conftest$ac_exeext
-       }; then :
+       }
+then :
   ac_retval=0
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
 	ac_retval=1
@@ -2347,83 +2375,44 @@
 ac_fn_c_check_header_compile ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
 #include <$2>
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_header_compile
 
-# ac_fn_c_try_run LINENO
-# ----------------------
-# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes
-# that executables *can* be run.
-ac_fn_c_try_run ()
-{
-  as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if { { ac_try="$ac_link"
-case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_link") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
-  { { case "(($ac_try" in
-  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
-  *) ac_try_echo=$ac_try;;
-esac
-eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
-  (eval "$ac_try") 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; }; then :
-  ac_retval=0
-else
-  $as_echo "$as_me: program exited with status $ac_status" >&5
-       $as_echo "$as_me: failed program was:" >&5
-sed 's/^/| /' conftest.$ac_ext >&5
-
-       ac_retval=$ac_status
-fi
-  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
-  as_fn_set_status $ac_retval
-
-} # ac_fn_c_try_run
-
 # ac_fn_c_check_func LINENO FUNC VAR
 # ----------------------------------
 # Tests whether FUNC exists, setting the cache variable VAR accordingly
 ac_fn_c_check_func ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -2449,111 +2438,64 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_func
 
-# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES
-# -------------------------------------------------------
-# Tests whether HEADER exists, giving a warning if it cannot be compiled using
-# the include files in INCLUDES and setting the cache variable VAR
-# accordingly.
-ac_fn_c_check_header_mongrel ()
+# ac_fn_c_try_run LINENO
+# ----------------------
+# Try to run conftest.$ac_ext, and return whether this succeeded. Assumes that
+# executables *can* be run.
+ac_fn_c_try_run ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  if eval \${$3+:} false; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-else
-  # Is the header compilable?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5
-$as_echo_n "checking $2 usability... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-$4
-#include <$2>
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_header_compiler=yes
-else
-  ac_header_compiler=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5
-$as_echo "$ac_header_compiler" >&6; }
-
-# Is the header present?
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5
-$as_echo_n "checking $2 presence... " >&6; }
-cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <$2>
-_ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
-  ac_header_preproc=yes
-else
-  ac_header_preproc=no
-fi
-rm -f conftest.err conftest.i conftest.$ac_ext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5
-$as_echo "$ac_header_preproc" >&6; }
-
-# So?  What about this header?
-case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #((
-  yes:no: )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5
-$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-    ;;
-  no:yes:* )
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5
-$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     check for missing prerequisite headers?" >&5
-$as_echo "$as_me: WARNING: $2:     check for missing prerequisite headers?" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5
-$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&5
-$as_echo "$as_me: WARNING: $2:     section \"Present But Cannot Be Compiled\"" >&2;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5
-$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;}
-( $as_echo "## ------------------------------------------------------------------ ##
-## Report this to a suitable curl mailing list: https://curl.se/mail/ ##
-## ------------------------------------------------------------------ ##"
-     ) | sed "s/^/$as_me: WARNING:     /" >&2
-    ;;
+  if { { ac_try="$ac_link"
+case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
 esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  eval "$3=\$ac_header_compiler"
-fi
-eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-fi
-  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_link") 2>&5
+  ac_status=$?
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; } && { ac_try='./conftest$ac_exeext'
+  { { case "(($ac_try" in
+  *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
+  *) ac_try_echo=$ac_try;;
+esac
+eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
+printf "%s\n" "$ac_try_echo"; } >&5
+  (eval "$ac_try") 2>&5
+  ac_status=$?
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }; }
+then :
+  ac_retval=0
+else $as_nop
+  printf "%s\n" "$as_me: program exited with status $ac_status" >&5
+       printf "%s\n" "$as_me: failed program was:" >&5
+sed 's/^/| /' conftest.$ac_ext >&5
 
-} # ac_fn_c_check_header_mongrel
+       ac_retval=$ac_status
+fi
+  rm -rf conftest.dSYM conftest_ipa8_conftest.oo
+  eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
+  as_fn_set_status $ac_retval
+
+} # ac_fn_c_try_run
 
 # ac_fn_c_check_type LINENO TYPE VAR INCLUDES
 # -------------------------------------------
@@ -2562,11 +2504,12 @@
 ac_fn_c_check_type ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
-$as_echo_n "checking for $2... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2" >&5
+printf %s "checking for $2... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   eval "$3=no"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -2579,7 +2522,8 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
@@ -2591,36 +2535,40 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   eval "$3=yes"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_type
 
-# ac_fn_c_check_decl LINENO SYMBOL VAR INCLUDES
-# ---------------------------------------------
+# ac_fn_check_decl LINENO SYMBOL VAR INCLUDES EXTRA-OPTIONS FLAG-VAR
+# ------------------------------------------------------------------
 # Tests whether SYMBOL is declared in INCLUDES, setting cache variable VAR
-# accordingly.
-ac_fn_c_check_decl ()
+# accordingly. Pass EXTRA-OPTIONS to the compiler, using FLAG-VAR.
+ac_fn_check_decl ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
   as_decl_name=`echo $2|sed 's/ *(.*//'`
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
+printf %s "checking whether $as_decl_name is declared... " >&6; }
+if eval test \${$3+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_decl_use=`echo $2|sed -e 's/(/((/' -e 's/)/) 0&/' -e 's/,/) 0& (/g'`
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $as_decl_name is declared" >&5
-$as_echo_n "checking whether $as_decl_name is declared... " >&6; }
-if eval \${$3+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  eval ac_save_FLAGS=\$$6
+  as_fn_append $6 " $5"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $4
@@ -2638,19 +2586,22 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$3=yes"
-else
+else $as_nop
   eval "$3=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+  eval $6=\$ac_save_FLAGS
+
 fi
 eval ac_res=\$$3
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
-} # ac_fn_c_check_decl
+} # ac_fn_check_decl
 
 # ac_fn_c_check_member LINENO AGGR MEMBER VAR INCLUDES
 # ----------------------------------------------------
@@ -2659,11 +2610,12 @@
 ac_fn_c_check_member ()
 {
   as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
-$as_echo_n "checking for $2.$3... " >&6; }
-if eval \${$4+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $2.$3" >&5
+printf %s "checking for $2.$3... " >&6; }
+if eval test \${$4+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $5
@@ -2676,9 +2628,10 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$4=yes"
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 $5
@@ -2691,29 +2644,50 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   eval "$4=yes"
-else
+else $as_nop
   eval "$4=no"
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 eval ac_res=\$$4
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
   eval $as_lineno_stack; ${as_lineno_stack:+:} unset as_lineno
 
 } # ac_fn_c_check_member
+ac_configure_args_raw=
+for ac_arg
+do
+  case $ac_arg in
+  *\'*)
+    ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+  esac
+  as_fn_append ac_configure_args_raw " '$ac_arg'"
+done
+
+case $ac_configure_args_raw in
+  *$as_nl*)
+    ac_safe_unquote= ;;
+  *)
+    ac_unsafe_z='|&;<>()$`\\"*?[ ''	' # This string ends in space, tab.
+    ac_unsafe_a="$ac_unsafe_z#~"
+    ac_safe_unquote="s/ '\\([^$ac_unsafe_a][^$ac_unsafe_z]*\\)'/ \\1/g"
+    ac_configure_args_raw=`      printf "%s\n" "$ac_configure_args_raw" | sed "$ac_safe_unquote"`;;
+esac
+
 cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
 It was created by curl $as_me -, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
-  $ $0 $@
+  $ $0$ac_configure_args_raw
 
 _ACEOF
 exec 5>>config.log
@@ -2746,8 +2720,12 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    $as_echo "PATH: $as_dir"
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    printf "%s\n" "PATH: $as_dir"
   done
 IFS=$as_save_IFS
 
@@ -2782,7 +2760,7 @@
     | -silent | --silent | --silen | --sile | --sil)
       continue ;;
     *\'*)
-      ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+      ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     case $ac_pass in
     1) as_fn_append ac_configure_args0 " '$ac_arg'" ;;
@@ -2817,11 +2795,13 @@
 # WARNING: Use '\'' to represent an apostrophe within the trap.
 # WARNING: Do not start the trap code with a newline, due to a FreeBSD 4.0 bug.
 trap 'exit_status=$?
+  # Sanitize IFS.
+  IFS=" ""	$as_nl"
   # Save into config.log some information that might help in debugging.
   {
     echo
 
-    $as_echo "## ---------------- ##
+    printf "%s\n" "## ---------------- ##
 ## Cache variables. ##
 ## ---------------- ##"
     echo
@@ -2832,8 +2812,8 @@
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -2857,7 +2837,7 @@
 )
     echo
 
-    $as_echo "## ----------------- ##
+    printf "%s\n" "## ----------------- ##
 ## Output variables. ##
 ## ----------------- ##"
     echo
@@ -2865,14 +2845,14 @@
     do
       eval ac_val=\$$ac_var
       case $ac_val in
-      *\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+      *\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
       esac
-      $as_echo "$ac_var='\''$ac_val'\''"
+      printf "%s\n" "$ac_var='\''$ac_val'\''"
     done | sort
     echo
 
     if test -n "$ac_subst_files"; then
-      $as_echo "## ------------------- ##
+      printf "%s\n" "## ------------------- ##
 ## File substitutions. ##
 ## ------------------- ##"
       echo
@@ -2880,15 +2860,15 @@
       do
 	eval ac_val=\$$ac_var
 	case $ac_val in
-	*\'\''*) ac_val=`$as_echo "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
+	*\'\''*) ac_val=`printf "%s\n" "$ac_val" | sed "s/'\''/'\''\\\\\\\\'\'''\''/g"`;;
 	esac
-	$as_echo "$ac_var='\''$ac_val'\''"
+	printf "%s\n" "$ac_var='\''$ac_val'\''"
       done | sort
       echo
     fi
 
     if test -s confdefs.h; then
-      $as_echo "## ----------- ##
+      printf "%s\n" "## ----------- ##
 ## confdefs.h. ##
 ## ----------- ##"
       echo
@@ -2896,8 +2876,8 @@
       echo
     fi
     test "$ac_signal" != 0 &&
-      $as_echo "$as_me: caught signal $ac_signal"
-    $as_echo "$as_me: exit $exit_status"
+      printf "%s\n" "$as_me: caught signal $ac_signal"
+    printf "%s\n" "$as_me: exit $exit_status"
   } >&5
   rm -f core *.core core.conftest.* &&
     rm -f -r conftest* confdefs* conf$$* $ac_clean_files &&
@@ -2911,63 +2891,48 @@
 # confdefs.h avoids OS command line length limits that DEFS can exceed.
 rm -f -r conftest* confdefs.h
 
-$as_echo "/* confdefs.h */" > confdefs.h
+printf "%s\n" "/* confdefs.h */" > confdefs.h
 
 # Predefined preprocessor variables.
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_NAME "$PACKAGE_NAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_NAME \"$PACKAGE_NAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_TARNAME "$PACKAGE_TARNAME"
-_ACEOF
+printf "%s\n" "#define PACKAGE_TARNAME \"$PACKAGE_TARNAME\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_VERSION "$PACKAGE_VERSION"
-_ACEOF
+printf "%s\n" "#define PACKAGE_VERSION \"$PACKAGE_VERSION\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_STRING "$PACKAGE_STRING"
-_ACEOF
+printf "%s\n" "#define PACKAGE_STRING \"$PACKAGE_STRING\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT"
-_ACEOF
+printf "%s\n" "#define PACKAGE_BUGREPORT \"$PACKAGE_BUGREPORT\"" >>confdefs.h
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE_URL "$PACKAGE_URL"
-_ACEOF
+printf "%s\n" "#define PACKAGE_URL \"$PACKAGE_URL\"" >>confdefs.h
 
 
 # Let the site file select an alternate cache file if it wants to.
 # Prefer an explicitly selected file to automatically selected ones.
-ac_site_file1=NONE
-ac_site_file2=NONE
 if test -n "$CONFIG_SITE"; then
-  # We do not want a PATH search for config.site.
-  case $CONFIG_SITE in #((
-    -*)  ac_site_file1=./$CONFIG_SITE;;
-    */*) ac_site_file1=$CONFIG_SITE;;
-    *)   ac_site_file1=./$CONFIG_SITE;;
-  esac
+  ac_site_files="$CONFIG_SITE"
 elif test "x$prefix" != xNONE; then
-  ac_site_file1=$prefix/share/config.site
-  ac_site_file2=$prefix/etc/config.site
+  ac_site_files="$prefix/share/config.site $prefix/etc/config.site"
 else
-  ac_site_file1=$ac_default_prefix/share/config.site
-  ac_site_file2=$ac_default_prefix/etc/config.site
+  ac_site_files="$ac_default_prefix/share/config.site $ac_default_prefix/etc/config.site"
 fi
-for ac_site_file in "$ac_site_file1" "$ac_site_file2"
+
+for ac_site_file in $ac_site_files
 do
-  test "x$ac_site_file" = xNONE && continue
-  if test /dev/null != "$ac_site_file" && test -r "$ac_site_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
-$as_echo "$as_me: loading site script $ac_site_file" >&6;}
+  case $ac_site_file in #(
+  */*) :
+     ;; #(
+  *) :
+    ac_site_file=./$ac_site_file ;;
+esac
+  if test -f "$ac_site_file" && test -r "$ac_site_file"; then
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5
+printf "%s\n" "$as_me: loading site script $ac_site_file" >&6;}
     sed 's/^/| /' "$ac_site_file" >&5
     . "$ac_site_file" \
-      || { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+      || { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "failed to load site script $ac_site_file
 See \`config.log' for more details" "$LINENO" 5; }
   fi
@@ -2977,19 +2942,434 @@
   # Some versions of bash will fail to source /dev/null (special files
   # actually), so we avoid doing that.  DJGPP emulates it as a regular file.
   if test /dev/null != "$cache_file" && test -f "$cache_file"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
-$as_echo "$as_me: loading cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5
+printf "%s\n" "$as_me: loading cache $cache_file" >&6;}
     case $cache_file in
       [\\/]* | ?:[\\/]* ) . "$cache_file";;
       *)                      . "./$cache_file";;
     esac
   fi
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
-$as_echo "$as_me: creating cache $cache_file" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5
+printf "%s\n" "$as_me: creating cache $cache_file" >&6;}
   >$cache_file
 fi
 
+# Test code for whether the C compiler supports C89 (global declarations)
+ac_c_conftest_c89_globals='
+/* Does the compiler advertise C89 conformance?
+   Do not test the value of __STDC__, because some compilers set it to 0
+   while being otherwise adequately conformant. */
+#if !defined __STDC__
+# error "Compiler does not advertise C89 conformance"
+#endif
+
+#include <stddef.h>
+#include <stdarg.h>
+struct stat;
+/* Most of the following tests are stolen from RCS 5.7 src/conf.sh.  */
+struct buf { int x; };
+struct buf * (*rcsopen) (struct buf *, struct stat *, int);
+static char *e (p, i)
+     char **p;
+     int i;
+{
+  return p[i];
+}
+static char *f (char * (*g) (char **, int), char **p, ...)
+{
+  char *s;
+  va_list v;
+  va_start (v,p);
+  s = g (p, va_arg (v,int));
+  va_end (v);
+  return s;
+}
+
+/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
+   function prototypes and stuff, but not \xHH hex character constants.
+   These do not provoke an error unfortunately, instead are silently treated
+   as an "x".  The following induces an error, until -std is added to get
+   proper ANSI mode.  Curiously \x00 != x always comes out true, for an
+   array size at least.  It is necessary to write \x00 == 0 to get something
+   that is true only with -std.  */
+int osf4_cc_array ['\''\x00'\'' == 0 ? 1 : -1];
+
+/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
+   inside strings and character constants.  */
+#define FOO(x) '\''x'\''
+int xlc6_cc_array[FOO(a) == '\''x'\'' ? 1 : -1];
+
+int test (int i, double x);
+struct s1 {int (*f) (int a);};
+struct s2 {int (*f) (double a);};
+int pairnames (int, char **, int *(*)(struct buf *, struct stat *, int),
+               int, int);'
+
+# Test code for whether the C compiler supports C89 (body of main).
+ac_c_conftest_c89_main='
+ok |= (argc == 0 || f (e, argv, 0) != argv[0] || f (e, argv, 1) != argv[1]);
+'
+
+# Test code for whether the C compiler supports C99 (global declarations)
+ac_c_conftest_c99_globals='
+// Does the compiler advertise C99 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 199901L
+# error "Compiler does not advertise C99 conformance"
+#endif
+
+#include <stdbool.h>
+extern int puts (const char *);
+extern int printf (const char *, ...);
+extern int dprintf (int, const char *, ...);
+extern void *malloc (size_t);
+
+// Check varargs macros.  These examples are taken from C99 6.10.3.5.
+// dprintf is used instead of fprintf to avoid needing to declare
+// FILE and stderr.
+#define debug(...) dprintf (2, __VA_ARGS__)
+#define showlist(...) puts (#__VA_ARGS__)
+#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__))
+static void
+test_varargs_macros (void)
+{
+  int x = 1234;
+  int y = 5678;
+  debug ("Flag");
+  debug ("X = %d\n", x);
+  showlist (The first, second, and third items.);
+  report (x>y, "x is %d but y is %d", x, y);
+}
+
+// Check long long types.
+#define BIG64 18446744073709551615ull
+#define BIG32 4294967295ul
+#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0)
+#if !BIG_OK
+  #error "your preprocessor is broken"
+#endif
+#if BIG_OK
+#else
+  #error "your preprocessor is broken"
+#endif
+static long long int bignum = -9223372036854775807LL;
+static unsigned long long int ubignum = BIG64;
+
+struct incomplete_array
+{
+  int datasize;
+  double data[];
+};
+
+struct named_init {
+  int number;
+  const wchar_t *name;
+  double average;
+};
+
+typedef const char *ccp;
+
+static inline int
+test_restrict (ccp restrict text)
+{
+  // See if C++-style comments work.
+  // Iterate through items via the restricted pointer.
+  // Also check for declarations in for loops.
+  for (unsigned int i = 0; *(text+i) != '\''\0'\''; ++i)
+    continue;
+  return 0;
+}
+
+// Check varargs and va_copy.
+static bool
+test_varargs (const char *format, ...)
+{
+  va_list args;
+  va_start (args, format);
+  va_list args_copy;
+  va_copy (args_copy, args);
+
+  const char *str = "";
+  int number = 0;
+  float fnumber = 0;
+
+  while (*format)
+    {
+      switch (*format++)
+	{
+	case '\''s'\'': // string
+	  str = va_arg (args_copy, const char *);
+	  break;
+	case '\''d'\'': // int
+	  number = va_arg (args_copy, int);
+	  break;
+	case '\''f'\'': // float
+	  fnumber = va_arg (args_copy, double);
+	  break;
+	default:
+	  break;
+	}
+    }
+  va_end (args_copy);
+  va_end (args);
+
+  return *str && number && fnumber;
+}
+'
+
+# Test code for whether the C compiler supports C99 (body of main).
+ac_c_conftest_c99_main='
+  // Check bool.
+  _Bool success = false;
+  success |= (argc != 0);
+
+  // Check restrict.
+  if (test_restrict ("String literal") == 0)
+    success = true;
+  char *restrict newvar = "Another string";
+
+  // Check varargs.
+  success &= test_varargs ("s, d'\'' f .", "string", 65, 34.234);
+  test_varargs_macros ();
+
+  // Check flexible array members.
+  struct incomplete_array *ia =
+    malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10));
+  ia->datasize = 10;
+  for (int i = 0; i < ia->datasize; ++i)
+    ia->data[i] = i * 1.234;
+
+  // Check named initializers.
+  struct named_init ni = {
+    .number = 34,
+    .name = L"Test wide string",
+    .average = 543.34343,
+  };
+
+  ni.number = 58;
+
+  int dynamic_array[ni.number];
+  dynamic_array[0] = argv[0][0];
+  dynamic_array[ni.number - 1] = 543;
+
+  // work around unused variable warnings
+  ok |= (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == '\''x'\''
+	 || dynamic_array[ni.number - 1] != 543);
+'
+
+# Test code for whether the C compiler supports C11 (global declarations)
+ac_c_conftest_c11_globals='
+// Does the compiler advertise C11 conformance?
+#if !defined __STDC_VERSION__ || __STDC_VERSION__ < 201112L
+# error "Compiler does not advertise C11 conformance"
+#endif
+
+// Check _Alignas.
+char _Alignas (double) aligned_as_double;
+char _Alignas (0) no_special_alignment;
+extern char aligned_as_int;
+char _Alignas (0) _Alignas (int) aligned_as_int;
+
+// Check _Alignof.
+enum
+{
+  int_alignment = _Alignof (int),
+  int_array_alignment = _Alignof (int[100]),
+  char_alignment = _Alignof (char)
+};
+_Static_assert (0 < -_Alignof (int), "_Alignof is signed");
+
+// Check _Noreturn.
+int _Noreturn does_not_return (void) { for (;;) continue; }
+
+// Check _Static_assert.
+struct test_static_assert
+{
+  int x;
+  _Static_assert (sizeof (int) <= sizeof (long int),
+                  "_Static_assert does not work in struct");
+  long int y;
+};
+
+// Check UTF-8 literals.
+#define u8 syntax error!
+char const utf8_literal[] = u8"happens to be ASCII" "another string";
+
+// Check duplicate typedefs.
+typedef long *long_ptr;
+typedef long int *long_ptr;
+typedef long_ptr long_ptr;
+
+// Anonymous structures and unions -- taken from C11 6.7.2.1 Example 1.
+struct anonymous
+{
+  union {
+    struct { int i; int j; };
+    struct { int k; long int l; } w;
+  };
+  int m;
+} v1;
+'
+
+# Test code for whether the C compiler supports C11 (body of main).
+ac_c_conftest_c11_main='
+  _Static_assert ((offsetof (struct anonymous, i)
+		   == offsetof (struct anonymous, w.k)),
+		  "Anonymous union alignment botch");
+  v1.i = 2;
+  v1.w.k = 5;
+  ok |= v1.i != 5;
+'
+
+# Test code for whether the C compiler supports C11 (complete).
+ac_c_conftest_c11_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+${ac_c_conftest_c11_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  ${ac_c_conftest_c11_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C99 (complete).
+ac_c_conftest_c99_program="${ac_c_conftest_c89_globals}
+${ac_c_conftest_c99_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  ${ac_c_conftest_c99_main}
+  return ok;
+}
+"
+
+# Test code for whether the C compiler supports C89 (complete).
+ac_c_conftest_c89_program="${ac_c_conftest_c89_globals}
+
+int
+main (int argc, char **argv)
+{
+  int ok = 0;
+  ${ac_c_conftest_c89_main}
+  return ok;
+}
+"
+
+as_fn_append ac_header_c_list " stdio.h stdio_h HAVE_STDIO_H"
+as_fn_append ac_header_c_list " stdlib.h stdlib_h HAVE_STDLIB_H"
+as_fn_append ac_header_c_list " string.h string_h HAVE_STRING_H"
+as_fn_append ac_header_c_list " inttypes.h inttypes_h HAVE_INTTYPES_H"
+as_fn_append ac_header_c_list " stdint.h stdint_h HAVE_STDINT_H"
+as_fn_append ac_header_c_list " strings.h strings_h HAVE_STRINGS_H"
+as_fn_append ac_header_c_list " sys/stat.h sys_stat_h HAVE_SYS_STAT_H"
+as_fn_append ac_header_c_list " sys/types.h sys_types_h HAVE_SYS_TYPES_H"
+as_fn_append ac_header_c_list " unistd.h unistd_h HAVE_UNISTD_H"
+
+# Auxiliary files required by this configure script.
+ac_aux_files="ltmain.sh config.guess config.sub missing compile install-sh"
+
+# Locations in which to look for auxiliary files.
+ac_aux_dir_candidates="${srcdir}${PATH_SEPARATOR}${srcdir}/..${PATH_SEPARATOR}${srcdir}/../.."
+
+# Search for a directory containing all of the required auxiliary files,
+# $ac_aux_files, from the $PATH-style list $ac_aux_dir_candidates.
+# If we don't find one directory that contains all the files we need,
+# we report the set of missing files from the *first* directory in
+# $ac_aux_dir_candidates and give up.
+ac_missing_aux_files=""
+ac_first_candidate=:
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: looking for aux files: $ac_aux_files" >&5
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_found=false
+for as_dir in $ac_aux_dir_candidates
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+  as_found=:
+
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}:  trying $as_dir" >&5
+  ac_aux_dir_found=yes
+  ac_install_sh=
+  for ac_aux in $ac_aux_files
+  do
+    # As a special case, if "install-sh" is required, that requirement
+    # can be satisfied by any of "install-sh", "install.sh", or "shtool",
+    # and $ac_install_sh is set appropriately for whichever one is found.
+    if test x"$ac_aux" = x"install-sh"
+    then
+      if test -f "${as_dir}install-sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install-sh found" >&5
+        ac_install_sh="${as_dir}install-sh -c"
+      elif test -f "${as_dir}install.sh"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}install.sh found" >&5
+        ac_install_sh="${as_dir}install.sh -c"
+      elif test -f "${as_dir}shtool"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}shtool found" >&5
+        ac_install_sh="${as_dir}shtool install -c"
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} install-sh"
+        else
+          break
+        fi
+      fi
+    else
+      if test -f "${as_dir}${ac_aux}"; then
+        printf "%s\n" "$as_me:${as_lineno-$LINENO}:   ${as_dir}${ac_aux} found" >&5
+      else
+        ac_aux_dir_found=no
+        if $ac_first_candidate; then
+          ac_missing_aux_files="${ac_missing_aux_files} ${ac_aux}"
+        else
+          break
+        fi
+      fi
+    fi
+  done
+  if test "$ac_aux_dir_found" = yes; then
+    ac_aux_dir="$as_dir"
+    break
+  fi
+  ac_first_candidate=false
+
+  as_found=false
+done
+IFS=$as_save_IFS
+if $as_found
+then :
+
+else $as_nop
+  as_fn_error $? "cannot find required auxiliary files:$ac_missing_aux_files" "$LINENO" 5
+fi
+
+
+# These three variables are undocumented and unsupported,
+# and are intended to be withdrawn in a future Autoconf release.
+# They can cause serious problems if a builder's source tree is in a directory
+# whose full name contains unusual characters.
+if test -f "${ac_aux_dir}config.guess"; then
+  ac_config_guess="$SHELL ${ac_aux_dir}config.guess"
+fi
+if test -f "${ac_aux_dir}config.sub"; then
+  ac_config_sub="$SHELL ${ac_aux_dir}config.sub"
+fi
+if test -f "$ac_aux_dir/configure"; then
+  ac_configure="$SHELL ${ac_aux_dir}configure"
+fi
+
 # Check that the precious variables saved in the cache have kept the same
 # value.
 ac_cache_corrupted=false
@@ -3000,12 +3380,12 @@
   eval ac_new_val=\$ac_env_${ac_var}_value
   case $ac_old_set,$ac_new_set in
     set,)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,set)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
-$as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' was not set in the previous run" >&2;}
       ac_cache_corrupted=: ;;
     ,);;
     *)
@@ -3014,24 +3394,24 @@
 	ac_old_val_w=`echo x $ac_old_val`
 	ac_new_val_w=`echo x $ac_new_val`
 	if test "$ac_old_val_w" != "$ac_new_val_w"; then
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
-$as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5
+printf "%s\n" "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;}
 	  ac_cache_corrupted=:
 	else
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
-$as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5
+printf "%s\n" "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;}
 	  eval $ac_var=\$ac_old_val
 	fi
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
-$as_echo "$as_me:   former value:  \`$ac_old_val'" >&2;}
-	{ $as_echo "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
-$as_echo "$as_me:   current value: \`$ac_new_val'" >&2;}
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   former value:  \`$ac_old_val'" >&5
+printf "%s\n" "$as_me:   former value:  \`$ac_old_val'" >&2;}
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}:   current value: \`$ac_new_val'" >&5
+printf "%s\n" "$as_me:   current value: \`$ac_new_val'" >&2;}
       fi;;
   esac
   # Pass precious variables to config.status.
   if test "$ac_new_set" = set; then
     case $ac_new_val in
-    *\'*) ac_arg=$ac_var=`$as_echo "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_arg=$ac_var=`printf "%s\n" "$ac_new_val" | sed "s/'/'\\\\\\\\''/g"` ;;
     *) ac_arg=$ac_var=$ac_new_val ;;
     esac
     case " $ac_configure_args " in
@@ -3041,11 +3421,12 @@
   fi
 done
 if $ac_cache_corrupted; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
-$as_echo "$as_me: error: changes in the environment can compromise the build" >&2;}
-  as_fn_error $? "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5
+printf "%s\n" "$as_me: error: changes in the environment can compromise the build" >&2;}
+  as_fn_error $? "run \`${MAKE-make} distclean' and/or \`rm $cache_file'
+	    and start over" "$LINENO" 5
 fi
 ## -------------------- ##
 ## Main body of script. ##
@@ -3073,17 +3454,18 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
-$as_echo_n "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable maintainer-specific portions of Makefiles" >&5
+printf %s "checking whether to enable maintainer-specific portions of Makefiles... " >&6; }
     # Check whether --enable-maintainer-mode was given.
-if test "${enable_maintainer_mode+set}" = set; then :
+if test ${enable_maintainer_mode+y}
+then :
   enableval=$enable_maintainer_mode; USE_MAINTAINER_MODE=$enableval
-else
+else $as_nop
   USE_MAINTAINER_MODE=no
 fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
-$as_echo "$USE_MAINTAINER_MODE" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $USE_MAINTAINER_MODE" >&5
+printf "%s\n" "$USE_MAINTAINER_MODE" >&6; }
    if test $USE_MAINTAINER_MODE = yes; then
   MAINTAINER_MODE_TRUE=
   MAINTAINER_MODE_FALSE='#'
@@ -3096,7 +3478,8 @@
 
 
 # Check whether --enable-silent-rules was given.
-if test "${enable_silent_rules+set}" = set; then :
+if test ${enable_silent_rules+y}
+then :
   enableval=$enable_silent_rules;
 fi
 
@@ -3106,12 +3489,13 @@
     *) AM_DEFAULT_VERBOSITY=0;;
 esac
 am_make=${MAKE-make}
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
-$as_echo_n "checking whether $am_make supports nested variables... " >&6; }
-if ${am_cv_make_support_nested_variables+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  if $as_echo 'TRUE=$(BAR$(V))
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $am_make supports nested variables" >&5
+printf %s "checking whether $am_make supports nested variables... " >&6; }
+if test ${am_cv_make_support_nested_variables+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if printf "%s\n" 'TRUE=$(BAR$(V))
 BAR0=false
 BAR1=true
 V=1
@@ -3123,8 +3507,8 @@
   am_cv_make_support_nested_variables=no
 fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
-$as_echo "$am_cv_make_support_nested_variables" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_make_support_nested_variables" >&5
+printf "%s\n" "$am_cv_make_support_nested_variables" >&6; }
 if test $am_cv_make_support_nested_variables = yes; then
     AM_V='$(V)'
   AM_DEFAULT_V='$(AM_DEFAULT_VERBOSITY)'
@@ -3136,11 +3520,12 @@
 
 
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable debug build options" >&5
-$as_echo_n "checking whether to enable debug build options... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable debug build options" >&5
+printf %s "checking whether to enable debug build options... " >&6; }
   OPT_DEBUG_BUILD="default"
   # Check whether --enable-debug was given.
-if test "${enable_debug+set}" = set; then :
+if test ${enable_debug+y}
+then :
   enableval=$enable_debug; OPT_DEBUG_BUILD=$enableval
 fi
 
@@ -3154,52 +3539,54 @@
     *)
             want_debug="yes"
 
-$as_echo "#define DEBUGBUILD 1" >>confdefs.h
+printf "%s\n" "#define DEBUGBUILD 1" >>confdefs.h
 
       ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_debug" >&5
-$as_echo "$want_debug" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $want_debug" >&5
+printf "%s\n" "$want_debug" >&6; }
 
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable compiler optimizer" >&5
-$as_echo_n "checking whether to enable compiler optimizer... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable compiler optimizer" >&5
+printf %s "checking whether to enable compiler optimizer... " >&6; }
   OPT_COMPILER_OPTIMIZE="default"
   # Check whether --enable-optimize was given.
-if test "${enable_optimize+set}" = set; then :
+if test ${enable_optimize+y}
+then :
   enableval=$enable_optimize; OPT_COMPILER_OPTIMIZE=$enableval
 fi
 
   case "$OPT_COMPILER_OPTIMIZE" in
     no)
                               want_optimize="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
     default)
                                                                         if test "$want_debug" = "yes"; then
         want_optimize="assume_no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed) no" >&5
-$as_echo "(assumed) no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (assumed) no" >&5
+printf "%s\n" "(assumed) no" >&6; }
       else
         want_optimize="assume_yes"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
-$as_echo "(assumed) yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
+printf "%s\n" "(assumed) yes" >&6; }
       fi
       ;;
     *)
                               want_optimize="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ;;
   esac
 
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable strict compiler warnings" >&5
-$as_echo_n "checking whether to enable strict compiler warnings... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable strict compiler warnings" >&5
+printf %s "checking whether to enable strict compiler warnings... " >&6; }
   OPT_COMPILER_WARNINGS="default"
   # Check whether --enable-warnings was given.
-if test "${enable_warnings+set}" = set; then :
+if test ${enable_warnings+y}
+then :
   enableval=$enable_warnings; OPT_COMPILER_WARNINGS=$enableval
 fi
 
@@ -3214,15 +3601,16 @@
             want_warnings="yes"
       ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_warnings" >&5
-$as_echo "$want_warnings" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $want_warnings" >&5
+printf "%s\n" "$want_warnings" >&6; }
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable compiler warnings as errors" >&5
-$as_echo_n "checking whether to enable compiler warnings as errors... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable compiler warnings as errors" >&5
+printf %s "checking whether to enable compiler warnings as errors... " >&6; }
   OPT_COMPILER_WERROR="default"
   # Check whether --enable-werror was given.
-if test "${enable_werror+set}" = set; then :
+if test ${enable_werror+y}
+then :
   enableval=$enable_werror; OPT_COMPILER_WERROR=$enableval
 fi
 
@@ -3237,34 +3625,35 @@
             want_werror="yes"
       ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_werror" >&5
-$as_echo "$want_werror" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $want_werror" >&5
+printf "%s\n" "$want_werror" >&6; }
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable curl debug memory tracking" >&5
-$as_echo_n "checking whether to enable curl debug memory tracking... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable curl debug memory tracking" >&5
+printf %s "checking whether to enable curl debug memory tracking... " >&6; }
   OPT_CURLDEBUG_BUILD="default"
   # Check whether --enable-curldebug was given.
-if test "${enable_curldebug+set}" = set; then :
+if test ${enable_curldebug+y}
+then :
   enableval=$enable_curldebug; OPT_CURLDEBUG_BUILD=$enableval
 fi
 
   case "$OPT_CURLDEBUG_BUILD" in
     no)
             want_curldebug="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
     default)
                                           if test "$want_debug" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
-$as_echo "(assumed) yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
+printf "%s\n" "(assumed) yes" >&6; }
 
-$as_echo "#define CURLDEBUG 1" >>confdefs.h
+printf "%s\n" "#define CURLDEBUG 1" >>confdefs.h
 
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       fi
       want_curldebug_assumed="yes"
       want_curldebug="$want_debug"
@@ -3272,51 +3661,48 @@
     *)
                                                       want_curldebug="yes"
 
-$as_echo "#define CURLDEBUG 1" >>confdefs.h
+printf "%s\n" "#define CURLDEBUG 1" >>confdefs.h
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable hiding of library internal symbols" >&5
-$as_echo_n "checking whether to enable hiding of library internal symbols... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable hiding of library internal symbols" >&5
+printf %s "checking whether to enable hiding of library internal symbols... " >&6; }
   OPT_SYMBOL_HIDING="default"
   # Check whether --enable-symbol-hiding was given.
-if test "${enable_symbol_hiding+set}" = set; then :
+if test ${enable_symbol_hiding+y}
+then :
   enableval=$enable_symbol_hiding; OPT_SYMBOL_HIDING=$enableval
 fi
 
-  # Check whether --enable-hidden-symbols was given.
-if test "${enable_hidden_symbols+set}" = set; then :
-  enableval=$enable_hidden_symbols; OPT_SYMBOL_HIDING=$enableval
-fi
-
   case "$OPT_SYMBOL_HIDING" in
     no)
                               want_symbol_hiding="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
     default)
                   want_symbol_hiding="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ;;
     *)
                         want_symbol_hiding="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable c-ares for DNS lookups" >&5
-$as_echo_n "checking whether to enable c-ares for DNS lookups... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable c-ares for DNS lookups" >&5
+printf %s "checking whether to enable c-ares for DNS lookups... " >&6; }
   OPT_ARES="default"
   # Check whether --enable-ares was given.
-if test "${enable_ares+set}" = set; then :
+if test ${enable_ares+y}
+then :
   enableval=$enable_ares; OPT_ARES=$enableval
 fi
 
@@ -3334,42 +3720,44 @@
       fi
       ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_ares" >&5
-$as_echo "$want_ares" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $want_ares" >&5
+printf "%s\n" "$want_ares" >&6; }
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to disable dependency on -lrt" >&5
-$as_echo_n "checking whether to disable dependency on -lrt... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to disable dependency on -lrt" >&5
+printf %s "checking whether to disable dependency on -lrt... " >&6; }
   OPT_RT="default"
   # Check whether --enable-rt was given.
-if test "${enable_rt+set}" = set; then :
+if test ${enable_rt+y}
+then :
   enableval=$enable_rt; OPT_RT=$enableval
 fi
 
   case "$OPT_RT" in
     no)
             dontwant_rt="yes"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ;;
     default)
             dontwant_rt="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed no)" >&5
-$as_echo "(assumed no)" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (assumed no)" >&5
+printf "%s\n" "(assumed no)" >&6; }
       ;;
     *)
             dontwant_rt="no"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
   esac
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable ECH support" >&5
-$as_echo_n "checking whether to enable ECH support... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable ECH support" >&5
+printf %s "checking whether to enable ECH support... " >&6; }
   OPT_ECH="default"
   # Check whether --enable-ech was given.
-if test "${enable_ech+set}" = set; then :
+if test ${enable_ech+y}
+then :
   enableval=$enable_ech; OPT_ECH=$enableval
 fi
 
@@ -3377,21 +3765,21 @@
     no)
             want_ech="no"
       curl_ech_msg="no      (--enable-ech)"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
     default)
             want_ech="no"
       curl_ech_msg="no      (--enable-ech)"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
     *)
             want_ech="yes"
       curl_ech_msg="enabled (--disable-ech)"
       experimental="ech"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ;;
   esac
 
@@ -3414,15 +3802,15 @@
 if test -z "$PATH_SEPARATOR"; then
   as_fn_error $? "PATH_SEPARATOR not set (internal or config.site problem)" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for path separator" >&5
-$as_echo_n "checking for path separator... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $PATH_SEPARATOR" >&5
-$as_echo "$PATH_SEPARATOR" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for path separator" >&5
+printf %s "checking for path separator... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PATH_SEPARATOR" >&5
+printf "%s\n" "$PATH_SEPARATOR" >&6; }
 if test "x$PATH_SEPARATOR" != "x$xc_PATH_SEPARATOR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for initial path separator" >&5
-$as_echo_n "checking for initial path separator... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_PATH_SEPARATOR" >&5
-$as_echo "$xc_PATH_SEPARATOR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for initial path separator" >&5
+printf %s "checking for initial path separator... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_PATH_SEPARATOR" >&5
+printf "%s\n" "$xc_PATH_SEPARATOR" >&6; }
   as_fn_error $? "path separator mismatch (internal or config.site problem)" "$LINENO" 5
 fi
 
@@ -3436,11 +3824,12 @@
 if test -z "$SED"; then
     # Extract the first word of "sed", so it can be a program name with args.
 set dummy sed; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $SED in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_SED="$SED" # Let the user override the test with a path.
@@ -3451,11 +3840,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_SED="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3468,11 +3861,11 @@
 fi
 SED=$ac_cv_path_SED
 if test -n "$SED"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5
-$as_echo "$SED" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $SED" >&5
+printf "%s\n" "$SED" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3485,11 +3878,12 @@
 if test -z "$GREP"; then
     # Extract the first word of "grep", so it can be a program name with args.
 set dummy grep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_GREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $GREP in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_GREP="$GREP" # Let the user override the test with a path.
@@ -3500,11 +3894,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_GREP="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_GREP="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3517,11 +3915,11 @@
 fi
 GREP=$ac_cv_path_GREP
 if test -n "$GREP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GREP" >&5
-$as_echo "$GREP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GREP" >&5
+printf "%s\n" "$GREP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3533,19 +3931,20 @@
 
 if test -z "$EGREP"; then
     if echo a | ($GREP -E '(a|b)') >/dev/null 2>&1; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+printf %s "checking for egrep... " >&6; }
     EGREP="$GREP -E"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
-$as_echo "$EGREP" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
+printf "%s\n" "$EGREP" >&6; }
   else
     # Extract the first word of "egrep", so it can be a program name with args.
 set dummy egrep; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_EGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $EGREP in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_EGREP="$EGREP" # Let the user override the test with a path.
@@ -3556,11 +3955,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_EGREP="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_EGREP="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3573,11 +3976,11 @@
 fi
 EGREP=$ac_cv_path_EGREP
 if test -n "$EGREP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
-$as_echo "$EGREP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $EGREP" >&5
+printf "%s\n" "$EGREP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3592,11 +3995,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ar", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $AR in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_AR="$AR" # Let the user override the test with a path.
@@ -3607,11 +4011,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_AR="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_AR="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3623,11 +4031,11 @@
 fi
 AR=$ac_cv_path_AR
 if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+printf "%s\n" "$AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -3636,11 +4044,12 @@
   ac_pt_AR=$AR
   # Extract the first word of "ar", so it can be a program name with args.
 set dummy ar; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_AR in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_AR="$ac_pt_AR" # Let the user override the test with a path.
@@ -3651,11 +4060,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_AR="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_AR="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -3667,11 +4080,11 @@
 fi
 ac_pt_AR=$ac_cv_path_ac_pt_AR
 if test -n "$ac_pt_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_AR" >&5
-$as_echo "$ac_pt_AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_AR" >&5
+printf "%s\n" "$ac_pt_AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_AR" = x; then
@@ -3679,8 +4092,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     AR=$ac_pt_AR
@@ -3719,10 +4132,10 @@
     esac
   done
   if test $xc_bad_var_libs = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using LIBS: $LIBS" >&5
-$as_echo "$as_me: using LIBS: $LIBS" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: LIBS note: LIBS should only be used to specify libraries (-lname)." >&5
-$as_echo "$as_me: LIBS note: LIBS should only be used to specify libraries (-lname)." >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using LIBS: $LIBS" >&5
+printf "%s\n" "$as_me: using LIBS: $LIBS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: LIBS note: LIBS should only be used to specify libraries (-lname)." >&5
+printf "%s\n" "$as_me: LIBS note: LIBS should only be used to specify libraries (-lname)." >&6;}
   fi
 
 
@@ -3744,26 +4157,26 @@
     esac
   done
   if test $xc_bad_var_ldflags = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using LDFLAGS: $LDFLAGS" >&5
-$as_echo "$as_me: using LDFLAGS: $LDFLAGS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using LDFLAGS: $LDFLAGS" >&5
+printf "%s\n" "$as_me: using LDFLAGS: $LDFLAGS" >&6;}
     xc_bad_var_msg="LDFLAGS note: LDFLAGS should only be used to specify linker flags, not"
     for xc_word in $LDFLAGS; do
       case "$xc_word" in
         -D*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -U*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -I*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -l* | --library=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
           ;;
       esac
     done
@@ -3785,22 +4198,22 @@
     esac
   done
   if test $xc_bad_var_cppflags = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using CPPFLAGS: $CPPFLAGS" >&5
-$as_echo "$as_me: using CPPFLAGS: $CPPFLAGS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using CPPFLAGS: $CPPFLAGS" >&5
+printf "%s\n" "$as_me: using CPPFLAGS: $CPPFLAGS" >&6;}
     xc_bad_var_msg="CPPFLAGS note: CPPFLAGS should only be used to specify C preprocessor flags, not"
     for xc_word in $CPPFLAGS; do
       case "$xc_word" in
         -rpath*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -L* | --library-path=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -l* | --library=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
           ;;
       esac
     done
@@ -3831,34 +4244,34 @@
     esac
   done
   if test $xc_bad_var_cflags = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using CFLAGS: $CFLAGS" >&5
-$as_echo "$as_me: using CFLAGS: $CFLAGS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using CFLAGS: $CFLAGS" >&5
+printf "%s\n" "$as_me: using CFLAGS: $CFLAGS" >&6;}
     xc_bad_var_msg="CFLAGS note: CFLAGS should only be used to specify C compiler flags, not"
     for xc_word in $CFLAGS; do
       case "$xc_word" in
         -D*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -U*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -I*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -rpath*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -L* | --library-path=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -l* | --library=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
           ;;
       esac
     done
@@ -3868,40 +4281,13 @@
      test $xc_bad_var_cflags = yes ||
      test $xc_bad_var_ldflags = yes ||
      test $xc_bad_var_cppflags = yes; then
-     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Continuing even with errors mentioned immediately above this line." >&5
-$as_echo "$as_me: WARNING: Continuing even with errors mentioned immediately above this line." >&2;}
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Continuing even with errors mentioned immediately above this line." >&5
+printf "%s\n" "$as_me: WARNING: Continuing even with errors mentioned immediately above this line." >&2;}
   fi
 
-ac_aux_dir=
-for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
-  if test -f "$ac_dir/install-sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install-sh -c"
-    break
-  elif test -f "$ac_dir/install.sh"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/install.sh -c"
-    break
-  elif test -f "$ac_dir/shtool"; then
-    ac_aux_dir=$ac_dir
-    ac_install_sh="$ac_aux_dir/shtool install -c"
-    break
-  fi
-done
-if test -z "$ac_aux_dir"; then
-  as_fn_error $? "cannot find install-sh, install.sh, or shtool in \"$srcdir\" \"$srcdir/..\" \"$srcdir/../..\"" "$LINENO" 5
-fi
-
-# These three variables are undocumented and unsupported,
-# and are intended to be withdrawn in a future Autoconf release.
-# They can cause serious problems if a builder's source tree is in a directory
-# whose full name contains unusual characters.
-ac_config_guess="$SHELL $ac_aux_dir/config.guess"  # Please don't use this var.
-ac_config_sub="$SHELL $ac_aux_dir/config.sub"  # Please don't use this var.
-ac_configure="$SHELL $ac_aux_dir/configure"  # Please don't use this var.
 
 
-# Find a good install program.  We prefer a C program (faster),
+  # Find a good install program.  We prefer a C program (faster),
 # so one script is as good as another.  But avoid the broken or
 # incompatible versions:
 # SysV /etc/install, /usr/sbin/install
@@ -3915,20 +4301,25 @@
 # OS/2's system install, which has a completely different semantic
 # ./install, which can be erroneously created by make from ./install.sh.
 # Reject install programs that cannot install multiple files.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
-$as_echo_n "checking for a BSD-compatible install... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5
+printf %s "checking for a BSD-compatible install... " >&6; }
 if test -z "$INSTALL"; then
-if ${ac_cv_path_install+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${ac_cv_path_install+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    # Account for people who put trailing slashes in PATH elements.
-case $as_dir/ in #((
-  ./ | .// | /[cC]/* | \
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    # Account for fact that we put trailing slashes in our PATH walk.
+case $as_dir in #((
+  ./ | /[cC]/* | \
   /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \
   ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \
   /usr/ucb/* ) ;;
@@ -3938,13 +4329,13 @@
     # by default.
     for ac_prog in ginstall scoinst install; do
       for ac_exec_ext in '' $ac_executable_extensions; do
-	if as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext"; then
+	if as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext"; then
 	  if test $ac_prog = install &&
-	    grep dspmsg "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+	    grep dspmsg "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # AIX install.  It has an incompatible calling convention.
 	    :
 	  elif test $ac_prog = install &&
-	    grep pwplus "$as_dir/$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
+	    grep pwplus "$as_dir$ac_prog$ac_exec_ext" >/dev/null 2>&1; then
 	    # program-specific install script used by HP pwplus--don't use.
 	    :
 	  else
@@ -3952,12 +4343,12 @@
 	    echo one > conftest.one
 	    echo two > conftest.two
 	    mkdir conftest.dir
-	    if "$as_dir/$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir" &&
+	    if "$as_dir$ac_prog$ac_exec_ext" -c conftest.one conftest.two "`pwd`/conftest.dir/" &&
 	      test -s conftest.one && test -s conftest.two &&
 	      test -s conftest.dir/conftest.one &&
 	      test -s conftest.dir/conftest.two
 	    then
-	      ac_cv_path_install="$as_dir/$ac_prog$ac_exec_ext -c"
+	      ac_cv_path_install="$as_dir$ac_prog$ac_exec_ext -c"
 	      break 3
 	    fi
 	  fi
@@ -3973,7 +4364,7 @@
 rm -rf conftest.one conftest.two conftest.dir
 
 fi
-  if test "${ac_cv_path_install+set}" = set; then
+  if test ${ac_cv_path_install+y}; then
     INSTALL=$ac_cv_path_install
   else
     # As a last resort, use the slow shell script.  Don't cache a
@@ -3983,8 +4374,8 @@
     INSTALL=$ac_install_sh
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
-$as_echo "$INSTALL" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5
+printf "%s\n" "$INSTALL" >&6; }
 
 # Use test -z because SunOS4 sh mishandles braces in ${var-val}.
 # It thinks the first close brace ends the variable substitution.
@@ -3994,6 +4385,16 @@
 
 test -z "$INSTALL_DATA" && INSTALL_DATA='${INSTALL} -m 644'
 
+
+
+
+
+
+
+
+
+
+
 # Expand $ac_aux_dir to an absolute path.
 am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
@@ -4005,11 +4406,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -4017,11 +4419,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4032,11 +4438,11 @@
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4045,11 +4451,12 @@
   ac_ct_CC=$CC
   # Extract the first word of "gcc", so it can be a program name with args.
 set dummy gcc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -4057,11 +4464,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="gcc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4072,11 +4483,11 @@
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_CC" = x; then
@@ -4084,8 +4495,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
@@ -4098,11 +4509,12 @@
           if test -n "$ac_tool_prefix"; then
     # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args.
 set dummy ${ac_tool_prefix}cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -4110,11 +4522,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="${ac_tool_prefix}cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4125,11 +4541,11 @@
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4138,11 +4554,12 @@
 if test -z "$CC"; then
   # Extract the first word of "cc", so it can be a program name with args.
 set dummy cc; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -4151,15 +4568,19 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    if test "$as_dir$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then
        ac_prog_rejected=yes
        continue
      fi
     ac_cv_prog_CC="cc"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4175,18 +4596,18 @@
     # However, it has the same basename, so the bogon will be chosen
     # first if we set CC to just the basename; use the full file name.
     shift
-    ac_cv_prog_CC="$as_dir/$ac_word${1+' '}$@"
+    ac_cv_prog_CC="$as_dir$ac_word${1+' '}$@"
   fi
 fi
 fi
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4197,11 +4618,12 @@
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$CC"; then
   ac_cv_prog_CC="$CC" # Let the user override the test.
 else
@@ -4209,11 +4631,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_CC="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4224,11 +4650,11 @@
 fi
 CC=$ac_cv_prog_CC
 if test -n "$CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
-$as_echo "$CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4241,11 +4667,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_CC"; then
   ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
 else
@@ -4253,11 +4680,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_CC="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -4268,11 +4699,11 @@
 fi
 ac_ct_CC=$ac_cv_prog_ac_ct_CC
 if test -n "$ac_ct_CC"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
-$as_echo "$ac_ct_CC" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -4284,8 +4715,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     CC=$ac_ct_CC
@@ -4293,25 +4724,129 @@
 fi
 
 fi
+if test -z "$CC"; then
+  if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}clang", so it can be a program name with args.
+set dummy ${ac_tool_prefix}clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$CC"; then
+  ac_cv_prog_CC="$CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_CC="${ac_tool_prefix}clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+CC=$ac_cv_prog_CC
+if test -n "$CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CC" >&5
+printf "%s\n" "$CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
 
 
-test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+fi
+if test -z "$ac_cv_prog_CC"; then
+  ac_ct_CC=$CC
+  # Extract the first word of "clang", so it can be a program name with args.
+set dummy clang; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  if test -n "$ac_ct_CC"; then
+  ac_cv_prog_ac_ct_CC="$ac_ct_CC" # Let the user override the test.
+else
+as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+for as_dir in $PATH
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_prog_ac_ct_CC="clang"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+fi
+fi
+ac_ct_CC=$ac_cv_prog_ac_ct_CC
+if test -n "$ac_ct_CC"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5
+printf "%s\n" "$ac_ct_CC" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_ct_CC" = x; then
+    CC=""
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    CC=$ac_ct_CC
+  fi
+else
+  CC="$ac_cv_prog_CC"
+fi
+
+fi
+
+
+test -z "$CC" && { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "no acceptable C compiler found in \$PATH
 See \`config.log' for more details" "$LINENO" 5; }
 
 # Provide some information about the compiler.
-$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
+printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5
 set X $ac_compile
 ac_compiler=$2
-for ac_option in --version -v -V -qversion; do
+for ac_option in --version -v -V -qversion -version; do
   { { ac_try="$ac_compiler $ac_option >&5"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compiler $ac_option >&5") 2>conftest.err
   ac_status=$?
   if test -s conftest.err; then
@@ -4321,7 +4856,7 @@
     cat conftest.er1 >&5
   fi
   rm -f conftest.er1 conftest.err
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 done
 
@@ -4340,9 +4875,9 @@
 # Try to create an executable without -o first, disregard a.out.
 # It will help us diagnose broken compilers, and finding out an intuition
 # of exeext.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
-$as_echo_n "checking whether the C compiler works... " >&6; }
-ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5
+printf %s "checking whether the C compiler works... " >&6; }
+ac_link_default=`printf "%s\n" "$ac_link" | sed 's/ -o *conftest[^ ]*//'`
 
 # The possible output files:
 ac_files="a.out conftest.exe conftest a.exe a_out.exe b.out conftest.*"
@@ -4363,11 +4898,12 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link_default") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # Autoconf-2.13 could set the ac_cv_exeext variable to `no'.
 # So ignore a value of `no', otherwise this would lead to `EXEEXT = no'
 # in a Makefile.  We should not override ac_cv_exeext if it was cached,
@@ -4384,7 +4920,7 @@
 	# certainly right.
 	break;;
     *.* )
-	if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no;
+	if test ${ac_cv_exeext+y} && test "$ac_cv_exeext" != no;
 	then :; else
 	   ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'`
 	fi
@@ -4400,44 +4936,46 @@
 done
 test "$ac_cv_exeext" = no && ac_cv_exeext=
 
-else
+else $as_nop
   ac_file=''
 fi
-if test -z "$ac_file"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-$as_echo "$as_me: failed program was:" >&5
+if test -z "$ac_file"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error 77 "C compiler cannot create executables
 See \`config.log' for more details" "$LINENO" 5; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
-$as_echo_n "checking for C compiler default output file name... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
-$as_echo "$ac_file" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5
+printf %s "checking for C compiler default output file name... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5
+printf "%s\n" "$ac_file" >&6; }
 ac_exeext=$ac_cv_exeext
 
 rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
-$as_echo_n "checking for suffix of executables... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5
+printf %s "checking for suffix of executables... " >&6; }
 if { { ac_try="$ac_link"
 case "(($ac_try" in
   *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;;
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   # If both `conftest.exe' and `conftest' are `present' (well, observable)
 # catch `conftest.exe'.  For instance with Cygwin, `ls conftest' will
 # work properly (i.e., refer to `conftest.exe'), while it won't with
@@ -4451,15 +4989,15 @@
     * ) break;;
   esac
 done
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of executables: cannot compile and link
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest conftest$ac_cv_exeext
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
-$as_echo "$ac_cv_exeext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5
+printf "%s\n" "$ac_cv_exeext" >&6; }
 
 rm -f conftest.$ac_ext
 EXEEXT=$ac_cv_exeext
@@ -4479,8 +5017,8 @@
 ac_clean_files="$ac_clean_files conftest.out"
 # Check that the compiler produces executables we can run.  If not, either
 # the compiler is broken, or we cross compile.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
-$as_echo_n "checking whether we are cross compiling... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5
+printf %s "checking whether we are cross compiling... " >&6; }
 if test "$cross_compiling" != yes; then
   { { ac_try="$ac_link"
 case "(($ac_try" in
@@ -4488,10 +5026,10 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_link") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
   if { ac_try='./conftest$ac_cv_exeext'
   { { case "(($ac_try" in
@@ -4499,34 +5037,35 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_try") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; }; then
     cross_compiling=no
   else
     if test "$cross_compiling" = maybe; then
 	cross_compiling=yes
     else
-	{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
-as_fn_error $? "cannot run C compiled programs.
+	{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error 77 "cannot run C compiled programs.
 If you meant to cross compile, use \`--host'.
 See \`config.log' for more details" "$LINENO" 5; }
     fi
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
-$as_echo "$cross_compiling" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5
+printf "%s\n" "$cross_compiling" >&6; }
 
 rm -f conftest.$ac_ext conftest$ac_cv_exeext conftest.out
 ac_clean_files=$ac_clean_files_save
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
-$as_echo_n "checking for suffix of object files... " >&6; }
-if ${ac_cv_objext+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5
+printf %s "checking for suffix of object files... " >&6; }
+if test ${ac_cv_objext+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -4544,11 +5083,12 @@
   *) ac_try_echo=$ac_try;;
 esac
 eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\""
-$as_echo "$ac_try_echo"; } >&5
+printf "%s\n" "$ac_try_echo"; } >&5
   (eval "$ac_compile") 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; }; then :
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  test $ac_status = 0; }
+then :
   for ac_file in conftest.o conftest.obj conftest.*; do
   test -f "$ac_file" || continue;
   case $ac_file in
@@ -4557,26 +5097,27 @@
        break;;
   esac
 done
-else
-  $as_echo "$as_me: failed program was:" >&5
+else $as_nop
+  printf "%s\n" "$as_me: failed program was:" >&5
 sed 's/^/| /' conftest.$ac_ext >&5
 
-{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+{ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot compute suffix of object files: cannot compile
 See \`config.log' for more details" "$LINENO" 5; }
 fi
 rm -f conftest.$ac_cv_objext conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
-$as_echo "$ac_cv_objext" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5
+printf "%s\n" "$ac_cv_objext" >&6; }
 OBJEXT=$ac_cv_objext
 ac_objext=$OBJEXT
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5
-$as_echo_n "checking whether we are using the GNU C compiler... " >&6; }
-if ${ac_cv_c_compiler_gnu+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the compiler supports GNU C" >&5
+printf %s "checking whether the compiler supports GNU C... " >&6; }
+if test ${ac_cv_c_compiler_gnu+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -4590,29 +5131,33 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_compiler_gnu=yes
-else
+else $as_nop
   ac_compiler_gnu=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 ac_cv_c_compiler_gnu=$ac_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
-$as_echo "$ac_cv_c_compiler_gnu" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5
+printf "%s\n" "$ac_cv_c_compiler_gnu" >&6; }
+ac_compiler_gnu=$ac_cv_c_compiler_gnu
+
 if test $ac_compiler_gnu = yes; then
   GCC=yes
 else
   GCC=
 fi
-ac_test_CFLAGS=${CFLAGS+set}
+ac_test_CFLAGS=${CFLAGS+y}
 ac_save_CFLAGS=$CFLAGS
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
-$as_echo_n "checking whether $CC accepts -g... " >&6; }
-if ${ac_cv_prog_cc_g+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+printf %s "checking whether $CC accepts -g... " >&6; }
+if test ${ac_cv_prog_cc_g+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_save_c_werror_flag=$ac_c_werror_flag
    ac_c_werror_flag=yes
    ac_cv_prog_cc_g=no
@@ -4627,9 +5172,10 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
-else
+else $as_nop
   CFLAGS=""
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -4641,9 +5187,10 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-else
+else $as_nop
   ac_c_werror_flag=$ac_save_c_werror_flag
 	 CFLAGS="-g"
 	 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -4656,19 +5203,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_g=yes
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
    ac_c_werror_flag=$ac_save_c_werror_flag
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
-$as_echo "$ac_cv_prog_cc_g" >&6; }
-if test "$ac_test_CFLAGS" = set; then
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5
+printf "%s\n" "$ac_cv_prog_cc_g" >&6; }
+if test $ac_test_CFLAGS; then
   CFLAGS=$ac_save_CFLAGS
 elif test $ac_cv_prog_cc_g = yes; then
   if test "$GCC" = yes; then
@@ -4683,93 +5231,144 @@
     CFLAGS=
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5
-$as_echo_n "checking for $CC option to accept ISO C89... " >&6; }
-if ${ac_cv_prog_cc_c89+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+ac_prog_cc_stdc=no
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C11 features" >&5
+printf %s "checking for $CC option to enable C11 features... " >&6; }
+if test ${ac_cv_prog_cc_c11+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c11=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c11_program
+_ACEOF
+for ac_arg in '' -std=gnu11
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c11=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c11" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
+
+if test "x$ac_cv_prog_cc_c11" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c11" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c11" >&5
+printf "%s\n" "$ac_cv_prog_cc_c11" >&6; }
+     CC="$CC $ac_cv_prog_cc_c11"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c11
+  ac_prog_cc_stdc=c11
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C99 features" >&5
+printf %s "checking for $CC option to enable C99 features... " >&6; }
+if test ${ac_cv_prog_cc_c99+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_cv_prog_cc_c99=no
+ac_save_CC=$CC
+cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+$ac_c_conftest_c99_program
+_ACEOF
+for ac_arg in '' -std=gnu99 -std=c99 -c99 -qlanglvl=extc1x -qlanglvl=extc99 -AC99 -D_STDC_C99=
+do
+  CC="$ac_save_CC $ac_arg"
+  if ac_fn_c_try_compile "$LINENO"
+then :
+  ac_cv_prog_cc_c99=$ac_arg
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam
+  test "x$ac_cv_prog_cc_c99" != "xno" && break
+done
+rm -f conftest.$ac_ext
+CC=$ac_save_CC
+fi
+
+if test "x$ac_cv_prog_cc_c99" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c99" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c99" >&5
+printf "%s\n" "$ac_cv_prog_cc_c99" >&6; }
+     CC="$CC $ac_cv_prog_cc_c99"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c99
+  ac_prog_cc_stdc=c99
+fi
+fi
+if test x$ac_prog_cc_stdc = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC option to enable C89 features" >&5
+printf %s "checking for $CC option to enable C89 features... " >&6; }
+if test ${ac_cv_prog_cc_c89+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_prog_cc_c89=no
 ac_save_CC=$CC
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#include <stdarg.h>
-#include <stdio.h>
-struct stat;
-/* Most of the following tests are stolen from RCS 5.7's src/conf.sh.  */
-struct buf { int x; };
-FILE * (*rcsopen) (struct buf *, struct stat *, int);
-static char *e (p, i)
-     char **p;
-     int i;
-{
-  return p[i];
-}
-static char *f (char * (*g) (char **, int), char **p, ...)
-{
-  char *s;
-  va_list v;
-  va_start (v,p);
-  s = g (p, va_arg (v,int));
-  va_end (v);
-  return s;
-}
-
-/* OSF 4.0 Compaq cc is some sort of almost-ANSI by default.  It has
-   function prototypes and stuff, but not '\xHH' hex character constants.
-   These don't provoke an error unfortunately, instead are silently treated
-   as 'x'.  The following induces an error, until -std is added to get
-   proper ANSI mode.  Curiously '\x00'!='x' always comes out true, for an
-   array size at least.  It's necessary to write '\x00'==0 to get something
-   that's true only with -std.  */
-int osf4_cc_array ['\x00' == 0 ? 1 : -1];
-
-/* IBM C 6 for AIX is almost-ANSI by default, but it replaces macro parameters
-   inside strings and character constants.  */
-#define FOO(x) 'x'
-int xlc6_cc_array[FOO(a) == 'x' ? 1 : -1];
-
-int test (int i, double x);
-struct s1 {int (*f) (int a);};
-struct s2 {int (*f) (double a);};
-int pairnames (int, char **, FILE *(*)(struct buf *, struct stat *, int), int, int);
-int argc;
-char **argv;
-int main (void)
-{
-return f (e, argv, 0) != argv[0]  ||  f (e, argv, 1) != argv[1];
- ;
- return 0;
-}
+$ac_c_conftest_c89_program
 _ACEOF
-for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std \
-	-Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
+for ac_arg in '' -qlanglvl=extc89 -qlanglvl=ansi -std -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__"
 do
   CC="$ac_save_CC $ac_arg"
-  if ac_fn_c_try_compile "$LINENO"; then :
+  if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_prog_cc_c89=$ac_arg
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
   test "x$ac_cv_prog_cc_c89" != "xno" && break
 done
 rm -f conftest.$ac_ext
 CC=$ac_save_CC
-
 fi
-# AC_CACHE_VAL
-case "x$ac_cv_prog_cc_c89" in
-  x)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
-$as_echo "none needed" >&6; } ;;
-  xno)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
-$as_echo "unsupported" >&6; } ;;
-  *)
-    CC="$CC $ac_cv_prog_cc_c89"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
-$as_echo "$ac_cv_prog_cc_c89" >&6; } ;;
-esac
-if test "x$ac_cv_prog_cc_c89" != xno; then :
 
+if test "x$ac_cv_prog_cc_c89" = xno
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5
+printf "%s\n" "unsupported" >&6; }
+else $as_nop
+  if test "x$ac_cv_prog_cc_c89" = x
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none needed" >&5
+printf "%s\n" "none needed" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5
+printf "%s\n" "$ac_cv_prog_cc_c89" >&6; }
+     CC="$CC $ac_cv_prog_cc_c89"
+fi
+  ac_cv_prog_cc_stdc=$ac_cv_prog_cc_c89
+  ac_prog_cc_stdc=c89
+fi
 fi
 
 ac_ext=c
@@ -4778,16 +5377,18 @@
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
-ac_ext=c
+
+  ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
-$as_echo_n "checking whether $CC understands -c and -o together... " >&6; }
-if ${am_cv_prog_cc_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC understands -c and -o together" >&5
+printf %s "checking whether $CC understands -c and -o together... " >&6; }
+if test ${am_cv_prog_cc_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -4819,8 +5420,8 @@
   rm -f core conftest*
   unset am_i
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
-$as_echo "$am_cv_prog_cc_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_prog_cc_c_o" >&5
+printf "%s\n" "$am_cv_prog_cc_c_o" >&6; }
 if test "$am_cv_prog_cc_c_o" != yes; then
    # Losing compiler, so override with the script.
    # FIXME: It is wrong to rewrite CC.
@@ -4842,40 +5443,36 @@
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
 ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5'
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
-$as_echo_n "checking how to run the C preprocessor... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5
+printf %s "checking how to run the C preprocessor... " >&6; }
 # On Suns, sometimes $CPP names a directory.
 if test -n "$CPP" && test -d "$CPP"; then
   CPP=
 fi
 if test -z "$CPP"; then
-  if ${ac_cv_prog_CPP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-      # Double quotes because CPP needs to be expanded
-    for CPP in "$CC -E" "$CC -E -traditional-cpp" "/lib/cpp"
+  if test ${ac_cv_prog_CPP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+      # Double quotes because $CC needs to be expanded
+    for CPP in "$CC -E" "$CC -E -traditional-cpp" cpp /lib/cpp
     do
       ac_preproc_ok=false
 for ac_c_preproc_warn_flag in '' yes
 do
   # Use a header file that comes with gcc, so configuring glibc
   # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
+#include <limits.h>
 		     Syntax error
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
-else
+else $as_nop
   # Broken: fails on valid input.
 continue
 fi
@@ -4887,10 +5484,11 @@
 /* end confdefs.h.  */
 #include <ac_nonexistent.h>
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
   # Broken: success on invalid input.
 continue
-else
+else $as_nop
   # Passes both tests.
 ac_preproc_ok=:
 break
@@ -4900,7 +5498,8 @@
 done
 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
 rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
   break
 fi
 
@@ -4912,29 +5511,24 @@
 else
   ac_cv_prog_CPP=$CPP
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
-$as_echo "$CPP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5
+printf "%s\n" "$CPP" >&6; }
 ac_preproc_ok=false
 for ac_c_preproc_warn_flag in '' yes
 do
   # Use a header file that comes with gcc, so configuring glibc
   # with a fresh cross-compiler works.
-  # Prefer <limits.h> to <assert.h> if __STDC__ is defined, since
-  # <limits.h> exists even on freestanding compilers.
   # On the NeXT, cc -E runs the code through the compiler's parser,
   # not just through cpp. "Syntax error" is here to catch this case.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
-#ifdef __STDC__
-# include <limits.h>
-#else
-# include <assert.h>
-#endif
+#include <limits.h>
 		     Syntax error
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
-else
+else $as_nop
   # Broken: fails on valid input.
 continue
 fi
@@ -4946,10 +5540,11 @@
 /* end confdefs.h.  */
 #include <ac_nonexistent.h>
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
   # Broken: success on invalid input.
 continue
-else
+else $as_nop
   # Passes both tests.
 ac_preproc_ok=:
 break
@@ -4959,11 +5554,12 @@
 done
 # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped.
 rm -f conftest.i conftest.err conftest.$ac_ext
-if $ac_preproc_ok; then :
+if $ac_preproc_ok
+then :
 
-else
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+else $as_nop
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "C preprocessor \"$CPP\" fails sanity check
 See \`config.log' for more details" "$LINENO" 5; }
 fi
@@ -4986,11 +5582,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
+printf %s "checking for a sed that does not truncate output... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
             ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
      for ac_i in 1 2 3 4 5 6 7; do
        ac_script="$ac_script$as_nl$ac_script"
@@ -5004,10 +5601,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in sed gsed; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in sed gsed
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_SED="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_SED" || continue
 # Check for GNU ac_path_SED and select it if it is found.
   # Check for GNU $ac_path_SED
@@ -5016,13 +5618,13 @@
   ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo '' >> "conftest.nl"
+    printf "%s\n" '' >> "conftest.nl"
     "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -5050,30 +5652,32 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
+printf "%s\n" "$ac_cv_path_SED" >&6; }
  SED="$ac_cv_path_SED"
   rm -f conftest.sed
 
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for code coverage support" >&5
-$as_echo_n "checking for code coverage support... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for code coverage support" >&5
+printf %s "checking for code coverage support... " >&6; }
   coverage="no"
   curl_coverage_msg="disabled"
 
     # Check whether --enable-code-coverage was given.
-if test "${enable_code_coverage+set}" = set; then :
+if test ${enable_code_coverage+y}
+then :
   enableval=$enable_code_coverage; coverage="$enableval"
 fi
 
 
-    if  test "$GCC" != "yes" ; then :
+    if  test "$GCC" != "yes"
+then :
   coverage="no"
 fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $coverage" >&5
-$as_echo "$coverage" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $coverage" >&5
+printf "%s\n" "$coverage" >&6; }
 
   if test "x$coverage" = "xyes"; then
     curl_coverage_msg="enabled"
@@ -5081,11 +5685,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}gcov", so it can be a program name with args.
 set dummy ${ac_tool_prefix}gcov; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_GCOV+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_GCOV+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$GCOV"; then
   ac_cv_prog_GCOV="$GCOV" # Let the user override the test.
 else
@@ -5093,11 +5698,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_GCOV="${ac_tool_prefix}gcov"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5108,11 +5717,11 @@
 fi
 GCOV=$ac_cv_prog_GCOV
 if test -n "$GCOV"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GCOV" >&5
-$as_echo "$GCOV" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $GCOV" >&5
+printf "%s\n" "$GCOV" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5121,11 +5730,12 @@
   ac_ct_GCOV=$GCOV
   # Extract the first word of "gcov", so it can be a program name with args.
 set dummy gcov; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_GCOV+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_GCOV+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_GCOV"; then
   ac_cv_prog_ac_ct_GCOV="$ac_ct_GCOV" # Let the user override the test.
 else
@@ -5133,11 +5743,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_GCOV="gcov"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5148,11 +5762,11 @@
 fi
 ac_ct_GCOV=$ac_cv_prog_ac_ct_GCOV
 if test -n "$ac_ct_GCOV"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_GCOV" >&5
-$as_echo "$ac_ct_GCOV" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_GCOV" >&5
+printf "%s\n" "$ac_ct_GCOV" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_GCOV" = x; then
@@ -5160,8 +5774,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     GCOV=$ac_ct_GCOV
@@ -5175,11 +5789,12 @@
     fi
     # Extract the first word of "lcov", so it can be a program name with args.
 set dummy lcov; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_LCOV+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_LCOV+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$LCOV"; then
   ac_cv_prog_LCOV="$LCOV" # Let the user override the test.
 else
@@ -5187,11 +5802,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_LCOV="lcov"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5202,11 +5821,11 @@
 fi
 LCOV=$ac_cv_prog_LCOV
 if test -n "$LCOV"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LCOV" >&5
-$as_echo "$LCOV" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LCOV" >&5
+printf "%s\n" "$LCOV" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5222,8 +5841,8 @@
 
 am__api_version='1.16'
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
-$as_echo_n "checking whether build environment is sane... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build environment is sane" >&5
+printf %s "checking whether build environment is sane... " >&6; }
 # Reject unsafe characters in $srcdir or the absolute working directory
 # name.  Accept space and tab only in the latter.
 am_lf='
@@ -5277,8 +5896,8 @@
    as_fn_error $? "newly created file is older than distributed files!
 Check your system clock" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 # If we didn't sleep, we still need to ensure time stamps of config.status and
 # generated files are strictly newer.
 am_sleep_pid=
@@ -5297,9 +5916,10 @@
 # Double any \ or $.
 # By default was `s,x,x', remove it if useless.
 ac_script='s/[\\$]/&&/g;s/;s,x,x,$//'
-program_transform_name=`$as_echo "$program_transform_name" | sed "$ac_script"`
+program_transform_name=`printf "%s\n" "$program_transform_name" | sed "$ac_script"`
 
-if test x"${MISSING+set}" != xset; then
+
+  if test x"${MISSING+set}" != xset; then
   MISSING="\${SHELL} '$am_aux_dir/missing'"
 fi
 # Use eval to expand $SHELL
@@ -5307,8 +5927,8 @@
   am_missing_run="$MISSING "
 else
   am_missing_run=
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
-$as_echo "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: 'missing' script is too old or missing" >&5
+printf "%s\n" "$as_me: WARNING: 'missing' script is too old or missing" >&2;}
 fi
 
 if test x"${install_sh+set}" != xset; then
@@ -5328,11 +5948,12 @@
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$STRIP"; then
   ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 else
@@ -5340,11 +5961,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5355,11 +5980,11 @@
 fi
 STRIP=$ac_cv_prog_STRIP
 if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -5368,11 +5993,12 @@
   ac_ct_STRIP=$STRIP
   # Extract the first word of "strip", so it can be a program name with args.
 set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_STRIP"; then
   ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 else
@@ -5380,11 +6006,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5395,11 +6025,11 @@
 fi
 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_STRIP" = x; then
@@ -5407,8 +6037,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     STRIP=$ac_ct_STRIP
@@ -5420,25 +6050,31 @@
 fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a thread-safe mkdir -p" >&5
-$as_echo_n "checking for a thread-safe mkdir -p... " >&6; }
+
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a race-free mkdir -p" >&5
+printf %s "checking for a race-free mkdir -p... " >&6; }
 if test -z "$MKDIR_P"; then
-  if ${ac_cv_path_mkdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${ac_cv_path_mkdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
 for as_dir in $PATH$PATH_SEPARATOR/opt/sfw/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_prog in mkdir gmkdir; do
 	 for ac_exec_ext in '' $ac_executable_extensions; do
-	   as_fn_executable_p "$as_dir/$ac_prog$ac_exec_ext" || continue
-	   case `"$as_dir/$ac_prog$ac_exec_ext" --version 2>&1` in #(
-	     'mkdir (GNU coreutils) '* | \
-	     'mkdir (coreutils) '* | \
+	   as_fn_executable_p "$as_dir$ac_prog$ac_exec_ext" || continue
+	   case `"$as_dir$ac_prog$ac_exec_ext" --version 2>&1` in #(
+	     'mkdir ('*'coreutils) '* | \
+	     'BusyBox '* | \
 	     'mkdir (fileutils) '4.1*)
-	       ac_cv_path_mkdir=$as_dir/$ac_prog$ac_exec_ext
+	       ac_cv_path_mkdir=$as_dir$ac_prog$ac_exec_ext
 	       break 3;;
 	   esac
 	 done
@@ -5449,7 +6085,7 @@
 fi
 
   test -d ./--version && rmdir ./--version
-  if test "${ac_cv_path_mkdir+set}" = set; then
+  if test ${ac_cv_path_mkdir+y}; then
     MKDIR_P="$ac_cv_path_mkdir -p"
   else
     # As a last resort, use the slow shell script.  Don't cache a
@@ -5459,18 +6095,19 @@
     MKDIR_P="$ac_install_sh -d"
   fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
-$as_echo "$MKDIR_P" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MKDIR_P" >&5
+printf "%s\n" "$MKDIR_P" >&6; }
 
 for ac_prog in gawk mawk nawk awk
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AWK+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AWK+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AWK"; then
   ac_cv_prog_AWK="$AWK" # Let the user override the test.
 else
@@ -5478,11 +6115,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AWK="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -5493,24 +6134,25 @@
 fi
 AWK=$ac_cv_prog_AWK
 if test -n "$AWK"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
-$as_echo "$AWK" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AWK" >&5
+printf "%s\n" "$AWK" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
   test -n "$AWK" && break
 done
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
-$as_echo_n "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} sets \$(MAKE)" >&5
+printf %s "checking whether ${MAKE-make} sets \$(MAKE)... " >&6; }
 set x ${MAKE-make}
-ac_make=`$as_echo "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
-if eval \${ac_cv_prog_make_${ac_make}_set+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+ac_make=`printf "%s\n" "$2" | sed 's/+/p/g; s/[^a-zA-Z0-9_]/_/g'`
+if eval test \${ac_cv_prog_make_${ac_make}_set+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat >conftest.make <<\_ACEOF
 SHELL = /bin/sh
 all:
@@ -5526,12 +6168,12 @@
 rm -f conftest.make
 fi
 if eval test \$ac_cv_prog_make_${ac_make}_set = yes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   SET_MAKE=
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   SET_MAKE="MAKE=${MAKE-make}"
 fi
 
@@ -5548,8 +6190,8 @@
 
 ac_config_commands="$ac_config_commands depfiles"
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
-$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
+printf %s "checking whether ${MAKE-make} supports the include directive... " >&6; }
 cat > confinc.mk << 'END'
 am__doit:
 	@echo this is the am__doit target >confinc.out
@@ -5585,11 +6227,12 @@
   fi
 done
 rm -f confinc.* confmf.*
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
-$as_echo "${_am_result}" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
+printf "%s\n" "${_am_result}" >&6; }
 
 # Check whether --enable-dependency-tracking was given.
-if test "${enable_dependency_tracking+set}" = set; then :
+if test ${enable_dependency_tracking+y}
+then :
   enableval=$enable_dependency_tracking;
 fi
 
@@ -5636,14 +6279,10 @@
  VERSION='-'
 
 
-cat >>confdefs.h <<_ACEOF
-#define PACKAGE "$PACKAGE"
-_ACEOF
+printf "%s\n" "#define PACKAGE \"$PACKAGE\"" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define VERSION "$VERSION"
-_ACEOF
+printf "%s\n" "#define VERSION \"$VERSION\"" >>confdefs.h
 
 # Some tools Automake needs.
 
@@ -5685,11 +6324,12 @@
 
 depcc="$CC"   am_compiler_list=
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
-$as_echo_n "checking dependency style of $depcc... " >&6; }
-if ${am_cv_CC_dependencies_compiler_type+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dependency style of $depcc" >&5
+printf %s "checking dependency style of $depcc... " >&6; }
+if test ${am_cv_CC_dependencies_compiler_type+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$AMDEP_TRUE" && test -f "$am_depcomp"; then
   # We make a subdir and do the tests there.  Otherwise we can end up
   # making bogus files that we don't know about and never remove.  For
@@ -5796,8 +6436,8 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
-$as_echo "$am_cv_CC_dependencies_compiler_type" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $am_cv_CC_dependencies_compiler_type" >&5
+printf "%s\n" "$am_cv_CC_dependencies_compiler_type" >&6; }
 CCDEPMODE=depmode=$am_cv_CC_dependencies_compiler_type
 
  if
@@ -5811,6 +6451,20 @@
 fi
 
 
+# Variables for tags utilities; see am/tags.am
+if test -z "$CTAGS"; then
+  CTAGS=ctags
+fi
+
+if test -z "$ETAGS"; then
+  ETAGS=etags
+fi
+
+if test -z "$CSCOPE"; then
+  CSCOPE=cscope
+fi
+
+
 
 # POSIX will say in a future version that running "rm -f" with no argument
 # is OK; and we want to be able to make that assumption in our Makefile
@@ -5859,10 +6513,10 @@
 ## ------------------------------------- ##
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking curl version" >&5
-$as_echo_n "checking curl version... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CURLVERSION" >&5
-$as_echo "$CURLVERSION" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking curl version" >&5
+printf %s "checking curl version... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $CURLVERSION" >&5
+printf "%s\n" "$CURLVERSION" >&6; }
 
 
 
@@ -5905,7 +6559,7 @@
      curl_h3_msg="no      (--with-ngtcp2, --with-quiche)"
 
 enable_altsvc="yes"
-enable_hsts="yes"
+hsts="yes"
 
 INITIAL_LDFLAGS=$LDFLAGS
 INITIAL_LIBS=$LIBS
@@ -5913,7 +6567,8 @@
 OPT_SCHANNEL=no
 
 # Check whether --with-schannel was given.
-if test "${with_schannel+set}" = set; then :
+if test ${with_schannel+y}
+then :
   withval=$with_schannel; OPT_SCHANNEL=$withval
   TLSCHOICE="schannel"
 fi
@@ -5922,10 +6577,11 @@
 OPT_SECURETRANSPORT=no
 
 # Check whether --with-secure-transport was given.
-if test "${with_secure_transport+set}" = set; then :
+if test ${with_secure_transport+y}
+then :
   withval=$with_secure_transport; OPT_SECURETRANSPORT=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }Secure-Transport"
 
 fi
@@ -5934,10 +6590,11 @@
 OPT_AMISSL=no
 
 # Check whether --with-amissl was given.
-if test "${with_amissl+set}" = set; then :
+if test ${with_amissl+y}
+then :
   withval=$with_amissl; OPT_AMISSL=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }AmiSSL"
 fi
 
@@ -5946,21 +6603,23 @@
 ca="no"
 
 # Check whether --with-ssl was given.
-if test "${with_ssl+set}" = set; then :
+if test ${with_ssl+y}
+then :
   withval=$with_ssl; OPT_SSL=$withval
   OPT_OPENSSL=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }OpenSSL"
 fi
 
 
 
 # Check whether --with-openssl was given.
-if test "${with_openssl+set}" = set; then :
+if test ${with_openssl+y}
+then :
   withval=$with_openssl; OPT_OPENSSL=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }OpenSSL"
 fi
 
@@ -5968,10 +6627,11 @@
 OPT_GNUTLS=no
 
 # Check whether --with-gnutls was given.
-if test "${with_gnutls+set}" = set; then :
+if test ${with_gnutls+y}
+then :
   withval=$with_gnutls; OPT_GNUTLS=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }GnuTLS"
 fi
 
@@ -5979,10 +6639,11 @@
 OPT_MBEDTLS=no
 
 # Check whether --with-mbedtls was given.
-if test "${with_mbedtls+set}" = set; then :
+if test ${with_mbedtls+y}
+then :
   withval=$with_mbedtls; OPT_MBEDTLS=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }mbedTLS"
 fi
 
@@ -5990,10 +6651,11 @@
 OPT_WOLFSSL=no
 
 # Check whether --with-wolfssl was given.
-if test "${with_wolfssl+set}" = set; then :
+if test ${with_wolfssl+y}
+then :
   withval=$with_wolfssl; OPT_WOLFSSL=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }wolfSSL"
 fi
 
@@ -6001,10 +6663,11 @@
 OPT_MESALINK=no
 
 # Check whether --with-mesalink was given.
-if test "${with_mesalink+set}" = set; then :
+if test ${with_mesalink+y}
+then :
   withval=$with_mesalink; OPT_MESALINK=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }MesaLink"
 fi
 
@@ -6012,10 +6675,11 @@
 OPT_BEARSSL=no
 
 # Check whether --with-bearssl was given.
-if test "${with_bearssl+set}" = set; then :
+if test ${with_bearssl+y}
+then :
   withval=$with_bearssl; OPT_BEARSSL=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }BearSSL"
 fi
 
@@ -6023,10 +6687,11 @@
 OPT_RUSTLS=no
 
 # Check whether --with-rustls was given.
-if test "${with_rustls+set}" = set; then :
+if test ${with_rustls+y}
+then :
   withval=$with_rustls; OPT_RUSTLS=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }rustls"
 fi
 
@@ -6034,10 +6699,11 @@
 OPT_NSS=no
 
 # Check whether --with-nss was given.
-if test "${with_nss+set}" = set; then :
+if test ${with_nss+y}
+then :
   withval=$with_nss; OPT_NSS=$withval
   test -z "TLSCHOICE" || TLSCHOICE="${TLSCHOICE:+$TLSCHOICE
-else
+else $as_nop
   }NSS"
 fi
 
@@ -6065,32 +6731,36 @@
 
 
 # Check whether --with-darwinssl was given.
-if test "${with_darwinssl+set}" = set; then :
+if test ${with_darwinssl+y}
+then :
   withval=$with_darwinssl; as_fn_error $? "--with-darwin-ssl no longer works!" "$LINENO" 5
 fi
 
 
 
-# Make sure we can run config.sub.
-$SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 ||
-  as_fn_error $? "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
-$as_echo_n "checking build system type... " >&6; }
-if ${ac_cv_build+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+
+  # Make sure we can run config.sub.
+$SHELL "${ac_aux_dir}config.sub" sun4 >/dev/null 2>&1 ||
+  as_fn_error $? "cannot run $SHELL ${ac_aux_dir}config.sub" "$LINENO" 5
+
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking build system type" >&5
+printf %s "checking build system type... " >&6; }
+if test ${ac_cv_build+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_build_alias=$build_alias
 test "x$ac_build_alias" = x &&
-  ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"`
+  ac_build_alias=`$SHELL "${ac_aux_dir}config.guess"`
 test "x$ac_build_alias" = x &&
   as_fn_error $? "cannot guess build type; you must specify one" "$LINENO" 5
-ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` ||
-  as_fn_error $? "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5
+ac_cv_build=`$SHELL "${ac_aux_dir}config.sub" $ac_build_alias` ||
+  as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $ac_build_alias failed" "$LINENO" 5
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
-$as_echo "$ac_cv_build" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5
+printf "%s\n" "$ac_cv_build" >&6; }
 case $ac_cv_build in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical build" "$LINENO" 5;;
@@ -6109,21 +6779,22 @@
 case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
-$as_echo_n "checking host system type... " >&6; }
-if ${ac_cv_host+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking host system type" >&5
+printf %s "checking host system type... " >&6; }
+if test ${ac_cv_host+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test "x$host_alias" = x; then
   ac_cv_host=$ac_cv_build
 else
-  ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` ||
-    as_fn_error $? "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5
+  ac_cv_host=`$SHELL "${ac_aux_dir}config.sub" $host_alias` ||
+    as_fn_error $? "$SHELL ${ac_aux_dir}config.sub $host_alias failed" "$LINENO" 5
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
-$as_echo "$ac_cv_host" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5
+printf "%s\n" "$ac_cv_host" >&6; }
 case $ac_cv_host in
 *-*-*) ;;
 *) as_fn_error $? "invalid value of canonical host" "$LINENO" 5;;
@@ -6143,9 +6814,7 @@
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define OS "${host}"
-_ACEOF
+printf "%s\n" "#define OS \"${host}\"" >>confdefs.h
 
 
 # Silence warning: ar: 'u' modifier ignored since 'D' is the default
@@ -6154,11 +6823,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
-$as_echo_n "checking for grep that handles long lines and -e... " >&6; }
-if ${ac_cv_path_GREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5
+printf %s "checking for grep that handles long lines and -e... " >&6; }
+if test ${ac_cv_path_GREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$GREP"; then
   ac_path_GREP_found=false
   # Loop through the user's path and test for each of PROGNAME-LIST
@@ -6166,10 +6836,15 @@
 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in grep ggrep; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in grep ggrep
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_GREP="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_GREP" || continue
 # Check for GNU ac_path_GREP and select it if it is found.
   # Check for GNU $ac_path_GREP
@@ -6178,13 +6853,13 @@
   ac_cv_path_GREP="$ac_path_GREP" ac_path_GREP_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo 'GREP' >> "conftest.nl"
+    printf "%s\n" 'GREP' >> "conftest.nl"
     "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -6212,16 +6887,17 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
-$as_echo "$ac_cv_path_GREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5
+printf "%s\n" "$ac_cv_path_GREP" >&6; }
  GREP="$ac_cv_path_GREP"
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
-$as_echo_n "checking for egrep... " >&6; }
-if ${ac_cv_path_EGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5
+printf %s "checking for egrep... " >&6; }
+if test ${ac_cv_path_EGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if echo a | $GREP -E '(a|b)' >/dev/null 2>&1
    then ac_cv_path_EGREP="$GREP -E"
    else
@@ -6232,10 +6908,15 @@
 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in egrep; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in egrep
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_EGREP="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_EGREP" || continue
 # Check for GNU ac_path_EGREP and select it if it is found.
   # Check for GNU $ac_path_EGREP
@@ -6244,13 +6925,13 @@
   ac_cv_path_EGREP="$ac_path_EGREP" ac_path_EGREP_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo 'EGREP' >> "conftest.nl"
+    printf "%s\n" 'EGREP' >> "conftest.nl"
     "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -6279,15 +6960,15 @@
 
    fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
-$as_echo "$ac_cv_path_EGREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5
+printf "%s\n" "$ac_cv_path_EGREP" >&6; }
  EGREP="$ac_cv_path_EGREP"
 
 
 
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if OS is AIX (to define _ALL_SOURCE)" >&5
-$as_echo_n "checking if OS is AIX (to define _ALL_SOURCE)... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if OS is AIX (to define _ALL_SOURCE)" >&5
+printf %s "checking if OS is AIX (to define _ALL_SOURCE)... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -6297,27 +6978,28 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "yes_this_is_aix" >/dev/null 2>&1; then :
+  $EGREP "yes_this_is_aix" >/dev/null 2>&1
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    $as_echo "#define _ALL_SOURCE 1" >>confdefs.h
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+    printf "%s\n" "#define _ALL_SOURCE 1" >>confdefs.h
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 
 
     #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is already defined" >&5
-$as_echo_n "checking if _THREAD_SAFE is already defined... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is already defined" >&5
+printf %s "checking if _THREAD_SAFE is already defined... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -6337,24 +7019,25 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tmp_thread_safe_initially_defined="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tmp_thread_safe_initially_defined="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   #
   if test "$tmp_thread_safe_initially_defined" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is actually needed" >&5
-$as_echo_n "checking if _THREAD_SAFE is actually needed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is actually needed" >&5
+printf %s "checking if _THREAD_SAFE is actually needed... " >&6; }
 
   case $host_os in
     aix[123].* | aix4.[012].*)
@@ -6369,21 +7052,21 @@
   esac
 
     if test "$tmp_need_thread_safe" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is onwards defined" >&5
-$as_echo_n "checking if _THREAD_SAFE is onwards defined... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if _THREAD_SAFE is onwards defined" >&5
+printf %s "checking if _THREAD_SAFE is onwards defined... " >&6; }
   if test "$tmp_thread_safe_initially_defined" = "yes" ||
     test "$tmp_need_thread_safe" = "yes"; then
 
 
-$as_echo "#define NEED_THREAD_SAFE 1" >>confdefs.h
+printf "%s\n" "#define NEED_THREAD_SAFE 1" >>confdefs.h
 
 cat >>confdefs.h <<_EOF
 #ifndef _THREAD_SAFE
@@ -6391,18 +7074,18 @@
 #endif
 _EOF
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
   #
 
 
     #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is already defined" >&5
-$as_echo_n "checking if _REENTRANT is already defined... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is already defined" >&5
+printf %s "checking if _REENTRANT is already defined... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -6422,24 +7105,25 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tmp_reentrant_initially_defined="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tmp_reentrant_initially_defined="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   #
   if test "$tmp_reentrant_initially_defined" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is actually needed" >&5
-$as_echo_n "checking if _REENTRANT is actually needed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is actually needed" >&5
+printf %s "checking if _REENTRANT is actually needed... " >&6; }
 
   case $host_os in
     solaris*)
@@ -6469,16 +7153,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
     tmp_errno="yes"
 
-else
+else $as_nop
 
     tmp_errno="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test "$tmp_errno" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6500,11 +7185,12 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       tmp_errno="errno_macro_defined"
 
-else
+else $as_nop
 
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6527,16 +7213,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
         tmp_errno="errno_macro_needs_reentrant"
         tmp_need_reentrant="yes"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
 
     fi
@@ -6571,16 +7258,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
     tmp_gmtime_r="yes"
 
-else
+else $as_nop
 
     tmp_gmtime_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test "$tmp_gmtime_r" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6591,11 +7279,12 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
+  $EGREP "gmtime_r" >/dev/null 2>&1
+then :
 
       tmp_gmtime_r="proto_declared"
 
-else
+else $as_nop
 
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6606,17 +7295,18 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
+  $EGREP "gmtime_r" >/dev/null 2>&1
+then :
 
         tmp_gmtime_r="proto_needs_reentrant"
         tmp_need_reentrant="yes"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
 
@@ -6650,16 +7340,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
     tmp_localtime_r="yes"
 
-else
+else $as_nop
 
     tmp_localtime_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test "$tmp_localtime_r" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6670,11 +7361,12 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
+  $EGREP "localtime_r" >/dev/null 2>&1
+then :
 
       tmp_localtime_r="proto_declared"
 
-else
+else $as_nop
 
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6685,17 +7377,18 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
+  $EGREP "localtime_r" >/dev/null 2>&1
+then :
 
         tmp_localtime_r="proto_needs_reentrant"
         tmp_need_reentrant="yes"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
 
@@ -6729,16 +7422,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
     tmp_strerror_r="yes"
 
-else
+else $as_nop
 
     tmp_strerror_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test "$tmp_strerror_r" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6749,11 +7443,12 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
+  $EGREP "strerror_r" >/dev/null 2>&1
+then :
 
       tmp_strerror_r="proto_declared"
 
-else
+else $as_nop
 
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6764,17 +7459,18 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
+  $EGREP "strerror_r" >/dev/null 2>&1
+then :
 
         tmp_strerror_r="proto_needs_reentrant"
         tmp_need_reentrant="yes"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
 
@@ -6808,16 +7504,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
     tmp_strtok_r="yes"
 
-else
+else $as_nop
 
     tmp_strtok_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test "$tmp_strtok_r" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6828,11 +7525,12 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
+  $EGREP "strtok_r" >/dev/null 2>&1
+then :
 
       tmp_strtok_r="proto_declared"
 
-else
+else $as_nop
 
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6843,17 +7541,18 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
+  $EGREP "strtok_r" >/dev/null 2>&1
+then :
 
         tmp_strtok_r="proto_needs_reentrant"
         tmp_need_reentrant="yes"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
 
@@ -6887,16 +7586,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
     tmp_gethostbyname_r="yes"
 
-else
+else $as_nop
 
     tmp_gethostbyname_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test "$tmp_gethostbyname_r" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6907,11 +7607,12 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
+  $EGREP "gethostbyname_r" >/dev/null 2>&1
+then :
 
       tmp_gethostbyname_r="proto_declared"
 
-else
+else $as_nop
 
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -6922,17 +7623,18 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
+  $EGREP "gethostbyname_r" >/dev/null 2>&1
+then :
 
         tmp_gethostbyname_r="proto_needs_reentrant"
         tmp_need_reentrant="yes"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
 
@@ -6966,16 +7668,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
     tmp_getprotobyname_r="yes"
 
-else
+else $as_nop
 
     tmp_getprotobyname_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test "$tmp_getprotobyname_r" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -6986,11 +7689,12 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getprotobyname_r" >/dev/null 2>&1; then :
+  $EGREP "getprotobyname_r" >/dev/null 2>&1
+then :
 
       tmp_getprotobyname_r="proto_declared"
 
-else
+else $as_nop
 
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -7001,17 +7705,18 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getprotobyname_r" >/dev/null 2>&1; then :
+  $EGREP "getprotobyname_r" >/dev/null 2>&1
+then :
 
         tmp_getprotobyname_r="proto_needs_reentrant"
         tmp_need_reentrant="yes"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
 
@@ -7019,21 +7724,21 @@
 
     fi
     if test "$tmp_need_reentrant" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is onwards defined" >&5
-$as_echo_n "checking if _REENTRANT is onwards defined... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if _REENTRANT is onwards defined" >&5
+printf %s "checking if _REENTRANT is onwards defined... " >&6; }
   if test "$tmp_reentrant_initially_defined" = "yes" ||
     test "$tmp_need_reentrant" = "yes"; then
 
 
-$as_echo "#define NEED_REENTRANT 1" >>confdefs.h
+printf "%s\n" "#define NEED_REENTRANT 1" >>confdefs.h
 
 cat >>confdefs.h <<_EOF
 #ifndef _REENTRANT
@@ -7041,27 +7746,29 @@
 #endif
 _EOF
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
   #
 
 
 # Check whether --enable-largefile was given.
-if test "${enable_largefile+set}" = set; then :
+if test ${enable_largefile+y}
+then :
   enableval=$enable_largefile;
 fi
 
 if test "$enable_largefile" != no; then
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
-$as_echo_n "checking for special C compiler options needed for large files... " >&6; }
-if ${ac_cv_sys_largefile_CC+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for special C compiler options needed for large files" >&5
+printf %s "checking for special C compiler options needed for large files... " >&6; }
+if test ${ac_cv_sys_largefile_CC+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_sys_largefile_CC=no
      if test "$GCC" != yes; then
        ac_save_CC=$CC
@@ -7075,7 +7782,7 @@
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -7086,32 +7793,35 @@
  return 0;
 }
 _ACEOF
-	 if ac_fn_c_try_compile "$LINENO"; then :
+	 if ac_fn_c_try_compile "$LINENO"
+then :
   break
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
 	 CC="$CC -n32"
-	 if ac_fn_c_try_compile "$LINENO"; then :
+	 if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_largefile_CC=' -n32'; break
 fi
-rm -f core conftest.err conftest.$ac_objext
+rm -f core conftest.err conftest.$ac_objext conftest.beam
 	 break
        done
        CC=$ac_save_CC
        rm -f conftest.$ac_ext
     fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
-$as_echo "$ac_cv_sys_largefile_CC" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_largefile_CC" >&5
+printf "%s\n" "$ac_cv_sys_largefile_CC" >&6; }
   if test "$ac_cv_sys_largefile_CC" != no; then
     CC=$CC$ac_cv_sys_largefile_CC
   fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
-$as_echo_n "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
-if ${ac_cv_sys_file_offset_bits+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _FILE_OFFSET_BITS value needed for large files" >&5
+printf %s "checking for _FILE_OFFSET_BITS value needed for large files... " >&6; }
+if test ${ac_cv_sys_file_offset_bits+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   while :; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -7120,7 +7830,7 @@
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -7131,10 +7841,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_file_offset_bits=no; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _FILE_OFFSET_BITS 64
@@ -7143,7 +7854,7 @@
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -7154,31 +7865,31 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_file_offset_bits=64; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   ac_cv_sys_file_offset_bits=unknown
   break
 done
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
-$as_echo "$ac_cv_sys_file_offset_bits" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_file_offset_bits" >&5
+printf "%s\n" "$ac_cv_sys_file_offset_bits" >&6; }
 case $ac_cv_sys_file_offset_bits in #(
   no | unknown) ;;
   *)
-cat >>confdefs.h <<_ACEOF
-#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits
-_ACEOF
+printf "%s\n" "#define _FILE_OFFSET_BITS $ac_cv_sys_file_offset_bits" >>confdefs.h
 ;;
 esac
 rm -rf conftest*
   if test $ac_cv_sys_file_offset_bits = unknown; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
-$as_echo_n "checking for _LARGE_FILES value needed for large files... " >&6; }
-if ${ac_cv_sys_large_files+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for _LARGE_FILES value needed for large files" >&5
+printf %s "checking for _LARGE_FILES value needed for large files... " >&6; }
+if test ${ac_cv_sys_large_files+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   while :; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -7187,7 +7898,7 @@
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -7198,10 +7909,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_large_files=no; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #define _LARGE_FILES 1
@@ -7210,7 +7922,7 @@
     We can't simply define LARGE_OFF_T to be 9223372036854775807,
     since some C++ compilers masquerading as C compilers
     incorrectly reject 9223372036854775807.  */
-#define LARGE_OFF_T ((((off_t) 1 << 31) << 31) - 1 + (((off_t) 1 << 31) << 31))
+#define LARGE_OFF_T (((off_t) 1 << 31 << 31) - 1 + ((off_t) 1 << 31 << 31))
   int off_t_is_large[(LARGE_OFF_T % 2147483629 == 721
 		       && LARGE_OFF_T % 2147483647 == 1)
 		      ? 1 : -1];
@@ -7221,35 +7933,32 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sys_large_files=1; break
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   ac_cv_sys_large_files=unknown
   break
 done
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
-$as_echo "$ac_cv_sys_large_files" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sys_large_files" >&5
+printf "%s\n" "$ac_cv_sys_large_files" >&6; }
 case $ac_cv_sys_large_files in #(
   no | unknown) ;;
   *)
-cat >>confdefs.h <<_ACEOF
-#define _LARGE_FILES $ac_cv_sys_large_files
-_ACEOF
+printf "%s\n" "#define _LARGE_FILES $ac_cv_sys_large_files" >>confdefs.h
 ;;
 esac
 rm -rf conftest*
   fi
-
-
 fi
 
 
 case `pwd` in
   *\ * | *\	*)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
-$as_echo "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&5
+printf "%s\n" "$as_me: WARNING: Libtool does not cope well with whitespace in \`pwd\`" >&2;} ;;
 esac
 
 
@@ -7269,6 +7978,7 @@
 
 
 
+
 ltmain=$ac_aux_dir/ltmain.sh
 
 # Backslashify metacharacters that are still active within
@@ -7292,8 +8002,8 @@
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO
 ECHO=$ECHO$ECHO$ECHO$ECHO$ECHO$ECHO
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
-$as_echo_n "checking how to print strings... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to print strings" >&5
+printf %s "checking how to print strings... " >&6; }
 # Test print first, because it will be a builtin if present.
 if test "X`( print -r -- -n ) 2>/dev/null`" = X-n && \
    test "X`print -r -- $ECHO 2>/dev/null`" = "X$ECHO"; then
@@ -7319,12 +8029,12 @@
 }
 
 case $ECHO in
-  printf*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: printf" >&5
-$as_echo "printf" >&6; } ;;
-  print*) { $as_echo "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
-$as_echo "print -r" >&6; } ;;
-  *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: cat" >&5
-$as_echo "cat" >&6; } ;;
+  printf*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: printf" >&5
+printf "%s\n" "printf" >&6; } ;;
+  print*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: print -r" >&5
+printf "%s\n" "print -r" >&6; } ;;
+  *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cat" >&5
+printf "%s\n" "cat" >&6; } ;;
 esac
 
 
@@ -7340,11 +8050,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
-$as_echo_n "checking for a sed that does not truncate output... " >&6; }
-if ${ac_cv_path_SED+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a sed that does not truncate output" >&5
+printf %s "checking for a sed that does not truncate output... " >&6; }
+if test ${ac_cv_path_SED+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
             ac_script=s/aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa/bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb/
      for ac_i in 1 2 3 4 5 6 7; do
        ac_script="$ac_script$as_nl$ac_script"
@@ -7358,10 +8069,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in sed gsed; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in sed gsed
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_SED="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_SED="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_SED" || continue
 # Check for GNU ac_path_SED and select it if it is found.
   # Check for GNU $ac_path_SED
@@ -7370,13 +8086,13 @@
   ac_cv_path_SED="$ac_path_SED" ac_path_SED_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo '' >> "conftest.nl"
+    printf "%s\n" '' >> "conftest.nl"
     "$ac_path_SED" -f conftest.sed < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -7404,8 +8120,8 @@
 fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
-$as_echo "$ac_cv_path_SED" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_SED" >&5
+printf "%s\n" "$ac_cv_path_SED" >&6; }
  SED="$ac_cv_path_SED"
   rm -f conftest.sed
 
@@ -7422,11 +8138,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
-$as_echo_n "checking for fgrep... " >&6; }
-if ${ac_cv_path_FGREP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fgrep" >&5
+printf %s "checking for fgrep... " >&6; }
+if test ${ac_cv_path_FGREP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if echo 'ab*c' | $GREP -F 'ab*c' >/dev/null 2>&1
    then ac_cv_path_FGREP="$GREP -F"
    else
@@ -7437,10 +8154,15 @@
 for as_dir in $PATH$PATH_SEPARATOR/usr/xpg4/bin
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in fgrep; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in fgrep
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_FGREP="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_FGREP="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_FGREP" || continue
 # Check for GNU ac_path_FGREP and select it if it is found.
   # Check for GNU $ac_path_FGREP
@@ -7449,13 +8171,13 @@
   ac_cv_path_FGREP="$ac_path_FGREP" ac_path_FGREP_found=:;;
 *)
   ac_count=0
-  $as_echo_n 0123456789 >"conftest.in"
+  printf %s 0123456789 >"conftest.in"
   while :
   do
     cat "conftest.in" "conftest.in" >"conftest.tmp"
     mv "conftest.tmp" "conftest.in"
     cp "conftest.in" "conftest.nl"
-    $as_echo 'FGREP' >> "conftest.nl"
+    printf "%s\n" 'FGREP' >> "conftest.nl"
     "$ac_path_FGREP" FGREP < "conftest.nl" >"conftest.out" 2>/dev/null || break
     diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break
     as_fn_arith $ac_count + 1 && ac_count=$as_val
@@ -7484,8 +8206,8 @@
 
    fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
-$as_echo "$ac_cv_path_FGREP" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_FGREP" >&5
+printf "%s\n" "$ac_cv_path_FGREP" >&6; }
  FGREP="$ac_cv_path_FGREP"
 
 
@@ -7510,17 +8232,18 @@
 
 
 # Check whether --with-gnu-ld was given.
-if test "${with_gnu_ld+set}" = set; then :
+if test ${with_gnu_ld+y}
+then :
   withval=$with_gnu_ld; test no = "$withval" || with_gnu_ld=yes
-else
+else $as_nop
   with_gnu_ld=no
 fi
 
 ac_prog=ld
 if test yes = "$GCC"; then
   # Check if gcc -print-prog-name=ld gives a path.
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
-$as_echo_n "checking for ld used by $CC... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ld used by $CC" >&5
+printf %s "checking for ld used by $CC... " >&6; }
   case $host in
   *-*-mingw*)
     # gcc leaves a trailing carriage return, which upsets mingw
@@ -7549,15 +8272,16 @@
     ;;
   esac
 elif test yes = "$with_gnu_ld"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
-$as_echo_n "checking for GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for GNU ld" >&5
+printf %s "checking for GNU ld... " >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
-$as_echo_n "checking for non-GNU ld... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for non-GNU ld" >&5
+printf %s "checking for non-GNU ld... " >&6; }
 fi
-if ${lt_cv_path_LD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+if test ${lt_cv_path_LD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -z "$LD"; then
   lt_save_ifs=$IFS; IFS=$PATH_SEPARATOR
   for ac_dir in $PATH; do
@@ -7586,18 +8310,19 @@
 
 LD=$lt_cv_path_LD
 if test -n "$LD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
-$as_echo "$LD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LD" >&5
+printf "%s\n" "$LD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 test -z "$LD" && as_fn_error $? "no acceptable ld found in \$PATH" "$LINENO" 5
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
-$as_echo_n "checking if the linker ($LD) is GNU ld... " >&6; }
-if ${lt_cv_prog_gnu_ld+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if the linker ($LD) is GNU ld" >&5
+printf %s "checking if the linker ($LD) is GNU ld... " >&6; }
+if test ${lt_cv_prog_gnu_ld+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   # I'd rather use --version here, but apparently some GNU lds only accept -v.
 case `$LD -v 2>&1 </dev/null` in
 *GNU* | *'with BFD'*)
@@ -7608,8 +8333,8 @@
   ;;
 esac
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
-$as_echo "$lt_cv_prog_gnu_ld" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_gnu_ld" >&5
+printf "%s\n" "$lt_cv_prog_gnu_ld" >&6; }
 with_gnu_ld=$lt_cv_prog_gnu_ld
 
 
@@ -7620,11 +8345,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
-$as_echo_n "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
-if ${lt_cv_path_NM+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BSD- or MS-compatible name lister (nm)" >&5
+printf %s "checking for BSD- or MS-compatible name lister (nm)... " >&6; }
+if test ${lt_cv_path_NM+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$NM"; then
   # Let the user override the test.
   lt_cv_path_NM=$NM
@@ -7674,8 +8400,8 @@
   : ${lt_cv_path_NM=no}
 fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
-$as_echo "$lt_cv_path_NM" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5
+printf "%s\n" "$lt_cv_path_NM" >&6; }
 if test no != "$lt_cv_path_NM"; then
   NM=$lt_cv_path_NM
 else
@@ -7688,11 +8414,12 @@
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DUMPBIN+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DUMPBIN"; then
   ac_cv_prog_DUMPBIN="$DUMPBIN" # Let the user override the test.
 else
@@ -7700,11 +8427,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DUMPBIN="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7715,11 +8446,11 @@
 fi
 DUMPBIN=$ac_cv_prog_DUMPBIN
 if test -n "$DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
-$as_echo "$DUMPBIN" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DUMPBIN" >&5
+printf "%s\n" "$DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7732,11 +8463,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DUMPBIN+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DUMPBIN+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DUMPBIN"; then
   ac_cv_prog_ac_ct_DUMPBIN="$ac_ct_DUMPBIN" # Let the user override the test.
 else
@@ -7744,11 +8476,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DUMPBIN="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -7759,11 +8495,11 @@
 fi
 ac_ct_DUMPBIN=$ac_cv_prog_ac_ct_DUMPBIN
 if test -n "$ac_ct_DUMPBIN"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
-$as_echo "$ac_ct_DUMPBIN" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DUMPBIN" >&5
+printf "%s\n" "$ac_ct_DUMPBIN" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -7775,8 +8511,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DUMPBIN=$ac_ct_DUMPBIN
@@ -7804,11 +8540,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
-$as_echo_n "checking the name lister ($NM) interface... " >&6; }
-if ${lt_cv_nm_interface+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the name lister ($NM) interface" >&5
+printf %s "checking the name lister ($NM) interface... " >&6; }
+if test ${lt_cv_nm_interface+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_nm_interface="BSD nm"
   echo "int some_variable = 0;" > conftest.$ac_ext
   (eval echo "\"\$as_me:$LINENO: $ac_compile\"" >&5)
@@ -7824,26 +8561,27 @@
   fi
   rm -f conftest*
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
-$as_echo "$lt_cv_nm_interface" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_nm_interface" >&5
+printf "%s\n" "$lt_cv_nm_interface" >&6; }
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
-$as_echo_n "checking whether ln -s works... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5
+printf %s "checking whether ln -s works... " >&6; }
 LN_S=$as_ln_s
 if test "$LN_S" = "ln -s"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
-$as_echo "no, using $LN_S" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5
+printf "%s\n" "no, using $LN_S" >&6; }
 fi
 
 # find the maximum length of command line arguments
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
-$as_echo_n "checking the maximum length of command line arguments... " >&6; }
-if ${lt_cv_sys_max_cmd_len+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking the maximum length of command line arguments" >&5
+printf %s "checking the maximum length of command line arguments... " >&6; }
+if test ${lt_cv_sys_max_cmd_len+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
     i=0
   teststring=ABCD
 
@@ -7970,11 +8708,11 @@
 fi
 
 if test -n "$lt_cv_sys_max_cmd_len"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
-$as_echo "$lt_cv_sys_max_cmd_len" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sys_max_cmd_len" >&5
+printf "%s\n" "$lt_cv_sys_max_cmd_len" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: none" >&5
-$as_echo "none" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: none" >&5
+printf "%s\n" "none" >&6; }
 fi
 max_cmd_len=$lt_cv_sys_max_cmd_len
 
@@ -8018,11 +8756,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
-$as_echo_n "checking how to convert $build file names to $host format... " >&6; }
-if ${lt_cv_to_host_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to $host format" >&5
+printf %s "checking how to convert $build file names to $host format... " >&6; }
+if test ${lt_cv_to_host_file_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $host in
   *-*-mingw* )
     case $build in
@@ -8058,18 +8797,19 @@
 fi
 
 to_host_file_cmd=$lt_cv_to_host_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
-$as_echo "$lt_cv_to_host_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_host_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_host_file_cmd" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
-$as_echo_n "checking how to convert $build file names to toolchain format... " >&6; }
-if ${lt_cv_to_tool_file_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to convert $build file names to toolchain format" >&5
+printf %s "checking how to convert $build file names to toolchain format... " >&6; }
+if test ${lt_cv_to_tool_file_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   #assume ordinary cross tools, or native build.
 lt_cv_to_tool_file_cmd=func_convert_file_noop
 case $host in
@@ -8085,22 +8825,23 @@
 fi
 
 to_tool_file_cmd=$lt_cv_to_tool_file_cmd
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
-$as_echo "$lt_cv_to_tool_file_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_to_tool_file_cmd" >&5
+printf "%s\n" "$lt_cv_to_tool_file_cmd" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
-$as_echo_n "checking for $LD option to reload object files... " >&6; }
-if ${lt_cv_ld_reload_flag+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $LD option to reload object files" >&5
+printf %s "checking for $LD option to reload object files... " >&6; }
+if test ${lt_cv_ld_reload_flag+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_reload_flag='-r'
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
-$as_echo "$lt_cv_ld_reload_flag" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_reload_flag" >&5
+printf "%s\n" "$lt_cv_ld_reload_flag" >&6; }
 reload_flag=$lt_cv_ld_reload_flag
 case $reload_flag in
 "" | " "*) ;;
@@ -8133,11 +8874,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
 set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OBJDUMP"; then
   ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
 else
@@ -8145,11 +8887,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8160,11 +8906,11 @@
 fi
 OBJDUMP=$ac_cv_prog_OBJDUMP
 if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+printf "%s\n" "$OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8173,11 +8919,12 @@
   ac_ct_OBJDUMP=$OBJDUMP
   # Extract the first word of "objdump", so it can be a program name with args.
 set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OBJDUMP"; then
   ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
 else
@@ -8185,11 +8932,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8200,11 +8951,11 @@
 fi
 ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
 if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+printf "%s\n" "$ac_ct_OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OBJDUMP" = x; then
@@ -8212,8 +8963,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OBJDUMP=$ac_ct_OBJDUMP
@@ -8229,11 +8980,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
-$as_echo_n "checking how to recognize dependent libraries... " >&6; }
-if ${lt_cv_deplibs_check_method+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to recognize dependent libraries" >&5
+printf %s "checking how to recognize dependent libraries... " >&6; }
+if test ${lt_cv_deplibs_check_method+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_file_magic_cmd='$MAGIC_CMD'
 lt_cv_file_magic_test_file=
 lt_cv_deplibs_check_method='unknown'
@@ -8429,8 +9181,8 @@
 esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
-$as_echo "$lt_cv_deplibs_check_method" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_deplibs_check_method" >&5
+printf "%s\n" "$lt_cv_deplibs_check_method" >&6; }
 
 file_magic_glob=
 want_nocaseglob=no
@@ -8474,11 +9226,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DLLTOOL"; then
   ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
 else
@@ -8486,11 +9239,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8501,11 +9258,11 @@
 fi
 DLLTOOL=$ac_cv_prog_DLLTOOL
 if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+printf "%s\n" "$DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8514,11 +9271,12 @@
   ac_ct_DLLTOOL=$DLLTOOL
   # Extract the first word of "dlltool", so it can be a program name with args.
 set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DLLTOOL"; then
   ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
 else
@@ -8526,11 +9284,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8541,11 +9303,11 @@
 fi
 ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
 if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
+printf "%s\n" "$ac_ct_DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DLLTOOL" = x; then
@@ -8553,8 +9315,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DLLTOOL=$ac_ct_DLLTOOL
@@ -8571,11 +9333,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
-$as_echo_n "checking how to associate runtime and link libraries... " >&6; }
-if ${lt_cv_sharedlib_from_linklib_cmd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to associate runtime and link libraries" >&5
+printf %s "checking how to associate runtime and link libraries... " >&6; }
+if test ${lt_cv_sharedlib_from_linklib_cmd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_sharedlib_from_linklib_cmd='unknown'
 
 case $host_os in
@@ -8598,8 +9361,8 @@
 esac
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
-$as_echo "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_sharedlib_from_linklib_cmd" >&5
+printf "%s\n" "$lt_cv_sharedlib_from_linklib_cmd" >&6; }
 sharedlib_from_linklib_cmd=$lt_cv_sharedlib_from_linklib_cmd
 test -z "$sharedlib_from_linklib_cmd" && sharedlib_from_linklib_cmd=$ECHO
 
@@ -8614,11 +9377,12 @@
   do
     # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args.
 set dummy $ac_tool_prefix$ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AR"; then
   ac_cv_prog_AR="$AR" # Let the user override the test.
 else
@@ -8626,11 +9390,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AR="$ac_tool_prefix$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8641,11 +9409,11 @@
 fi
 AR=$ac_cv_prog_AR
 if test -n "$AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
-$as_echo "$AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AR" >&5
+printf "%s\n" "$AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8658,11 +9426,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AR+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AR+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_AR"; then
   ac_cv_prog_ac_ct_AR="$ac_ct_AR" # Let the user override the test.
 else
@@ -8670,11 +9439,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_AR="$ac_prog"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8685,11 +9458,11 @@
 fi
 ac_ct_AR=$ac_cv_prog_ac_ct_AR
 if test -n "$ac_ct_AR"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
-$as_echo "$ac_ct_AR" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AR" >&5
+printf "%s\n" "$ac_ct_AR" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8701,8 +9474,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     AR=$ac_ct_AR
@@ -8722,11 +9495,12 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
-$as_echo_n "checking for archiver @FILE support... " >&6; }
-if ${lt_cv_ar_at_file+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for archiver @FILE support" >&5
+printf %s "checking for archiver @FILE support... " >&6; }
+if test ${lt_cv_ar_at_file+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ar_at_file=no
    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -8738,13 +9512,14 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   echo conftest.$ac_objext > conftest.lst
       lt_ar_try='$AR $AR_FLAGS libconftest.a @conftest.lst >&5'
       { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
   (eval $lt_ar_try) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
       if test 0 -eq "$ac_status"; then
 	# Ensure the archiver fails upon bogus file names.
@@ -8752,7 +9527,7 @@
 	{ { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$lt_ar_try\""; } >&5
   (eval $lt_ar_try) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 	if test 0 -ne "$ac_status"; then
           lt_cv_ar_at_file=@
@@ -8761,11 +9536,11 @@
       rm -f conftest.* libconftest.a
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
-$as_echo "$lt_cv_ar_at_file" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ar_at_file" >&5
+printf "%s\n" "$lt_cv_ar_at_file" >&6; }
 
 if test no = "$lt_cv_ar_at_file"; then
   archiver_list_spec=
@@ -8782,11 +9557,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}strip", so it can be a program name with args.
 set dummy ${ac_tool_prefix}strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$STRIP"; then
   ac_cv_prog_STRIP="$STRIP" # Let the user override the test.
 else
@@ -8794,11 +9570,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_STRIP="${ac_tool_prefix}strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8809,11 +9589,11 @@
 fi
 STRIP=$ac_cv_prog_STRIP
 if test -n "$STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
-$as_echo "$STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $STRIP" >&5
+printf "%s\n" "$STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8822,11 +9602,12 @@
   ac_ct_STRIP=$STRIP
   # Extract the first word of "strip", so it can be a program name with args.
 set dummy strip; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_STRIP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_STRIP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_STRIP"; then
   ac_cv_prog_ac_ct_STRIP="$ac_ct_STRIP" # Let the user override the test.
 else
@@ -8834,11 +9615,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_STRIP="strip"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8849,11 +9634,11 @@
 fi
 ac_ct_STRIP=$ac_cv_prog_ac_ct_STRIP
 if test -n "$ac_ct_STRIP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
-$as_echo "$ac_ct_STRIP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_STRIP" >&5
+printf "%s\n" "$ac_ct_STRIP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_STRIP" = x; then
@@ -8861,8 +9646,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     STRIP=$ac_ct_STRIP
@@ -8881,11 +9666,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args.
 set dummy ${ac_tool_prefix}ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_RANLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$RANLIB"; then
   ac_cv_prog_RANLIB="$RANLIB" # Let the user override the test.
 else
@@ -8893,11 +9679,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8908,11 +9698,11 @@
 fi
 RANLIB=$ac_cv_prog_RANLIB
 if test -n "$RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
-$as_echo "$RANLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5
+printf "%s\n" "$RANLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -8921,11 +9711,12 @@
   ac_ct_RANLIB=$RANLIB
   # Extract the first word of "ranlib", so it can be a program name with args.
 set dummy ranlib; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_RANLIB+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_RANLIB+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_RANLIB"; then
   ac_cv_prog_ac_ct_RANLIB="$ac_ct_RANLIB" # Let the user override the test.
 else
@@ -8933,11 +9724,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_RANLIB="ranlib"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -8948,11 +9743,11 @@
 fi
 ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB
 if test -n "$ac_ct_RANLIB"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
-$as_echo "$ac_ct_RANLIB" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5
+printf "%s\n" "$ac_ct_RANLIB" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_RANLIB" = x; then
@@ -8960,8 +9755,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     RANLIB=$ac_ct_RANLIB
@@ -9050,11 +9845,12 @@
 
 
 # Check for command to grab the raw symbol name followed by C symbol from nm.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
-$as_echo_n "checking command to parse $NM output from $compiler object... " >&6; }
-if ${lt_cv_sys_global_symbol_pipe+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking command to parse $NM output from $compiler object" >&5
+printf %s "checking command to parse $NM output from $compiler object... " >&6; }
+if test ${lt_cv_sys_global_symbol_pipe+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
 # These are sane defaults that work on at least a few old systems.
 # [They come from Ultrix.  What could be older than Ultrix?!! ;)]
@@ -9206,7 +10002,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     # Now try to grab the symbols.
     nlist=conftest.nm
@@ -9279,7 +10075,7 @@
 	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s conftest$ac_exeext; then
 	    pipe_works=yes
 	  fi
@@ -9314,11 +10110,11 @@
   lt_cv_sys_global_symbol_to_cdecl=
 fi
 if test -z "$lt_cv_sys_global_symbol_pipe$lt_cv_sys_global_symbol_to_cdecl"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5
+printf "%s\n" "failed" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5
-$as_echo "ok" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ok" >&5
+printf "%s\n" "ok" >&6; }
 fi
 
 # Response file support.
@@ -9364,13 +10160,14 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
-$as_echo_n "checking for sysroot... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for sysroot" >&5
+printf %s "checking for sysroot... " >&6; }
 
 # Check whether --with-sysroot was given.
-if test "${with_sysroot+set}" = set; then :
+if test ${with_sysroot+y}
+then :
   withval=$with_sysroot;
-else
+else $as_nop
   with_sysroot=no
 fi
 
@@ -9388,24 +10185,25 @@
  no|'')
    ;; #(
  *)
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
-$as_echo "$with_sysroot" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_sysroot" >&5
+printf "%s\n" "$with_sysroot" >&6; }
    as_fn_error $? "The sysroot must be an absolute path." "$LINENO" 5
    ;;
 esac
 
- { $as_echo "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
-$as_echo "${lt_sysroot:-no}" >&6; }
+ { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: ${lt_sysroot:-no}" >&5
+printf "%s\n" "${lt_sysroot:-no}" >&6; }
 
 
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
-$as_echo_n "checking for a working dd... " >&6; }
-if ${ac_cv_path_lt_DD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for a working dd" >&5
+printf %s "checking for a working dd... " >&6; }
+if test ${ac_cv_path_lt_DD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   printf 0123456789abcdef0123456789abcdef >conftest.i
 cat conftest.i conftest.i >conftest2.i
 : ${lt_DD:=$DD}
@@ -9416,10 +10214,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    for ac_prog in dd; do
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_prog in dd
+   do
     for ac_exec_ext in '' $ac_executable_extensions; do
-      ac_path_lt_DD="$as_dir/$ac_prog$ac_exec_ext"
+      ac_path_lt_DD="$as_dir$ac_prog$ac_exec_ext"
       as_fn_executable_p "$ac_path_lt_DD" || continue
 if "$ac_path_lt_DD" bs=32 count=1 <conftest2.i >conftest.out 2>/dev/null; then
   cmp -s conftest.i conftest.out \
@@ -9439,15 +10242,16 @@
 
 rm -f conftest.i conftest2.i conftest.out
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
-$as_echo "$ac_cv_path_lt_DD" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_lt_DD" >&5
+printf "%s\n" "$ac_cv_path_lt_DD" >&6; }
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
-$as_echo_n "checking how to truncate binary pipes... " >&6; }
-if ${lt_cv_truncate_bin+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to truncate binary pipes" >&5
+printf %s "checking how to truncate binary pipes... " >&6; }
+if test ${lt_cv_truncate_bin+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   printf 0123456789abcdef0123456789abcdef >conftest.i
 cat conftest.i conftest.i >conftest2.i
 lt_cv_truncate_bin=
@@ -9458,8 +10262,8 @@
 rm -f conftest.i conftest2.i conftest.out
 test -z "$lt_cv_truncate_bin" && lt_cv_truncate_bin="$SED -e 4q"
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
-$as_echo "$lt_cv_truncate_bin" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_truncate_bin" >&5
+printf "%s\n" "$lt_cv_truncate_bin" >&6; }
 
 
 
@@ -9482,7 +10286,8 @@
 }
 
 # Check whether --enable-libtool-lock was given.
-if test "${enable_libtool_lock+set}" = set; then :
+if test ${enable_libtool_lock+y}
+then :
   enableval=$enable_libtool_lock;
 fi
 
@@ -9498,7 +10303,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     case `/usr/bin/file conftest.$ac_objext` in
       *ELF-32*)
@@ -9518,7 +10323,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     if test yes = "$lt_cv_prog_gnu_ld"; then
       case `/usr/bin/file conftest.$ac_objext` in
@@ -9556,7 +10361,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     emul=elf
     case `/usr/bin/file conftest.$ac_objext` in
@@ -9597,7 +10402,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     case `/usr/bin/file conftest.o` in
       *32-bit*)
@@ -9660,11 +10465,12 @@
   # On SCO OpenServer 5, we need -belf to get full-featured binaries.
   SAVE_CFLAGS=$CFLAGS
   CFLAGS="$CFLAGS -belf"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
-$as_echo_n "checking whether the C compiler needs -belf... " >&6; }
-if ${lt_cv_cc_needs_belf+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the C compiler needs -belf" >&5
+printf %s "checking whether the C compiler needs -belf... " >&6; }
+if test ${lt_cv_cc_needs_belf+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
 ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5'
@@ -9681,12 +10487,13 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_cc_needs_belf=yes
-else
+else $as_nop
   lt_cv_cc_needs_belf=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
      ac_ext=c
 ac_cpp='$CPP $CPPFLAGS'
@@ -9695,8 +10502,8 @@
 ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
-$as_echo "$lt_cv_cc_needs_belf" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_cc_needs_belf" >&5
+printf "%s\n" "$lt_cv_cc_needs_belf" >&6; }
   if test yes != "$lt_cv_cc_needs_belf"; then
     # this is probably gcc 2.8.0, egcs 1.0 or newer; no need for -belf
     CFLAGS=$SAVE_CFLAGS
@@ -9709,7 +10516,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }; then
     case `/usr/bin/file conftest.o` in
     *64-bit*)
@@ -9746,11 +10553,12 @@
 if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}mt", so it can be a program name with args.
 set dummy ${ac_tool_prefix}mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_MANIFEST_TOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$MANIFEST_TOOL"; then
   ac_cv_prog_MANIFEST_TOOL="$MANIFEST_TOOL" # Let the user override the test.
 else
@@ -9758,11 +10566,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_MANIFEST_TOOL="${ac_tool_prefix}mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -9773,11 +10585,11 @@
 fi
 MANIFEST_TOOL=$ac_cv_prog_MANIFEST_TOOL
 if test -n "$MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
-$as_echo "$MANIFEST_TOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANIFEST_TOOL" >&5
+printf "%s\n" "$MANIFEST_TOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -9786,11 +10598,12 @@
   ac_ct_MANIFEST_TOOL=$MANIFEST_TOOL
   # Extract the first word of "mt", so it can be a program name with args.
 set dummy mt; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_MANIFEST_TOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_MANIFEST_TOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_MANIFEST_TOOL"; then
   ac_cv_prog_ac_ct_MANIFEST_TOOL="$ac_ct_MANIFEST_TOOL" # Let the user override the test.
 else
@@ -9798,11 +10611,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_MANIFEST_TOOL="mt"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -9813,11 +10630,11 @@
 fi
 ac_ct_MANIFEST_TOOL=$ac_cv_prog_ac_ct_MANIFEST_TOOL
 if test -n "$ac_ct_MANIFEST_TOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
-$as_echo "$ac_ct_MANIFEST_TOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_MANIFEST_TOOL" >&5
+printf "%s\n" "$ac_ct_MANIFEST_TOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_MANIFEST_TOOL" = x; then
@@ -9825,8 +10642,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     MANIFEST_TOOL=$ac_ct_MANIFEST_TOOL
@@ -9836,11 +10653,12 @@
 fi
 
 test -z "$MANIFEST_TOOL" && MANIFEST_TOOL=mt
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
-$as_echo_n "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
-if ${lt_cv_path_mainfest_tool+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $MANIFEST_TOOL is a manifest tool" >&5
+printf %s "checking if $MANIFEST_TOOL is a manifest tool... " >&6; }
+if test ${lt_cv_path_mainfest_tool+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_path_mainfest_tool=no
   echo "$as_me:$LINENO: $MANIFEST_TOOL '-?'" >&5
   $MANIFEST_TOOL '-?' 2>conftest.err > conftest.out
@@ -9850,8 +10668,8 @@
   fi
   rm -f conftest*
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
-$as_echo "$lt_cv_path_mainfest_tool" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_mainfest_tool" >&5
+printf "%s\n" "$lt_cv_path_mainfest_tool" >&6; }
 if test yes != "$lt_cv_path_mainfest_tool"; then
   MANIFEST_TOOL=:
 fi
@@ -9866,11 +10684,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}dsymutil", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DSYMUTIL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DSYMUTIL"; then
   ac_cv_prog_DSYMUTIL="$DSYMUTIL" # Let the user override the test.
 else
@@ -9878,11 +10697,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DSYMUTIL="${ac_tool_prefix}dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -9893,11 +10716,11 @@
 fi
 DSYMUTIL=$ac_cv_prog_DSYMUTIL
 if test -n "$DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
-$as_echo "$DSYMUTIL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DSYMUTIL" >&5
+printf "%s\n" "$DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -9906,11 +10729,12 @@
   ac_ct_DSYMUTIL=$DSYMUTIL
   # Extract the first word of "dsymutil", so it can be a program name with args.
 set dummy dsymutil; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DSYMUTIL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DSYMUTIL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DSYMUTIL"; then
   ac_cv_prog_ac_ct_DSYMUTIL="$ac_ct_DSYMUTIL" # Let the user override the test.
 else
@@ -9918,11 +10742,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DSYMUTIL="dsymutil"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -9933,11 +10761,11 @@
 fi
 ac_ct_DSYMUTIL=$ac_cv_prog_ac_ct_DSYMUTIL
 if test -n "$ac_ct_DSYMUTIL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
-$as_echo "$ac_ct_DSYMUTIL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DSYMUTIL" >&5
+printf "%s\n" "$ac_ct_DSYMUTIL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DSYMUTIL" = x; then
@@ -9945,8 +10773,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DSYMUTIL=$ac_ct_DSYMUTIL
@@ -9958,11 +10786,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}nmedit", so it can be a program name with args.
 set dummy ${ac_tool_prefix}nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_NMEDIT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$NMEDIT"; then
   ac_cv_prog_NMEDIT="$NMEDIT" # Let the user override the test.
 else
@@ -9970,11 +10799,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_NMEDIT="${ac_tool_prefix}nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -9985,11 +10818,11 @@
 fi
 NMEDIT=$ac_cv_prog_NMEDIT
 if test -n "$NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
-$as_echo "$NMEDIT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NMEDIT" >&5
+printf "%s\n" "$NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -9998,11 +10831,12 @@
   ac_ct_NMEDIT=$NMEDIT
   # Extract the first word of "nmedit", so it can be a program name with args.
 set dummy nmedit; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_NMEDIT+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_NMEDIT+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_NMEDIT"; then
   ac_cv_prog_ac_ct_NMEDIT="$ac_ct_NMEDIT" # Let the user override the test.
 else
@@ -10010,11 +10844,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_NMEDIT="nmedit"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10025,11 +10863,11 @@
 fi
 ac_ct_NMEDIT=$ac_cv_prog_ac_ct_NMEDIT
 if test -n "$ac_ct_NMEDIT"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
-$as_echo "$ac_ct_NMEDIT" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_NMEDIT" >&5
+printf "%s\n" "$ac_ct_NMEDIT" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_NMEDIT" = x; then
@@ -10037,8 +10875,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     NMEDIT=$ac_ct_NMEDIT
@@ -10050,11 +10888,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}lipo", so it can be a program name with args.
 set dummy ${ac_tool_prefix}lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_LIPO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$LIPO"; then
   ac_cv_prog_LIPO="$LIPO" # Let the user override the test.
 else
@@ -10062,11 +10901,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_LIPO="${ac_tool_prefix}lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10077,11 +10920,11 @@
 fi
 LIPO=$ac_cv_prog_LIPO
 if test -n "$LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
-$as_echo "$LIPO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $LIPO" >&5
+printf "%s\n" "$LIPO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -10090,11 +10933,12 @@
   ac_ct_LIPO=$LIPO
   # Extract the first word of "lipo", so it can be a program name with args.
 set dummy lipo; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_LIPO+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_LIPO+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_LIPO"; then
   ac_cv_prog_ac_ct_LIPO="$ac_ct_LIPO" # Let the user override the test.
 else
@@ -10102,11 +10946,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_LIPO="lipo"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10117,11 +10965,11 @@
 fi
 ac_ct_LIPO=$ac_cv_prog_ac_ct_LIPO
 if test -n "$ac_ct_LIPO"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
-$as_echo "$ac_ct_LIPO" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_LIPO" >&5
+printf "%s\n" "$ac_ct_LIPO" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_LIPO" = x; then
@@ -10129,8 +10977,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     LIPO=$ac_ct_LIPO
@@ -10142,11 +10990,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}otool", so it can be a program name with args.
 set dummy ${ac_tool_prefix}otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OTOOL"; then
   ac_cv_prog_OTOOL="$OTOOL" # Let the user override the test.
 else
@@ -10154,11 +11003,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OTOOL="${ac_tool_prefix}otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10169,11 +11022,11 @@
 fi
 OTOOL=$ac_cv_prog_OTOOL
 if test -n "$OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
-$as_echo "$OTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL" >&5
+printf "%s\n" "$OTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -10182,11 +11035,12 @@
   ac_ct_OTOOL=$OTOOL
   # Extract the first word of "otool", so it can be a program name with args.
 set dummy otool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OTOOL"; then
   ac_cv_prog_ac_ct_OTOOL="$ac_ct_OTOOL" # Let the user override the test.
 else
@@ -10194,11 +11048,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OTOOL="otool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10209,11 +11067,11 @@
 fi
 ac_ct_OTOOL=$ac_cv_prog_ac_ct_OTOOL
 if test -n "$ac_ct_OTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
-$as_echo "$ac_ct_OTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL" >&5
+printf "%s\n" "$ac_ct_OTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OTOOL" = x; then
@@ -10221,8 +11079,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OTOOL=$ac_ct_OTOOL
@@ -10234,11 +11092,12 @@
     if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}otool64", so it can be a program name with args.
 set dummy ${ac_tool_prefix}otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OTOOL64+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OTOOL64"; then
   ac_cv_prog_OTOOL64="$OTOOL64" # Let the user override the test.
 else
@@ -10246,11 +11105,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OTOOL64="${ac_tool_prefix}otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10261,11 +11124,11 @@
 fi
 OTOOL64=$ac_cv_prog_OTOOL64
 if test -n "$OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
-$as_echo "$OTOOL64" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OTOOL64" >&5
+printf "%s\n" "$OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -10274,11 +11137,12 @@
   ac_ct_OTOOL64=$OTOOL64
   # Extract the first word of "otool64", so it can be a program name with args.
 set dummy otool64; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OTOOL64+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OTOOL64+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OTOOL64"; then
   ac_cv_prog_ac_ct_OTOOL64="$ac_ct_OTOOL64" # Let the user override the test.
 else
@@ -10286,11 +11150,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OTOOL64="otool64"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10301,11 +11169,11 @@
 fi
 ac_ct_OTOOL64=$ac_cv_prog_ac_ct_OTOOL64
 if test -n "$ac_ct_OTOOL64"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
-$as_echo "$ac_ct_OTOOL64" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OTOOL64" >&5
+printf "%s\n" "$ac_ct_OTOOL64" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OTOOL64" = x; then
@@ -10313,8 +11181,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OTOOL64=$ac_ct_OTOOL64
@@ -10349,11 +11217,12 @@
 
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
-$as_echo_n "checking for -single_module linker flag... " >&6; }
-if ${lt_cv_apple_cc_single_mod+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -single_module linker flag" >&5
+printf %s "checking for -single_module linker flag... " >&6; }
+if test ${lt_cv_apple_cc_single_mod+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_apple_cc_single_mod=no
       if test -z "$LT_MULTI_MODULE"; then
 	# By default we will add the -single_module flag. You can override
@@ -10382,14 +11251,15 @@
 	rm -f conftest.*
       fi
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
-$as_echo "$lt_cv_apple_cc_single_mod" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_apple_cc_single_mod" >&5
+printf "%s\n" "$lt_cv_apple_cc_single_mod" >&6; }
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
-$as_echo_n "checking for -exported_symbols_list linker flag... " >&6; }
-if ${lt_cv_ld_exported_symbols_list+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -exported_symbols_list linker flag" >&5
+printf %s "checking for -exported_symbols_list linker flag... " >&6; }
+if test ${lt_cv_ld_exported_symbols_list+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_exported_symbols_list=no
       save_LDFLAGS=$LDFLAGS
       echo "_main" > conftest.sym
@@ -10404,24 +11274,26 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_ld_exported_symbols_list=yes
-else
+else $as_nop
   lt_cv_ld_exported_symbols_list=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 	LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
-$as_echo "$lt_cv_ld_exported_symbols_list" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_exported_symbols_list" >&5
+printf "%s\n" "$lt_cv_ld_exported_symbols_list" >&6; }
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
-$as_echo_n "checking for -force_load linker flag... " >&6; }
-if ${lt_cv_ld_force_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for -force_load linker flag" >&5
+printf %s "checking for -force_load linker flag... " >&6; }
+if test ${lt_cv_ld_force_load+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_ld_force_load=no
       cat > conftest.c << _LT_EOF
 int forced_loaded() { return 2;}
@@ -10449,8 +11321,8 @@
         rm -rf conftest.dSYM
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
-$as_echo "$lt_cv_ld_force_load" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_ld_force_load" >&5
+printf "%s\n" "$lt_cv_ld_force_load" >&6; }
     case $host_os in
     rhapsody* | darwin1.[012])
       _lt_dar_allow_undefined='$wl-undefined ${wl}suppress' ;;
@@ -10521,146 +11393,42 @@
     esac
 }
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5
-$as_echo_n "checking for ANSI C header files... " >&6; }
-if ${ac_cv_header_stdc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-#include <stdarg.h>
-#include <string.h>
-#include <float.h>
-
-int main (void)
-{
-
- ;
- return 0;
-}
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  ac_cv_header_stdc=yes
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-if test $ac_cv_header_stdc = yes; then
-  # SunOS 4.x string.h does not declare mem*, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <string.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memchr" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI.
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <stdlib.h>
-
-_ACEOF
-if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "free" >/dev/null 2>&1; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f conftest*
-
-fi
-
-if test $ac_cv_header_stdc = yes; then
-  # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi.
-  if test "$cross_compiling" = yes; then :
-  :
-else
-  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-#include <ctype.h>
-#include <stdlib.h>
-#if ((' ' & 0x0FF) == 0x020)
-# define ISLOWER(c) ('a' <= (c) && (c) <= 'z')
-# define TOUPPER(c) (ISLOWER(c) ? 'A' + ((c) - 'a') : (c))
-#else
-# define ISLOWER(c) \
-		   (('a' <= (c) && (c) <= 'i') \
-		     || ('j' <= (c) && (c) <= 'r') \
-		     || ('s' <= (c) && (c) <= 'z'))
-# define TOUPPER(c) (ISLOWER(c) ? ((c) | 0x40) : (c))
-#endif
-
-#define XOR(e, f) (((e) && !(f)) || (!(e) && (f)))
-int
-main ()
-{
-  int i;
-  for (i = 0; i < 256; i++)
-    if (XOR (islower (i), ISLOWER (i))
-	|| toupper (i) != TOUPPER (i))
-      return 2;
-  return 0;
-}
-_ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-
-else
-  ac_cv_header_stdc=no
-fi
-rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
-  conftest.$ac_objext conftest.beam conftest.$ac_ext
-fi
-
-fi
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5
-$as_echo "$ac_cv_header_stdc" >&6; }
-if test $ac_cv_header_stdc = yes; then
-
-$as_echo "#define STDC_HEADERS 1" >>confdefs.h
-
-fi
-
-# On IRIX 5.3, sys/types and inttypes.h are conflicting.
-for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \
-		  inttypes.h stdint.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default
-"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
+ac_header= ac_cache=
+for ac_item in $ac_header_c_list
+do
+  if test $ac_cache; then
+    ac_fn_c_check_header_compile "$LINENO" $ac_header ac_cv_header_$ac_cache "$ac_includes_default"
+    if eval test \"x\$ac_cv_header_$ac_cache\" = xyes; then
+      printf "%s\n" "#define $ac_item 1" >> confdefs.h
+    fi
+    ac_header= ac_cache=
+  elif test $ac_header; then
+    ac_cache=$ac_item
+  else
+    ac_header=$ac_item
+  fi
 done
 
 
-for ac_header in dlfcn.h
-do :
-  ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
-"
-if test "x$ac_cv_header_dlfcn_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_DLFCN_H 1
-_ACEOF
+
+
+
+
+
+
+if test $ac_cv_header_stdlib_h = yes && test $ac_cv_header_string_h = yes
+then :
+
+printf "%s\n" "#define STDC_HEADERS 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "dlfcn.h" "ac_cv_header_dlfcn_h" "$ac_includes_default
+"
+if test "x$ac_cv_header_dlfcn_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_DLFCN_H 1" >>confdefs.h
 
-done
+fi
 
 # ------------------------------------ #
 #  Determine libtool default behavior  #
@@ -10750,7 +11518,7 @@
   case $host_cpu in # (
     x86_64 | amd64 | ia64)
       case $host_os in # (
-        linux* | freebsd*)
+        linux* | freebsd* | midnightbsd*)
           xc_lt_want_with_pic='yes'
           ;;
       esac
@@ -10781,11 +11549,12 @@
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}as", so it can be a program name with args.
 set dummy ${ac_tool_prefix}as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_AS+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$AS"; then
   ac_cv_prog_AS="$AS" # Let the user override the test.
 else
@@ -10793,11 +11562,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_AS="${ac_tool_prefix}as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10808,11 +11581,11 @@
 fi
 AS=$ac_cv_prog_AS
 if test -n "$AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
-$as_echo "$AS" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $AS" >&5
+printf "%s\n" "$AS" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -10821,11 +11594,12 @@
   ac_ct_AS=$AS
   # Extract the first word of "as", so it can be a program name with args.
 set dummy as; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_AS+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_AS+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_AS"; then
   ac_cv_prog_ac_ct_AS="$ac_ct_AS" # Let the user override the test.
 else
@@ -10833,11 +11607,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_AS="as"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10848,11 +11626,11 @@
 fi
 ac_ct_AS=$ac_cv_prog_ac_ct_AS
 if test -n "$ac_ct_AS"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
-$as_echo "$ac_ct_AS" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_AS" >&5
+printf "%s\n" "$ac_ct_AS" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_AS" = x; then
@@ -10860,8 +11638,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     AS=$ac_ct_AS
@@ -10873,11 +11651,12 @@
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}dlltool", so it can be a program name with args.
 set dummy ${ac_tool_prefix}dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$DLLTOOL"; then
   ac_cv_prog_DLLTOOL="$DLLTOOL" # Let the user override the test.
 else
@@ -10885,11 +11664,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_DLLTOOL="${ac_tool_prefix}dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10900,11 +11683,11 @@
 fi
 DLLTOOL=$ac_cv_prog_DLLTOOL
 if test -n "$DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
-$as_echo "$DLLTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $DLLTOOL" >&5
+printf "%s\n" "$DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -10913,11 +11696,12 @@
   ac_ct_DLLTOOL=$DLLTOOL
   # Extract the first word of "dlltool", so it can be a program name with args.
 set dummy dlltool; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_DLLTOOL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_DLLTOOL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_DLLTOOL"; then
   ac_cv_prog_ac_ct_DLLTOOL="$ac_ct_DLLTOOL" # Let the user override the test.
 else
@@ -10925,11 +11709,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_DLLTOOL="dlltool"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10940,11 +11728,11 @@
 fi
 ac_ct_DLLTOOL=$ac_cv_prog_ac_ct_DLLTOOL
 if test -n "$ac_ct_DLLTOOL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
-$as_echo "$ac_ct_DLLTOOL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_DLLTOOL" >&5
+printf "%s\n" "$ac_ct_DLLTOOL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_DLLTOOL" = x; then
@@ -10952,8 +11740,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     DLLTOOL=$ac_ct_DLLTOOL
@@ -10965,11 +11753,12 @@
   if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}objdump", so it can be a program name with args.
 set dummy ${ac_tool_prefix}objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$OBJDUMP"; then
   ac_cv_prog_OBJDUMP="$OBJDUMP" # Let the user override the test.
 else
@@ -10977,11 +11766,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_OBJDUMP="${ac_tool_prefix}objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -10992,11 +11785,11 @@
 fi
 OBJDUMP=$ac_cv_prog_OBJDUMP
 if test -n "$OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
-$as_echo "$OBJDUMP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $OBJDUMP" >&5
+printf "%s\n" "$OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -11005,11 +11798,12 @@
   ac_ct_OBJDUMP=$OBJDUMP
   # Extract the first word of "objdump", so it can be a program name with args.
 set dummy objdump; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_prog_ac_ct_OBJDUMP+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_prog_ac_ct_OBJDUMP+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   if test -n "$ac_ct_OBJDUMP"; then
   ac_cv_prog_ac_ct_OBJDUMP="$ac_ct_OBJDUMP" # Let the user override the test.
 else
@@ -11017,11 +11811,15 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
     ac_cv_prog_ac_ct_OBJDUMP="objdump"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -11032,11 +11830,11 @@
 fi
 ac_ct_OBJDUMP=$ac_cv_prog_ac_ct_OBJDUMP
 if test -n "$ac_ct_OBJDUMP"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
-$as_echo "$ac_ct_OBJDUMP" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_ct_OBJDUMP" >&5
+printf "%s\n" "$ac_ct_OBJDUMP" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_ct_OBJDUMP" = x; then
@@ -11044,8 +11842,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     OBJDUMP=$ac_ct_OBJDUMP
@@ -11082,7 +11880,8 @@
 
 
             # Check whether --enable-shared was given.
-if test "${enable_shared+set}" = set; then :
+if test ${enable_shared+y}
+then :
   enableval=$enable_shared; p=${PACKAGE-default}
     case $enableval in
     yes) enable_shared=yes ;;
@@ -11100,7 +11899,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_shared=yes
 fi
 
@@ -11113,7 +11912,8 @@
 
 
   # Check whether --enable-static was given.
-if test "${enable_static+set}" = set; then :
+if test ${enable_static+y}
+then :
   enableval=$enable_static; p=${PACKAGE-default}
     case $enableval in
     yes) enable_static=yes ;;
@@ -11131,7 +11931,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_static=yes
 fi
 
@@ -11145,7 +11945,8 @@
 
 
 # Check whether --with-pic was given.
-if test "${with_pic+set}" = set; then :
+if test ${with_pic+y}
+then :
   withval=$with_pic; lt_p=${PACKAGE-default}
     case $withval in
     yes|no) pic_mode=$withval ;;
@@ -11162,7 +11963,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   pic_mode=default
 fi
 
@@ -11174,7 +11975,8 @@
 
 
   # Check whether --enable-fast-install was given.
-if test "${enable_fast_install+set}" = set; then :
+if test ${enable_fast_install+y}
+then :
   enableval=$enable_fast_install; p=${PACKAGE-default}
     case $enableval in
     yes) enable_fast_install=yes ;;
@@ -11192,7 +11994,7 @@
       IFS=$lt_save_ifs
       ;;
     esac
-else
+else $as_nop
   enable_fast_install=yes
 fi
 
@@ -11206,11 +12008,12 @@
   shared_archive_member_spec=
 case $host,$enable_shared in
 power*-*-aix[5-9]*,yes)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
-$as_echo_n "checking which variant of shared library versioning to provide... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking which variant of shared library versioning to provide" >&5
+printf %s "checking which variant of shared library versioning to provide... " >&6; }
 
 # Check whether --with-aix-soname was given.
-if test "${with_aix_soname+set}" = set; then :
+if test ${with_aix_soname+y}
+then :
   withval=$with_aix_soname; case $withval in
     aix|svr4|both)
       ;;
@@ -11219,18 +12022,19 @@
       ;;
     esac
     lt_cv_with_aix_soname=$with_aix_soname
-else
-  if ${lt_cv_with_aix_soname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  if test ${lt_cv_with_aix_soname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_with_aix_soname=aix
 fi
 
     with_aix_soname=$lt_cv_with_aix_soname
 fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
-$as_echo "$with_aix_soname" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_aix_soname" >&5
+printf "%s\n" "$with_aix_soname" >&6; }
   if test aix != "$with_aix_soname"; then
     # For the AIX way of multilib, we name the shared archive member
     # based on the bitwidth used, traditionally 'shr.o' or 'shr_64.o',
@@ -11312,11 +12116,12 @@
    setopt NO_GLOB_SUBST
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
-$as_echo_n "checking for objdir... " >&6; }
-if ${lt_cv_objdir+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for objdir" >&5
+printf %s "checking for objdir... " >&6; }
+if test ${lt_cv_objdir+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   rm -f .libs 2>/dev/null
 mkdir .libs 2>/dev/null
 if test -d .libs; then
@@ -11327,17 +12132,15 @@
 fi
 rmdir .libs 2>/dev/null
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
-$as_echo "$lt_cv_objdir" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_objdir" >&5
+printf "%s\n" "$lt_cv_objdir" >&6; }
 objdir=$lt_cv_objdir
 
 
 
 
 
-cat >>confdefs.h <<_ACEOF
-#define LT_OBJDIR "$lt_cv_objdir/"
-_ACEOF
+printf "%s\n" "#define LT_OBJDIR \"$lt_cv_objdir/\"" >>confdefs.h
 
 
 
@@ -11383,11 +12186,12 @@
 case $deplibs_check_method in
 file_magic*)
   if test "$file_magic_cmd" = '$MAGIC_CMD'; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
-$as_echo_n "checking for ${ac_tool_prefix}file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ${ac_tool_prefix}file" >&5
+printf %s "checking for ${ac_tool_prefix}file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
   lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
@@ -11436,11 +12240,11 @@
 
 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -11449,11 +12253,12 @@
 
 if test -z "$lt_cv_path_MAGIC_CMD"; then
   if test -n "$ac_tool_prefix"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for file" >&5
-$as_echo_n "checking for file... " >&6; }
-if ${lt_cv_path_MAGIC_CMD+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for file" >&5
+printf %s "checking for file... " >&6; }
+if test ${lt_cv_path_MAGIC_CMD+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $MAGIC_CMD in
 [\\/*] |  ?:[\\/]*)
   lt_cv_path_MAGIC_CMD=$MAGIC_CMD # Let the user override the test with a path.
@@ -11502,11 +12307,11 @@
 
 MAGIC_CMD=$lt_cv_path_MAGIC_CMD
 if test -n "$MAGIC_CMD"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
-$as_echo "$MAGIC_CMD" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MAGIC_CMD" >&5
+printf "%s\n" "$MAGIC_CMD" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -11591,11 +12396,12 @@
     lt_prog_compiler_no_builtin_flag=' -fno-builtin' ;;
   esac
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
-$as_echo_n "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
-if ${lt_cv_prog_compiler_rtti_exceptions+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -fno-rtti -fno-exceptions" >&5
+printf %s "checking if $compiler supports -fno-rtti -fno-exceptions... " >&6; }
+if test ${lt_cv_prog_compiler_rtti_exceptions+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_rtti_exceptions=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -11626,8 +12432,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
-$as_echo "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_rtti_exceptions" >&5
+printf "%s\n" "$lt_cv_prog_compiler_rtti_exceptions" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_rtti_exceptions"; then
     lt_prog_compiler_no_builtin_flag="$lt_prog_compiler_no_builtin_flag -fno-rtti -fno-exceptions"
@@ -11990,26 +12796,28 @@
     ;;
 esac
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
-$as_echo_n "checking for $compiler option to produce PIC... " >&6; }
-if ${lt_cv_prog_compiler_pic+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $compiler option to produce PIC" >&5
+printf %s "checking for $compiler option to produce PIC... " >&6; }
+if test ${lt_cv_prog_compiler_pic+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic=$lt_prog_compiler_pic
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
-$as_echo "$lt_cv_prog_compiler_pic" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic" >&6; }
 lt_prog_compiler_pic=$lt_cv_prog_compiler_pic
 
 #
 # Check to make sure the PIC flag actually works.
 #
 if test -n "$lt_prog_compiler_pic"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
-$as_echo_n "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
-if ${lt_cv_prog_compiler_pic_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler PIC flag $lt_prog_compiler_pic works" >&5
+printf %s "checking if $compiler PIC flag $lt_prog_compiler_pic works... " >&6; }
+if test ${lt_cv_prog_compiler_pic_works+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_pic_works=no
    ac_outfile=conftest.$ac_objext
    echo "$lt_simple_compile_test_code" > conftest.$ac_ext
@@ -12040,8 +12848,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
-$as_echo "$lt_cv_prog_compiler_pic_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_pic_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_pic_works" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_pic_works"; then
     case $lt_prog_compiler_pic in
@@ -12069,11 +12877,12 @@
 # Check to make sure the static flag actually works.
 #
 wl=$lt_prog_compiler_wl eval lt_tmp_static_flag=\"$lt_prog_compiler_static\"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
-$as_echo_n "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
-if ${lt_cv_prog_compiler_static_works+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler static flag $lt_tmp_static_flag works" >&5
+printf %s "checking if $compiler static flag $lt_tmp_static_flag works... " >&6; }
+if test ${lt_cv_prog_compiler_static_works+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_static_works=no
    save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS $lt_tmp_static_flag"
@@ -12097,8 +12906,8 @@
    LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
-$as_echo "$lt_cv_prog_compiler_static_works" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_static_works" >&5
+printf "%s\n" "$lt_cv_prog_compiler_static_works" >&6; }
 
 if test yes = "$lt_cv_prog_compiler_static_works"; then
     :
@@ -12112,11 +12921,12 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -12159,19 +12969,20 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
-$as_echo_n "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
-if ${lt_cv_prog_compiler_c_o+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $compiler supports -c -o file.$ac_objext" >&5
+printf %s "checking if $compiler supports -c -o file.$ac_objext... " >&6; }
+if test ${lt_cv_prog_compiler_c_o+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler_c_o=no
    $RM -r conftest 2>/dev/null
    mkdir conftest
@@ -12214,8 +13025,8 @@
    $RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
-$as_echo "$lt_cv_prog_compiler_c_o" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler_c_o" >&5
+printf "%s\n" "$lt_cv_prog_compiler_c_o" >&6; }
 
 
 
@@ -12223,19 +13034,19 @@
 hard_links=nottested
 if test no = "$lt_cv_prog_compiler_c_o" && test no != "$need_locks"; then
   # do not overwrite the value of need_locks provided by the user
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
-$as_echo_n "checking if we can lock with hard links... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if we can lock with hard links" >&5
+printf %s "checking if we can lock with hard links... " >&6; }
   hard_links=yes
   $RM conftest*
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
   touch conftest.a
   ln conftest.a conftest.b 2>&5 || hard_links=no
   ln conftest.a conftest.b 2>/dev/null && hard_links=no
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
-$as_echo "$hard_links" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hard_links" >&5
+printf "%s\n" "$hard_links" >&6; }
   if test no = "$hard_links"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
-$as_echo "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&5
+printf "%s\n" "$as_me: WARNING: '$CC' does not support '-c -o', so 'make -j' may be unsafe" >&2;}
     need_locks=warn
   fi
 else
@@ -12247,8 +13058,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
-$as_echo_n "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $compiler linker ($LD) supports shared libraries" >&5
+printf %s "checking whether the $compiler linker ($LD) supports shared libraries... " >&6; }
 
   runpath_var=
   allow_undefined_flag=
@@ -12806,9 +13617,10 @@
         if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath_+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -12819,7 +13631,8 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -12834,7 +13647,7 @@
     lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
     lt_cv_aix_libpath_=/usr/lib:/lib
@@ -12858,9 +13671,10 @@
 	 if test set = "${lt_cv_aix_libpath+set}"; then
   aix_libpath=$lt_cv_aix_libpath
 else
-  if ${lt_cv_aix_libpath_+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_aix_libpath_+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -12871,7 +13685,8 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
   lt_aix_libpath_sed='
       /Import File Strings/,/^$/ {
@@ -12886,7 +13701,7 @@
     lt_cv_aix_libpath_=`dump -HX64 conftest$ac_exeext 2>/dev/null | $SED -n -e "$lt_aix_libpath_sed"`
   fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   if test -z "$lt_cv_aix_libpath_"; then
     lt_cv_aix_libpath_=/usr/lib:/lib
@@ -13137,11 +13952,12 @@
 
 	  # Older versions of the 11.00 compiler do not understand -b yet
 	  # (HP92453-01 A.11.01.20 doesn't, HP92453-01 B.11.X.35175-35176.GP does)
-	  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
-$as_echo_n "checking if $CC understands -b... " >&6; }
-if ${lt_cv_prog_compiler__b+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+	  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if $CC understands -b" >&5
+printf %s "checking if $CC understands -b... " >&6; }
+if test ${lt_cv_prog_compiler__b+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_prog_compiler__b=no
    save_LDFLAGS=$LDFLAGS
    LDFLAGS="$LDFLAGS -b"
@@ -13165,8 +13981,8 @@
    LDFLAGS=$save_LDFLAGS
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
-$as_echo "$lt_cv_prog_compiler__b" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_prog_compiler__b" >&5
+printf "%s\n" "$lt_cv_prog_compiler__b" >&6; }
 
 if test yes = "$lt_cv_prog_compiler__b"; then
     archive_cmds='$CC -b $wl+h $wl$soname $wl+b $wl$install_libdir -o $lib $libobjs $deplibs $compiler_flags'
@@ -13206,28 +14022,30 @@
 	# work, assume that -exports_file does not work either and
 	# implicitly export all symbols.
 	# This should be the same for all languages, so no per-tag cache variable.
-	{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
-$as_echo_n "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
-if ${lt_cv_irix_exported_symbol+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+	{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether the $host_os linker accepts -exported_symbol" >&5
+printf %s "checking whether the $host_os linker accepts -exported_symbol... " >&6; }
+if test ${lt_cv_irix_exported_symbol+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   save_LDFLAGS=$LDFLAGS
 	   LDFLAGS="$LDFLAGS -shared $wl-exported_symbol ${wl}foo $wl-update_registry $wl/dev/null"
 	   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 int foo (void) { return 0; }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   lt_cv_irix_exported_symbol=yes
-else
+else $as_nop
   lt_cv_irix_exported_symbol=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
            LDFLAGS=$save_LDFLAGS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
-$as_echo "$lt_cv_irix_exported_symbol" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_irix_exported_symbol" >&5
+printf "%s\n" "$lt_cv_irix_exported_symbol" >&6; }
 	if test yes = "$lt_cv_irix_exported_symbol"; then
           archive_expsym_cmds='$CC -shared $pic_flag $libobjs $deplibs $compiler_flags $wl-soname $wl$soname `test -n "$verstring" && func_echo_all "$wl-set_version $wl$verstring"` $wl-update_registry $wl$output_objdir/so_locations $wl-exports_file $wl$export_symbols -o $lib'
 	fi
@@ -13508,8 +14326,8 @@
     fi
   fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
-$as_echo "$ld_shlibs" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ld_shlibs" >&5
+printf "%s\n" "$ld_shlibs" >&6; }
 test no = "$ld_shlibs" && can_build_shared=no
 
 with_gnu_ld=$with_gnu_ld
@@ -13545,18 +14363,19 @@
       # Test whether the compiler implicitly links with -lc since on some
       # systems, -lgcc has to come before -lc. If gcc already passes -lc
       # to ld, don't add -lc before -lgcc.
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
-$as_echo_n "checking whether -lc should be explicitly linked in... " >&6; }
-if ${lt_cv_archive_cmds_need_lc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether -lc should be explicitly linked in" >&5
+printf %s "checking whether -lc should be explicitly linked in... " >&6; }
+if test ${lt_cv_archive_cmds_need_lc+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   $RM conftest*
 	echo "$lt_simple_compile_test_code" > conftest.$ac_ext
 
 	if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_compile\""; } >&5
   (eval $ac_compile) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } 2>conftest.err; then
 	  soname=conftest
 	  lib=conftest
@@ -13574,7 +14393,7 @@
 	  if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1\""; } >&5
   (eval $archive_cmds 2\>\&1 \| $GREP \" -lc \" \>/dev/null 2\>\&1) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; }
 	  then
 	    lt_cv_archive_cmds_need_lc=no
@@ -13588,8 +14407,8 @@
 	$RM conftest*
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
-$as_echo "$lt_cv_archive_cmds_need_lc" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_archive_cmds_need_lc" >&5
+printf "%s\n" "$lt_cv_archive_cmds_need_lc" >&6; }
       archive_cmds_need_lc=$lt_cv_archive_cmds_need_lc
       ;;
     esac
@@ -13748,8 +14567,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
-$as_echo_n "checking dynamic linker characteristics... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking dynamic linker characteristics" >&5
+printf %s "checking dynamic linker characteristics... " >&6; }
 
 if test yes = "$GCC"; then
   case $host_os in
@@ -14310,9 +15129,10 @@
   shlibpath_overrides_runpath=no
 
   # Some binutils ld are patched to set DT_RUNPATH
-  if ${lt_cv_shlibpath_overrides_runpath+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  if test ${lt_cv_shlibpath_overrides_runpath+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   lt_cv_shlibpath_overrides_runpath=no
     save_LDFLAGS=$LDFLAGS
     save_libdir=$libdir
@@ -14328,12 +15148,14 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null; then :
+if ac_fn_c_try_link "$LINENO"
+then :
+  if  ($OBJDUMP -p conftest$ac_exeext) 2>/dev/null | grep "RUNPATH.*$libdir" >/dev/null
+then :
   lt_cv_shlibpath_overrides_runpath=yes
 fi
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     LDFLAGS=$save_LDFLAGS
     libdir=$save_libdir
@@ -14577,8 +15399,8 @@
   dynamic_linker=no
   ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
-$as_echo "$dynamic_linker" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $dynamic_linker" >&5
+printf "%s\n" "$dynamic_linker" >&6; }
 test no = "$dynamic_linker" && can_build_shared=no
 
 variables_saved_for_relink="PATH $shlibpath_var $runpath_var"
@@ -14699,8 +15521,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
-$as_echo_n "checking how to hardcode library paths into programs... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to hardcode library paths into programs" >&5
+printf %s "checking how to hardcode library paths into programs... " >&6; }
 hardcode_action=
 if test -n "$hardcode_libdir_flag_spec" ||
    test -n "$runpath_var" ||
@@ -14724,8 +15546,8 @@
   # directories.
   hardcode_action=unsupported
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
-$as_echo "$hardcode_action" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hardcode_action" >&5
+printf "%s\n" "$hardcode_action" >&6; }
 
 if test relink = "$hardcode_action" ||
    test yes = "$inherit_rpath"; then
@@ -14769,11 +15591,12 @@
 
   darwin*)
     # if libdl is installed we need to link against it
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14791,20 +15614,22 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_dl_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
+else $as_nop
 
     lt_cv_dlopen=dyld
     lt_cv_dlopen_libs=
@@ -14824,14 +15649,16 @@
 
   *)
     ac_fn_c_check_func "$LINENO" "shl_load" "ac_cv_func_shl_load"
-if test "x$ac_cv_func_shl_load" = xyes; then :
+if test "x$ac_cv_func_shl_load" = xyes
+then :
   lt_cv_dlopen=shl_load
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
-$as_echo_n "checking for shl_load in -ldld... " >&6; }
-if ${ac_cv_lib_dld_shl_load+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for shl_load in -ldld" >&5
+printf %s "checking for shl_load in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_shl_load+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14849,29 +15676,33 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dld_shl_load=yes
-else
+else $as_nop
   ac_cv_lib_dld_shl_load=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
-$as_echo "$ac_cv_lib_dld_shl_load" >&6; }
-if test "x$ac_cv_lib_dld_shl_load" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_shl_load" >&5
+printf "%s\n" "$ac_cv_lib_dld_shl_load" >&6; }
+if test "x$ac_cv_lib_dld_shl_load" = xyes
+then :
   lt_cv_dlopen=shl_load lt_cv_dlopen_libs=-ldld
-else
+else $as_nop
   ac_fn_c_check_func "$LINENO" "dlopen" "ac_cv_func_dlopen"
-if test "x$ac_cv_func_dlopen" = xyes; then :
+if test "x$ac_cv_func_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
-$as_echo_n "checking for dlopen in -ldl... " >&6; }
-if ${ac_cv_lib_dl_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -ldl" >&5
+printf %s "checking for dlopen in -ldl... " >&6; }
+if test ${ac_cv_lib_dl_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14889,25 +15720,28 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dl_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_dl_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
-$as_echo "$ac_cv_lib_dl_dlopen" >&6; }
-if test "x$ac_cv_lib_dl_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dl_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_dl_dlopen" >&6; }
+if test "x$ac_cv_lib_dl_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-ldl
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
-$as_echo_n "checking for dlopen in -lsvld... " >&6; }
-if ${ac_cv_lib_svld_dlopen+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dlopen in -lsvld" >&5
+printf %s "checking for dlopen in -lsvld... " >&6; }
+if test ${ac_cv_lib_svld_dlopen+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lsvld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14925,25 +15759,28 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_svld_dlopen=yes
-else
+else $as_nop
   ac_cv_lib_svld_dlopen=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
-$as_echo "$ac_cv_lib_svld_dlopen" >&6; }
-if test "x$ac_cv_lib_svld_dlopen" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_svld_dlopen" >&5
+printf "%s\n" "$ac_cv_lib_svld_dlopen" >&6; }
+if test "x$ac_cv_lib_svld_dlopen" = xyes
+then :
   lt_cv_dlopen=dlopen lt_cv_dlopen_libs=-lsvld
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
-$as_echo_n "checking for dld_link in -ldld... " >&6; }
-if ${ac_cv_lib_dld_dld_link+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for dld_link in -ldld" >&5
+printf %s "checking for dld_link in -ldld... " >&6; }
+if test ${ac_cv_lib_dld_dld_link+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-ldld  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -14961,18 +15798,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_dld_dld_link=yes
-else
+else $as_nop
   ac_cv_lib_dld_dld_link=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
-$as_echo "$ac_cv_lib_dld_dld_link" >&6; }
-if test "x$ac_cv_lib_dld_dld_link" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_dld_dld_link" >&5
+printf "%s\n" "$ac_cv_lib_dld_dld_link" >&6; }
+if test "x$ac_cv_lib_dld_dld_link" = xyes
+then :
   lt_cv_dlopen=dld_link lt_cv_dlopen_libs=-ldld
 fi
 
@@ -15011,11 +15850,12 @@
     save_LIBS=$LIBS
     LIBS="$lt_cv_dlopen_libs $LIBS"
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
-$as_echo_n "checking whether a program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a program can dlopen itself" >&5
+printf %s "checking whether a program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   	  if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self=cross
 else
@@ -15094,7 +15934,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
@@ -15112,16 +15952,17 @@
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
-$as_echo "$lt_cv_dlopen_self" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self" >&5
+printf "%s\n" "$lt_cv_dlopen_self" >&6; }
 
     if test yes = "$lt_cv_dlopen_self"; then
       wl=$lt_prog_compiler_wl eval LDFLAGS=\"\$LDFLAGS $lt_prog_compiler_static\"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
-$as_echo_n "checking whether a statically linked program can dlopen itself... " >&6; }
-if ${lt_cv_dlopen_self_static+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether a statically linked program can dlopen itself" >&5
+printf %s "checking whether a statically linked program can dlopen itself... " >&6; }
+if test ${lt_cv_dlopen_self_static+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   	  if test yes = "$cross_compiling"; then :
   lt_cv_dlopen_self_static=cross
 else
@@ -15200,7 +16041,7 @@
   if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$ac_link\""; } >&5
   (eval $ac_link) 2>&5
   ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
+  printf "%s\n" "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
   test $ac_status = 0; } && test -s "conftest$ac_exeext" 2>/dev/null; then
     (./conftest; exit; ) >&5 2>/dev/null
     lt_status=$?
@@ -15218,8 +16059,8 @@
 
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
-$as_echo "$lt_cv_dlopen_self_static" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $lt_cv_dlopen_self_static" >&5
+printf "%s\n" "$lt_cv_dlopen_self_static" >&6; }
     fi
 
     CPPFLAGS=$save_CPPFLAGS
@@ -15257,13 +16098,13 @@
 
 striplib=
 old_striplib=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
-$as_echo_n "checking whether stripping libraries is possible... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether stripping libraries is possible" >&5
+printf %s "checking whether stripping libraries is possible... " >&6; }
 if test -n "$STRIP" && $STRIP -V 2>&1 | $GREP "GNU strip" >/dev/null; then
   test -z "$old_striplib" && old_striplib="$STRIP --strip-debug"
   test -z "$striplib" && striplib="$STRIP --strip-unneeded"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 else
 # FIXME - insert some real tests, host_os isn't really good enough
   case $host_os in
@@ -15271,16 +16112,16 @@
     if test -n "$STRIP"; then
       striplib="$STRIP -x"
       old_striplib="$STRIP -S"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     fi
     ;;
   *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     ;;
   esac
 fi
@@ -15297,13 +16138,13 @@
 
 
   # Report what library types will actually be built
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
-$as_echo_n "checking if libtool supports shared libraries... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
-$as_echo "$can_build_shared" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libtool supports shared libraries" >&5
+printf %s "checking if libtool supports shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $can_build_shared" >&5
+printf "%s\n" "$can_build_shared" >&6; }
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
-$as_echo_n "checking whether to build shared libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries" >&5
+printf %s "checking whether to build shared libraries... " >&6; }
   test no = "$can_build_shared" && enable_shared=no
 
   # On AIX, shared libraries and static libraries use the same namespace, and
@@ -15327,15 +16168,15 @@
     fi
     ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
-$as_echo "$enable_shared" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_shared" >&5
+printf "%s\n" "$enable_shared" >&6; }
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
-$as_echo_n "checking whether to build static libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries" >&5
+printf %s "checking whether to build static libraries... " >&6; }
   # Make sure either enable_shared or enable_static is yes.
   test yes = "$enable_shared" || enable_static=yes
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
-$as_echo "$enable_static" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $enable_static" >&5
+printf "%s\n" "$enable_static" >&6; }
 
 
 
@@ -15405,8 +16246,8 @@
 # Verify if libtool shared libraries should be linked using flag -version-info
 #
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with -version-info" >&5
-$as_echo_n "checking whether to build shared libraries with -version-info... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with -version-info" >&5
+printf %s "checking whether to build shared libraries with -version-info... " >&6; }
 xc_lt_shlib_use_version_info='yes'
 if test "x$version_type" = 'xnone'; then
   xc_lt_shlib_use_version_info='no'
@@ -15416,15 +16257,15 @@
     xc_lt_shlib_use_version_info='yes'
     ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_lt_shlib_use_version_info" >&5
-$as_echo "$xc_lt_shlib_use_version_info" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_lt_shlib_use_version_info" >&5
+printf "%s\n" "$xc_lt_shlib_use_version_info" >&6; }
 
 #
 # Verify if libtool shared libraries should be linked using flag -no-undefined
 #
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with -no-undefined" >&5
-$as_echo_n "checking whether to build shared libraries with -no-undefined... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with -no-undefined" >&5
+printf %s "checking whether to build shared libraries with -no-undefined... " >&6; }
 xc_lt_shlib_use_no_undefined='no'
 if test "x$allow_undefined" = 'xno'; then
   xc_lt_shlib_use_no_undefined='yes'
@@ -15436,15 +16277,15 @@
     xc_lt_shlib_use_no_undefined='yes'
     ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_lt_shlib_use_no_undefined" >&5
-$as_echo "$xc_lt_shlib_use_no_undefined" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_lt_shlib_use_no_undefined" >&5
+printf "%s\n" "$xc_lt_shlib_use_no_undefined" >&6; }
 
 #
 # Verify if libtool shared libraries should be linked using flag -mimpure-text
 #
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with -mimpure-text" >&5
-$as_echo_n "checking whether to build shared libraries with -mimpure-text... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with -mimpure-text" >&5
+printf %s "checking whether to build shared libraries with -mimpure-text... " >&6; }
 xc_lt_shlib_use_mimpure_text='no'
 case $host_os in # (
   solaris2*)
@@ -15453,8 +16294,8 @@
     fi
     ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_lt_shlib_use_mimpure_text" >&5
-$as_echo "$xc_lt_shlib_use_mimpure_text" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_lt_shlib_use_mimpure_text" >&5
+printf "%s\n" "$xc_lt_shlib_use_mimpure_text" >&6; }
 
 #
 # Find out whether libtool libraries would be built wit PIC
@@ -15476,48 +16317,48 @@
   *)
     xc_lt_build_shared_with_pic='unknown'
     xc_lt_build_static_with_pic='unknown'
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unexpected libtool pic_mode value: $pic_mode" >&5
-$as_echo "$as_me: WARNING: unexpected libtool pic_mode value: $pic_mode" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unexpected libtool pic_mode value: $pic_mode" >&5
+printf "%s\n" "$as_me: WARNING: unexpected libtool pic_mode value: $pic_mode" >&2;}
     ;;
 esac
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with PIC" >&5
-$as_echo_n "checking whether to build shared libraries with PIC... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_shared_with_pic" >&5
-$as_echo "$xc_lt_build_shared_with_pic" >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries with PIC" >&5
-$as_echo_n "checking whether to build static libraries with PIC... " >&6; }
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_static_with_pic" >&5
-$as_echo "$xc_lt_build_static_with_pic" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries with PIC" >&5
+printf %s "checking whether to build shared libraries with PIC... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_shared_with_pic" >&5
+printf "%s\n" "$xc_lt_build_shared_with_pic" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries with PIC" >&5
+printf %s "checking whether to build static libraries with PIC... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_static_with_pic" >&5
+printf "%s\n" "$xc_lt_build_static_with_pic" >&6; }
 
 #
 # Verify if libtool shared libraries will be built while static not built
 #
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries only" >&5
-$as_echo_n "checking whether to build shared libraries only... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build shared libraries only" >&5
+printf %s "checking whether to build shared libraries only... " >&6; }
 if test "$xc_lt_build_shared" = 'yes' &&
   test "$xc_lt_build_static" = 'no'; then
   xc_lt_build_shared_only='yes'
 else
   xc_lt_build_shared_only='no'
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_shared_only" >&5
-$as_echo "$xc_lt_build_shared_only" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_shared_only" >&5
+printf "%s\n" "$xc_lt_build_shared_only" >&6; }
 
 #
 # Verify if libtool static libraries will be built while shared not built
 #
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries only" >&5
-$as_echo_n "checking whether to build static libraries only... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build static libraries only" >&5
+printf %s "checking whether to build static libraries only... " >&6; }
 if test "$xc_lt_build_static" = 'yes' &&
   test "$xc_lt_build_shared" = 'no'; then
   xc_lt_build_static_only='yes'
 else
   xc_lt_build_static_only='no'
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_static_only" >&5
-$as_echo "$xc_lt_build_static_only" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $xc_lt_build_static_only" >&5
+printf "%s\n" "$xc_lt_build_static_only" >&6; }
 
 
 
@@ -15606,32 +16447,34 @@
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
-$as_echo_n "checking for inline... " >&6; }
-if ${ac_cv_c_inline+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inline" >&5
+printf %s "checking for inline... " >&6; }
+if test ${ac_cv_c_inline+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_cv_c_inline=no
 for ac_kw in inline __inline__ __inline; do
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 #ifndef __cplusplus
 typedef int foo_t;
-static $ac_kw foo_t static_foo () {return 0; }
-$ac_kw foo_t foo () {return 0; }
+static $ac_kw foo_t static_foo (void) {return 0; }
+$ac_kw foo_t foo (void) {return 0; }
 #endif
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_inline=$ac_kw
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   test "$ac_cv_c_inline" != no && break
 done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
-$as_echo "$ac_cv_c_inline" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_inline" >&5
+printf "%s\n" "$ac_cv_c_inline" >&6; }
 
 case $ac_cv_c_inline in
   inline | yes) ;;
@@ -15651,8 +16494,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if cpp -P is needed" >&5
-$as_echo_n "checking if cpp -P is needed... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if cpp -P is needed" >&5
+printf %s "checking if cpp -P is needed... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -15661,19 +16504,20 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "TEST.*TEST" >/dev/null 2>&1; then :
+  $EGREP "TEST.*TEST" >/dev/null 2>&1
+then :
   cpp=no
-else
+else $as_nop
   cpp=yes
 fi
-rm -f conftest*
+rm -rf conftest*
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cpp" >&5
-$as_echo "$cpp" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cpp" >&5
+printf "%s\n" "$cpp" >&6; }
 
     if test "x$cpp" = "xyes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if cpp -P works" >&5
-$as_echo_n "checking if cpp -P works... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if cpp -P works" >&5
+printf %s "checking if cpp -P works... " >&6; }
     OLDCPPFLAGS=$CPPFLAGS
     CPPFLAGS="$CPPFLAGS -P"
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -15684,19 +16528,20 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "TEST.*TEST" >/dev/null 2>&1; then :
+  $EGREP "TEST.*TEST" >/dev/null 2>&1
+then :
   cpp_p=yes
-else
+else $as_nop
   cpp_p=no
 fi
-rm -f conftest*
+rm -rf conftest*
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $cpp_p" >&5
-$as_echo "$cpp_p" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $cpp_p" >&5
+printf "%s\n" "$cpp_p" >&6; }
 
     if test "x$cpp_p" = "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: failed to figure out cpp -P alternative" >&5
-$as_echo "$as_me: WARNING: failed to figure out cpp -P alternative" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: failed to figure out cpp -P alternative" >&5
+printf "%s\n" "$as_me: WARNING: failed to figure out cpp -P alternative" >&2;}
       # without -P
       CPPPFLAG=""
     else
@@ -15722,8 +16567,8 @@
   flags_prefer_cppflags="no"
   #
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is DEC/Compaq/HP C" >&5
-$as_echo_n "checking if compiler is DEC/Compaq/HP C... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is DEC/Compaq/HP C" >&5
+printf %s "checking if compiler is DEC/Compaq/HP C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -15746,7 +16591,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -15790,7 +16636,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -15814,21 +16661,21 @@
 
   if test "$curl_cv_have_def___DECC" = "yes" &&
     test "$curl_cv_have_def___DECC_VER" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="DEC_C"
     flags_dbg_yes="-g2"
     flags_opt_all="-O -O0 -O1 -O2 -O3 -O4"
     flags_opt_yes="-O1"
     flags_opt_off="-O0"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is HP-UX C" >&5
-$as_echo_n "checking if compiler is HP-UX C... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is HP-UX C" >&5
+printf %s "checking if compiler is HP-UX C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -15851,7 +16698,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -15874,21 +16722,21 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___HP_cc" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="HP_UX_C"
     flags_dbg_yes="-g"
     flags_opt_all="-O +O0 +O1 +O2 +O3 +O4"
     flags_opt_yes="+O2"
     flags_opt_off="+O0"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is IBM C" >&5
-$as_echo_n "checking if compiler is IBM C... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is IBM C" >&5
+printf %s "checking if compiler is IBM C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -15911,7 +16759,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -15934,8 +16783,8 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___IBMC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="IBM_C"
     flags_dbg_yes="-g"
     flags_opt_all="-O -O0 -O1 -O2 -O3 -O4 -O5"
@@ -15950,13 +16799,13 @@
     flags_opt_off="-qnooptimize"
     flags_prefer_cppflags="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Intel C" >&5
-$as_echo_n "checking if compiler is Intel C... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is Intel C" >&5
+printf %s "checking if compiler is Intel C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -15979,7 +16828,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16002,8 +16852,8 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___INTEL_COMPILER" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_num="$curl_cv_def___INTEL_COMPILER"
 
     OLDCPPFLAGS=$CPPFLAGS
@@ -16027,7 +16877,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16063,13 +16914,13 @@
       flags_opt_off="/Od"
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is clang" >&5
-$as_echo_n "checking if compiler is clang... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is clang" >&5
+printf %s "checking if compiler is clang... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16092,7 +16943,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16115,10 +16967,10 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___clang__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is xlclang" >&5
-$as_echo_n "checking if compiler is xlclang... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is xlclang" >&5
+printf %s "checking if compiler is xlclang... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16141,7 +16993,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16164,12 +17017,12 @@
       CPPFLAGS=$OLDCPPFLAGS
 
     if test "$curl_cv_have_def___ibmxl__" = "yes" ; then
-            { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       compiler_id="XLCLANG"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       compiler_id="CLANG"
     fi
     fullclangver=`$CC -v 2>&1 | grep version`
@@ -16189,13 +17042,13 @@
     flags_opt_yes="-Os"
     flags_opt_off="-O0"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is GNU C" >&5
-$as_echo_n "checking if compiler is GNU C... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is GNU C" >&5
+printf %s "checking if compiler is GNU C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16218,7 +17071,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16242,8 +17096,8 @@
 
   if test "$curl_cv_have_def___GNUC__" = "yes" &&
     test "$compiler_id" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="GNU_C"
     gccver=`$CC -dumpversion`
     gccvhi=`echo $gccver | cut -d . -f1`
@@ -16275,7 +17129,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16298,13 +17153,13 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is LCC" >&5
-$as_echo_n "checking if compiler is LCC... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is LCC" >&5
+printf %s "checking if compiler is LCC... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16327,7 +17182,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16350,21 +17206,21 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___LCC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="LCC"
     flags_dbg_yes="-g"
     flags_opt_all=""
     flags_opt_yes=""
     flags_opt_off=""
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPSpro C" >&5
-$as_echo_n "checking if compiler is SGI MIPSpro C... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPSpro C" >&5
+printf %s "checking if compiler is SGI MIPSpro C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16387,7 +17243,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16431,7 +17288,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16475,7 +17333,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16500,21 +17359,21 @@
   if test "$curl_cv_have_def___GNUC__" = "no" &&
     (test "$curl_cv_have_def__SGI_COMPILER_VERSION" = "yes" ||
      test "$curl_cv_have_def__COMPILER_VERSION" = "yes"); then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="SGI_MIPSPRO_C"
     flags_dbg_yes="-g"
     flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
     flags_opt_yes="-O2"
     flags_opt_off="-O0"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPS C" >&5
-$as_echo_n "checking if compiler is SGI MIPS C... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is SGI MIPS C" >&5
+printf %s "checking if compiler is SGI MIPS C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16537,7 +17396,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16581,7 +17441,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16606,21 +17467,21 @@
   if test "$curl_cv_have_def___GNUC__" = "no" &&
     test "$curl_cv_have_def___sgi" = "yes" &&
     test "$compiler_id" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="SGI_MIPS_C"
     flags_dbg_yes="-g"
     flags_opt_all="-O -O0 -O1 -O2 -O3 -Ofast"
     flags_opt_yes="-O2"
     flags_opt_off="-O0"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is SunPro C" >&5
-$as_echo_n "checking if compiler is SunPro C... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is SunPro C" >&5
+printf %s "checking if compiler is SunPro C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16643,7 +17504,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16666,21 +17528,21 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___SUNPRO_C" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="SUNPRO_C"
     flags_dbg_yes="-g"
     flags_opt_all="-O -xO -xO1 -xO2 -xO3 -xO4 -xO5"
     flags_opt_yes="-xO2"
     flags_opt_off=""
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Tiny C" >&5
-$as_echo_n "checking if compiler is Tiny C... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is Tiny C" >&5
+printf %s "checking if compiler is Tiny C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16703,7 +17565,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16726,21 +17589,21 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___TINYC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     compiler_id="TINY_C"
     flags_dbg_yes="-g"
     flags_opt_all=""
     flags_opt_yes=""
     flags_opt_off=""
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler is Watcom C" >&5
-$as_echo_n "checking if compiler is Watcom C... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler is Watcom C" >&5
+printf %s "checking if compiler is Watcom C... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16763,7 +17626,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16786,8 +17650,8 @@
       CPPFLAGS=$OLDCPPFLAGS
 
   if test "$curl_cv_have_def___WATCOMC__" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -16810,7 +17674,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -16846,8 +17711,8 @@
       flags_opt_off=""
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
   #
@@ -16862,7 +17727,7 @@
 ***
 *** If you wish to help the curl project to better support your compiler
 *** you can report this and the required info on the libcurl development
-*** mailing list: https://cool.haxx.se/mailman/listinfo/curl-library/
+*** mailing list: https://lists.haxx.selistinfo/curl-library/
 ***
 _EOF
   fi
@@ -16979,8 +17844,8 @@
     squeeze tmp_CFLAGS
     #
     if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts some basic options" >&5
-$as_echo_n "checking if compiler accepts some basic options... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler accepts some basic options" >&5
+printf %s "checking if compiler accepts some basic options... " >&6; }
       CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
       CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
       squeeze CPPFLAGS
@@ -17003,11 +17868,12 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
     tmp_compiler_works="yes"
 
-else
+else $as_nop
 
     tmp_compiler_works="no"
     echo " " >&6
@@ -17015,7 +17881,7 @@
     echo " " >&6
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     if test "$tmp_compiler_works" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -17033,11 +17899,12 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tmp_compiler_works="yes"
 
-else
+else $as_nop
 
       tmp_compiler_works="no"
       echo " " >&6
@@ -17045,7 +17912,7 @@
       echo " " >&6
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
     if test "x$cross_compiling" != "xyes" &&
@@ -17054,12 +17921,13 @@
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -17079,10 +17947,11 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   tmp_compiler_works="yes"
 
-else
+else $as_nop
   tmp_compiler_works="no"
       echo " " >&6
       echo "run-fail: test program exited with status $ac_status" >&6
@@ -17098,17 +17967,17 @@
   fi
     if test "$tmp_compiler_works" = "yes"; then
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
+printf "%s\n" "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
 
   else
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
+printf "%s\n" "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
                 CPPFLAGS="$tmp_save_CPPFLAGS"
         CFLAGS="$tmp_save_CFLAGS"
 
@@ -17130,8 +17999,8 @@
     tmp_CPPFLAGS="$CPPFLAGS"
     #
     if test "$want_debug" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts debug enabling options" >&5
-$as_echo_n "checking if compiler accepts debug enabling options... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler accepts debug enabling options" >&5
+printf %s "checking if compiler accepts debug enabling options... " >&6; }
       tmp_options="$flags_dbg_yes"
     fi
     #
@@ -17161,8 +18030,8 @@
                         #
     if test "$want_optimize" = "assume_no" ||
        test "$want_optimize" = "assume_yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler optimizer assumed setting might be used" >&5
-$as_echo_n "checking if compiler optimizer assumed setting might be used... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler optimizer assumed setting might be used" >&5
+printf %s "checking if compiler optimizer assumed setting might be used... " >&6; }
 
 
   ac_var_match_word="no"
@@ -17199,8 +18068,8 @@
 
   fi
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $honor_optimize_option" >&5
-$as_echo "$honor_optimize_option" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $honor_optimize_option" >&5
+printf "%s\n" "$honor_optimize_option" >&6; }
       if test "$honor_optimize_option" = "yes"; then
         if test "$want_optimize" = "assume_yes"; then
           want_optimize="yes"
@@ -17245,13 +18114,13 @@
   squeeze tmp_CPPFLAGS
 
       if test "$want_optimize" = "yes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer enabling options" >&5
-$as_echo_n "checking if compiler accepts optimizer enabling options... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer enabling options" >&5
+printf %s "checking if compiler accepts optimizer enabling options... " >&6; }
         tmp_options="$flags_opt_yes"
       fi
       if test "$want_optimize" = "no"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer disabling options" >&5
-$as_echo_n "checking if compiler accepts optimizer disabling options... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler accepts optimizer disabling options" >&5
+printf %s "checking if compiler accepts optimizer disabling options... " >&6; }
         tmp_options="$flags_opt_off"
       fi
       if test "$flags_prefer_cppflags" = "yes"; then
@@ -17281,11 +18150,12 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
     tmp_compiler_works="yes"
 
-else
+else $as_nop
 
     tmp_compiler_works="no"
     echo " " >&6
@@ -17293,7 +18163,7 @@
     echo " " >&6
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     if test "$tmp_compiler_works" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -17311,11 +18181,12 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tmp_compiler_works="yes"
 
-else
+else $as_nop
 
       tmp_compiler_works="no"
       echo " " >&6
@@ -17323,7 +18194,7 @@
       echo " " >&6
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
     if test "x$cross_compiling" != "xyes" &&
@@ -17332,12 +18203,13 @@
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -17357,10 +18229,11 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   tmp_compiler_works="yes"
 
-else
+else $as_nop
   tmp_compiler_works="no"
       echo " " >&6
       echo "run-fail: test program exited with status $ac_status" >&6
@@ -17376,17 +18249,17 @@
   fi
     if test "$tmp_compiler_works" = "yes"; then
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_options" >&5
-$as_echo "$as_me: compiler options added: $tmp_options" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_options" >&5
+printf "%s\n" "$as_me: compiler options added: $tmp_options" >&6;}
 
   else
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_options" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_options" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_options" >&5
+printf "%s\n" "$as_me: WARNING: compiler options rejected: $tmp_options" >&2;}
                 CPPFLAGS="$tmp_save_CPPFLAGS"
         CFLAGS="$tmp_save_CFLAGS"
 
@@ -18693,8 +19566,8 @@
     squeeze tmp_CFLAGS
     #
     if test ! -z "$tmp_CFLAGS" || test ! -z "$tmp_CPPFLAGS"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler accepts strict warning options" >&5
-$as_echo_n "checking if compiler accepts strict warning options... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler accepts strict warning options" >&5
+printf %s "checking if compiler accepts strict warning options... " >&6; }
       CPPFLAGS="$tmp_save_CPPFLAGS $tmp_CPPFLAGS"
       CFLAGS="$tmp_save_CFLAGS $tmp_CFLAGS"
       squeeze CPPFLAGS
@@ -18717,11 +19590,12 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
     tmp_compiler_works="yes"
 
-else
+else $as_nop
 
     tmp_compiler_works="no"
     echo " " >&6
@@ -18729,7 +19603,7 @@
     echo " " >&6
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     if test "$tmp_compiler_works" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -18747,11 +19621,12 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tmp_compiler_works="yes"
 
-else
+else $as_nop
 
       tmp_compiler_works="no"
       echo " " >&6
@@ -18759,7 +19634,7 @@
       echo " " >&6
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
     if test "x$cross_compiling" != "xyes" &&
@@ -18768,12 +19643,13 @@
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -18793,10 +19669,11 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   tmp_compiler_works="yes"
 
-else
+else $as_nop
   tmp_compiler_works="no"
       echo " " >&6
       echo "run-fail: test program exited with status $ac_status" >&6
@@ -18812,17 +19689,17 @@
   fi
     if test "$tmp_compiler_works" = "yes"; then
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
+printf "%s\n" "$as_me: compiler options added: $tmp_CFLAGS $tmp_CPPFLAGS" >&6;}
 
   else
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
-$as_echo "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&5
+printf "%s\n" "$as_me: WARNING: compiler options rejected: $tmp_CFLAGS $tmp_CPPFLAGS" >&2;}
                 CPPFLAGS="$tmp_save_CPPFLAGS"
         CFLAGS="$tmp_save_CFLAGS"
 
@@ -18855,8 +19732,8 @@
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler halts on compilation errors" >&5
-$as_echo_n "checking if compiler halts on compilation errors... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler halts on compilation errors" >&5
+printf %s "checking if compiler halts on compilation errors... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -18872,23 +19749,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     as_fn_error $? "compiler does not halt on compilation errors." "$LINENO" 5
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler halts on negative sized arrays" >&5
-$as_echo_n "checking if compiler halts on negative sized arrays... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler halts on negative sized arrays" >&5
+printf %s "checking if compiler halts on negative sized arrays... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -18905,23 +19783,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     as_fn_error $? "compiler does not halt on negative sized arrays." "$LINENO" 5
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler halts on function prototype mismatch" >&5
-$as_echo_n "checking if compiler halts on function prototype mismatch... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler halts on function prototype mismatch" >&5
+printf %s "checking if compiler halts on function prototype mismatch... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -18949,23 +19828,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     as_fn_error $? "compiler does not halt on function prototype mismatch." "$LINENO" 5
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if compiler supports hiding library internal symbols" >&5
-$as_echo_n "checking if compiler supports hiding library internal symbols... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if compiler supports hiding library internal symbols" >&5
+printf %s "checking if compiler supports hiding library internal symbols... " >&6; }
   supports_symbol_hiding="no"
   symbol_hiding_CFLAGS=""
   symbol_hiding_EXTERN=""
@@ -19007,14 +19887,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
             tmp_EXTERN="__attribute__ ((__visibility__ (\"default\")))"
             tmp_CFLAGS="-fvisibility=hidden"
             supports_symbol_hiding="yes"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
           CFLAGS="$tmp_save_CFLAGS"
         fi
@@ -19058,7 +19939,8 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       supports_symbol_hiding="yes"
       if test -f conftest.err; then
@@ -19068,7 +19950,7 @@
         fi
       fi
 
-else
+else $as_nop
 
       supports_symbol_hiding="no"
       echo " " >&6
@@ -19077,17 +19959,17 @@
       echo " " >&6
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     CFLAGS="$tmp_save_CFLAGS"
   fi
   if test "$supports_symbol_hiding" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     symbol_hiding_CFLAGS="$tmp_CFLAGS"
     symbol_hiding_EXTERN="$tmp_EXTERN"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
@@ -19096,35 +19978,35 @@
   if test "$want_curldebug" = "yes"; then
     if test "x$enable_shared" != "xno" &&
       test "x$enable_shared" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_shared setting." >&5
-$as_echo "$as_me: WARNING: unknown enable_shared setting." >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_shared setting." >&5
+printf "%s\n" "$as_me: WARNING: unknown enable_shared setting." >&2;}
       supports_curldebug="no"
     fi
     if test "x$enable_static" != "xno" &&
       test "x$enable_static" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_static setting." >&5
-$as_echo "$as_me: WARNING: unknown enable_static setting." >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unknown enable_static setting." >&5
+printf "%s\n" "$as_me: WARNING: unknown enable_static setting." >&2;}
       supports_curldebug="no"
     fi
     if test "$supports_curldebug" != "no"; then
       if test "$enable_shared" = "yes" &&
         test "x$xc_lt_shlib_use_no_undefined" = 'xyes'; then
         supports_curldebug="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: shared library does not support undefined symbols." >&5
-$as_echo "$as_me: WARNING: shared library does not support undefined symbols." >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: shared library does not support undefined symbols." >&5
+printf "%s\n" "$as_me: WARNING: shared library does not support undefined symbols." >&2;}
       fi
     fi
   fi
   #
   if test "$want_curldebug" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if curl debug memory tracking can be enabled" >&5
-$as_echo_n "checking if curl debug memory tracking can be enabled... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if curl debug memory tracking can be enabled" >&5
+printf %s "checking if curl debug memory tracking can be enabled... " >&6; }
     test "$supports_curldebug" = "no" || supports_curldebug="yes"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $supports_curldebug" >&5
-$as_echo "$supports_curldebug" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $supports_curldebug" >&5
+printf "%s\n" "$supports_curldebug" >&6; }
     if test "$supports_curldebug" = "no"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot enable curl debug memory tracking." >&5
-$as_echo "$as_me: WARNING: cannot enable curl debug memory tracking." >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cannot enable curl debug memory tracking." >&5
+printf "%s\n" "$as_me: WARNING: cannot enable curl debug memory tracking." >&2;}
       want_curldebug="no"
     fi
   fi
@@ -19182,14 +20064,60 @@
 fi
 
 
+# For original MinGW (ie not MinGW-w64) define the Windows minimum supported OS
+# version to Windows XP (0x501) if it hasn't already been defined by the user.
+# Without this override original MinGW defaults the version to Windows NT 4.0.
+# Note original MinGW sets _WIN32_WINNT if not defined to whatever WINVER is.
+case $host in
+  *-*-mingw32*)
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if MinGW minimum supported OS should be set to XP" >&5
+printf %s "checking if MinGW minimum supported OS should be set to XP... " >&6; }
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+
+#include <_mingw.h>
+
+int main (void)
+{
+
+#if defined(__MINGW64_VERSION_MAJOR) || \
+    defined(WINVER) || \
+    defined(_WIN32_WINNT)
+#error
+#endif
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+      CPPFLAGS="$CPPFLAGS -DWINVER=0x501"
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+
+else $as_nop
+
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+    ;;
+esac
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${curl_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
+printf %s "checking for windows.h... " >&6; }
+if test ${curl_cv_header_windows_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -19215,36 +20143,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_windows_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_windows_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_windows_h" >&5
-$as_echo "$curl_cv_header_windows_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_windows_h" >&5
+printf "%s\n" "$curl_cv_header_windows_h" >&6; }
   case "$curl_cv_header_windows_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINDOWS_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build target is a native Windows one" >&5
-$as_echo_n "checking whether build target is a native Windows one... " >&6; }
-if ${curl_cv_native_windows+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build target is a native Windows one" >&5
+printf %s "checking whether build target is a native Windows one... " >&6; }
+if test ${curl_cv_native_windows+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     if test "$curl_cv_header_windows_h" = "no"; then
       curl_cv_native_windows="no"
@@ -19269,21 +20197,22 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
         curl_cv_native_windows="yes"
 
-else
+else $as_nop
 
         curl_cv_native_windows="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_native_windows" >&5
-$as_echo "$curl_cv_native_windows" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_native_windows" >&5
+printf "%s\n" "$curl_cv_native_windows" >&6; }
    if test "x$curl_cv_native_windows" = xyes; then
   DOING_NATIVE_WINDOWS_TRUE=
   DOING_NATIVE_WINDOWS_FALSE='#'
@@ -19296,67 +20225,12 @@
 case X-"$curl_cv_native_windows" in
   X-yes)
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock.h" >&5
-$as_echo_n "checking for winsock.h... " >&6; }
-if ${curl_cv_header_winsock_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_header_winsock_h="yes"
-
-else
-
-      curl_cv_header_winsock_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock_h" >&5
-$as_echo "$curl_cv_header_winsock_h" >&6; }
-  case "$curl_cv_header_winsock_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${curl_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
+printf %s "checking for winsock2.h... " >&6; }
+if test ${curl_cv_header_winsock2_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -19383,36 +20257,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_winsock2_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_winsock2_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock2_h" >&5
-$as_echo "$curl_cv_header_winsock2_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock2_h" >&5
+printf "%s\n" "$curl_cv_header_winsock2_h" >&6; }
   case "$curl_cv_header_winsock2_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
-$as_echo_n "checking for ws2tcpip.h... " >&6; }
-if ${curl_cv_header_ws2tcpip_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
+printf %s "checking for ws2tcpip.h... " >&6; }
+if test ${curl_cv_header_ws2tcpip_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -19440,36 +20314,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_ws2tcpip_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_ws2tcpip_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ws2tcpip_h" >&5
-$as_echo "$curl_cv_header_ws2tcpip_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ws2tcpip_h" >&5
+printf "%s\n" "$curl_cv_header_ws2tcpip_h" >&6; }
   case "$curl_cv_header_ws2tcpip_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WS2TCPIP_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WS2TCPIP_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wincrypt.h" >&5
-$as_echo_n "checking for wincrypt.h... " >&6; }
-if ${curl_cv_header_wincrypt_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wincrypt.h" >&5
+printf %s "checking for wincrypt.h... " >&6; }
+if test ${curl_cv_header_wincrypt_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -19492,36 +20366,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_wincrypt_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_wincrypt_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_wincrypt_h" >&5
-$as_echo "$curl_cv_header_wincrypt_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_wincrypt_h" >&5
+printf "%s\n" "$curl_cv_header_wincrypt_h" >&6; }
   case "$curl_cv_header_wincrypt_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINCRYPT_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINCRYPT_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winldap.h" >&5
-$as_echo_n "checking for winldap.h... " >&6; }
-if ${curl_cv_header_winldap_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for winldap.h" >&5
+printf %s "checking for winldap.h... " >&6; }
+if test ${curl_cv_header_winldap_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -19551,36 +20425,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_winldap_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_winldap_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winldap_h" >&5
-$as_echo "$curl_cv_header_winldap_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winldap_h" >&5
+printf "%s\n" "$curl_cv_header_winldap_h" >&6; }
   case "$curl_cv_header_winldap_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINLDAP_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINLDAP_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winber.h" >&5
-$as_echo_n "checking for winber.h... " >&6; }
-if ${curl_cv_header_winber_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for winber.h" >&5
+printf %s "checking for winber.h... " >&6; }
+if test ${curl_cv_header_winber_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -19612,33 +20486,31 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_winber_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_winber_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winber_h" >&5
-$as_echo "$curl_cv_header_winber_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winber_h" >&5
+printf "%s\n" "$curl_cv_header_winber_h" >&6; }
   case "$curl_cv_header_winber_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINBER_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINBER_H 1" >>confdefs.h
 
       ;;
   esac
 
     ;;
   *)
-    curl_cv_header_winsock_h="no"
     curl_cv_header_winsock2_h="no"
     curl_cv_header_ws2tcpip_h="no"
     curl_cv_header_wincrypt_h="no"
@@ -19647,8 +20519,8 @@
     ;;
 esac
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build target supports WIN32 file API" >&5
-$as_echo_n "checking whether build target supports WIN32 file API... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build target supports WIN32 file API" >&5
+printf %s "checking whether build target supports WIN32 file API... " >&6; }
   curl_win32_file_api="no"
   if test "$curl_cv_header_windows_h" = "yes"; then
     if test x"$enable_largefile" != "xno"; then
@@ -19673,12 +20545,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
         curl_win32_file_api="win32_large_files"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
     if test "$curl_win32_file_api" = "no"; then
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -19700,46 +20573,43 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
         curl_win32_file_api="win32_small_files"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
   fi
   case "$curl_win32_file_api" in
     win32_large_files)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (large file enabled)" >&5
-$as_echo "yes (large file enabled)" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes (large file enabled)" >&5
+printf "%s\n" "yes (large file enabled)" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define USE_WIN32_LARGE_FILES 1
-_ACEOF
+printf "%s\n" "#define USE_WIN32_LARGE_FILES 1" >>confdefs.h
 
       USE_WIN32_LARGE_FILES=1
 
       ;;
     win32_small_files)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes (large file disabled)" >&5
-$as_echo "yes (large file disabled)" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes (large file disabled)" >&5
+printf "%s\n" "yes (large file disabled)" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define USE_WIN32_SMALL_FILES 1
-_ACEOF
+printf "%s\n" "#define USE_WIN32_SMALL_FILES 1" >>confdefs.h
 
       USE_WIN32_SMALL_FILES=1
 
       ;;
     *)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether build target supports WIN32 crypto API" >&5
-$as_echo_n "checking whether build target supports WIN32 crypto API... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether build target supports WIN32 crypto API" >&5
+printf %s "checking whether build target supports WIN32 crypto API... " >&6; }
   curl_win32_crypto_api="no"
   if test "$curl_cv_header_wincrypt_h" = "yes"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -19767,28 +20637,27 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_win32_crypto_api="yes"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   case "$curl_win32_crypto_api" in
     yes)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define USE_WIN32_CRYPTO 1
-_ACEOF
+printf "%s\n" "#define USE_WIN32_CRYPTO 1" >>confdefs.h
 
       USE_WIN32_CRYPTO=1
 
       ;;
     *)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       ;;
   esac
 
@@ -19802,16 +20671,16 @@
       ;;
   esac
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for good-to-use Darwin CFLAGS" >&5
-$as_echo_n "checking for good-to-use Darwin CFLAGS... " >&6; }
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_cflags" >&5
-$as_echo "$tst_cflags" >&6; };
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for good-to-use Darwin CFLAGS" >&5
+printf %s "checking for good-to-use Darwin CFLAGS... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_cflags" >&5
+printf "%s\n" "$tst_cflags" >&6; };
 
   if test "$tst_cflags" = "yes"; then
     old_CFLAGS=$CFLAGS
     CFLAGS="$CFLAGS -Werror=partial-availability"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -Werror=partial-availability" >&5
-$as_echo_n "checking whether $CC accepts -Werror=partial-availability... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -Werror=partial-availability" >&5
+printf %s "checking whether $CC accepts -Werror=partial-availability... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -19822,21 +20691,22 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+if ac_fn_c_try_compile "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       CFLAGS=$old_CFLAGS
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to link macOS CoreFoundation and SystemConfiguration framework" >&5
-$as_echo_n "checking whether to link macOS CoreFoundation and SystemConfiguration framework... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to link macOS CoreFoundation and SystemConfiguration framework" >&5
+printf %s "checking whether to link macOS CoreFoundation and SystemConfiguration framework... " >&6; }
 case $host_os in
   darwin*)
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -19859,33 +20729,34 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       build_for_macos="yes"
 
-else
+else $as_nop
 
       build_for_macos="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     if test "x$build_for_macos" != xno; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       LDFLAGS="$LDFLAGS -framework CoreFoundation -framework SystemConfiguration"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     fi
     ;;
   *)
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 esac
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking to see if the compiler supports __builtin_available()" >&5
-$as_echo_n "checking to see if the compiler supports __builtin_available()... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking to see if the compiler supports __builtin_available()" >&5
+printf %s "checking to see if the compiler supports __builtin_available()... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -19902,196 +20773,200 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_BUILTIN_AVAILABLE 1
-_ACEOF
+printf "%s\n" "#define HAVE_BUILTIN_AVAILABLE 1" >>confdefs.h
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support http" >&5
-$as_echo_n "checking whether to support http... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support http" >&5
+printf %s "checking whether to support http... " >&6; }
 # Check whether --enable-http was given.
-if test "${enable_http+set}" = set; then :
+if test ${enable_http+y}
+then :
   enableval=$enable_http;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_HTTP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_HTTP 1" >>confdefs.h
 
        disable_http="yes"
-       { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disable HTTP disables FTP over proxy and RTSP" >&5
-$as_echo "$as_me: WARNING: disable HTTP disables FTP over proxy and RTSP" >&2;}
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: disable HTTP disables FTP over proxy and RTSP" >&5
+printf "%s\n" "$as_me: WARNING: disable HTTP disables FTP over proxy and RTSP" >&2;}
        CURL_DISABLE_HTTP=1
 
 
-$as_echo "#define CURL_DISABLE_RTSP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_RTSP 1" >>confdefs.h
 
        CURL_DISABLE_RTSP=1
 
 
-$as_echo "#define CURL_DISABLE_ALTSVC 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_ALTSVC 1" >>confdefs.h
 
 
-$as_echo "#define CURL_DISABLE_HSTS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_HSTS 1" >>confdefs.h
 
        curl_h1_msg="no      (--enable-http, --with-hyper)"
        curl_altsvc_msg="no";
        curl_hsts_msg="no      (--enable-hsts)";
        enable_altsvc="no"
-       enable_hsts="no"
+       hsts="no"
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support ftp" >&5
-$as_echo_n "checking whether to support ftp... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support ftp" >&5
+printf %s "checking whether to support ftp... " >&6; }
 # Check whether --enable-ftp was given.
-if test "${enable_ftp+set}" = set; then :
+if test ${enable_ftp+y}
+then :
   enableval=$enable_ftp;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_FTP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_FTP 1" >>confdefs.h
 
        CURL_DISABLE_FTP=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support file" >&5
-$as_echo_n "checking whether to support file... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support file" >&5
+printf %s "checking whether to support file... " >&6; }
 # Check whether --enable-file was given.
-if test "${enable_file+set}" = set; then :
+if test ${enable_file+y}
+then :
   enableval=$enable_file;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_FILE 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_FILE 1" >>confdefs.h
 
        CURL_DISABLE_FILE=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support ldap" >&5
-$as_echo_n "checking whether to support ldap... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support ldap" >&5
+printf %s "checking whether to support ldap... " >&6; }
 # Check whether --enable-ldap was given.
-if test "${enable_ldap+set}" = set; then :
+if test ${enable_ldap+y}
+then :
   enableval=$enable_ldap;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAP 1" >>confdefs.h
 
        CURL_DISABLE_LDAP=1
 
        ;;
   yes)
        ldap_askedfor="yes"
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   *)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
+else $as_nop
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support ldaps" >&5
-$as_echo_n "checking whether to support ldaps... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support ldaps" >&5
+printf %s "checking whether to support ldaps... " >&6; }
 # Check whether --enable-ldaps was given.
-if test "${enable_ldaps+set}" = set; then :
+if test ${enable_ldaps+y}
+then :
   enableval=$enable_ldaps;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
 
        CURL_DISABLE_LDAPS=1
 
        ;;
   *)   if test "x$CURL_DISABLE_LDAP" = "x1" ; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: LDAP needs to be enabled to support LDAPS" >&5
-$as_echo "LDAP needs to be enabled to support LDAPS" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: LDAP needs to be enabled to support LDAPS" >&5
+printf "%s\n" "LDAP needs to be enabled to support LDAPS" >&6; }
 
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
 
          CURL_DISABLE_LDAPS=1
 
        else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define HAVE_LDAP_SSL 1" >>confdefs.h
+printf "%s\n" "#define HAVE_LDAP_SSL 1" >>confdefs.h
 
          HAVE_LDAP_SSL=1
 
        fi
        ;;
   esac
-else
+else $as_nop
 
        if test "x$CURL_DISABLE_LDAP" = "x1" ; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
 
          CURL_DISABLE_LDAPS=1
 
        else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define HAVE_LDAP_SSL 1" >>confdefs.h
+printf "%s\n" "#define HAVE_LDAP_SSL 1" >>confdefs.h
 
          HAVE_LDAP_SSL=1
 
@@ -20105,7 +20980,8 @@
 
 
 # Check whether --with-hyper was given.
-if test "${with_hyper+set}" = set; then :
+if test ${with_hyper+y}
+then :
   withval=$with_hyper; OPT_HYPER=$withval
 fi
 
@@ -20139,11 +21015,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -20154,11 +21031,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -20170,11 +21051,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -20183,11 +21064,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -20198,11 +21080,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -20214,11 +21100,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -20226,8 +21112,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -20239,8 +21125,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for hyper options with pkg-config" >&5
-$as_echo_n "checking for hyper options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for hyper options with pkg-config" >&5
+printf %s "checking for hyper options with pkg-config... " >&6; }
             itexists=`
     if test -n "$want_hyper_path"; then
       PKG_CONFIG_LIBDIR="$want_hyper_path"
@@ -20250,11 +21136,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -20288,12 +21174,12 @@
     fi
   fi
   if test -n "$LIB_HYPER"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -l is $LIB_HYPER" >&5
-$as_echo "$as_me: -l is $LIB_HYPER" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -I is $CPP_HYPER" >&5
-$as_echo "$as_me: -I is $CPP_HYPER" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -L is $LD_HYPER" >&5
-$as_echo "$as_me: -L is $LD_HYPER" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -l is $LIB_HYPER" >&5
+printf "%s\n" "$as_me: -l is $LIB_HYPER" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -I is $CPP_HYPER" >&5
+printf "%s\n" "$as_me: -I is $CPP_HYPER" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -L is $LD_HYPER" >&5
+printf "%s\n" "$as_me: -L is $LD_HYPER" >&6;}
 
     LDFLAGS="$LDFLAGS $LD_HYPER"
     CPPFLAGS="$CPPFLAGS $CPP_HYPER"
@@ -20303,11 +21189,12 @@
       DIR_HYPER=`echo $LD_HYPER | $SED -e 's/^-L//'`
     fi
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for hyper_io_new in -lhyper" >&5
-$as_echo_n "checking for hyper_io_new in -lhyper... " >&6; }
-if ${ac_cv_lib_hyper_hyper_io_new+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for hyper_io_new in -lhyper" >&5
+printf %s "checking for hyper_io_new in -lhyper... " >&6; }
+if test ${ac_cv_lib_hyper_hyper_io_new+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lhyper  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20325,47 +21212,47 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_hyper_hyper_io_new=yes
-else
+else $as_nop
   ac_cv_lib_hyper_hyper_io_new=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hyper_hyper_io_new" >&5
-$as_echo "$ac_cv_lib_hyper_hyper_io_new" >&6; }
-if test "x$ac_cv_lib_hyper_hyper_io_new" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_hyper_hyper_io_new" >&5
+printf "%s\n" "$ac_cv_lib_hyper_hyper_io_new" >&6; }
+if test "x$ac_cv_lib_hyper_hyper_io_new" = xyes
+then :
 
-       for ac_header in hyper.h
+              for ac_header in hyper.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "hyper.h" "ac_cv_header_hyper_h" "$ac_includes_default"
-if test "x$ac_cv_header_hyper_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_HYPER_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "hyper.h" "ac_cv_header_hyper_h" "$ac_includes_default"
+if test "x$ac_cv_header_hyper_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_HYPER_H 1" >>confdefs.h
  experimental="$experimental Hyper"
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Hyper support is experimental" >&5
-$as_echo "$as_me: Hyper support is experimental" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Hyper support is experimental" >&5
+printf "%s\n" "$as_me: Hyper support is experimental" >&6;}
           curl_h1_msg="enabled (Hyper)"
           curl_h2_msg=$curl_h1_msg
           HYPER_ENABLED=1
 
-$as_echo "#define USE_HYPER 1" >>confdefs.h
+printf "%s\n" "#define USE_HYPER 1" >>confdefs.h
 
           USE_HYPER=1
 
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_HYPER"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_HYPER to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_HYPER to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_HYPER to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_HYPER to CURL_LIBRARY_PATH" >&6;}
 fi
 
 done
 
-
-else
+else $as_nop
   as_fn_error $? "--with-hyper but hyper was not found. See docs/HYPER.md." "$LINENO" 5
 
 fi
@@ -20374,26 +21261,27 @@
 fi
 
 if test X"$want_hyper" != Xno; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: Disable RTSP support with hyper" >&5
-$as_echo "$as_me: Disable RTSP support with hyper" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Disable RTSP support with hyper" >&5
+printf "%s\n" "$as_me: Disable RTSP support with hyper" >&6;}
 
-$as_echo "#define CURL_DISABLE_RTSP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_RTSP 1" >>confdefs.h
 
   CURL_DISABLE_RTSP=1
 
 
 else
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support rtsp" >&5
-$as_echo_n "checking whether to support rtsp... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support rtsp" >&5
+printf %s "checking whether to support rtsp... " >&6; }
   # Check whether --enable-rtsp was given.
-if test "${enable_rtsp+set}" = set; then :
+if test ${enable_rtsp+y}
+then :
   enableval=$enable_rtsp;  case "$enableval" in
     no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_RTSP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_RTSP 1" >>confdefs.h
 
        CURL_DISABLE_RTSP=1
 
@@ -20402,349 +21290,362 @@
        if test x$CURL_DISABLE_HTTP = x1 ; then
          as_fn_error $? "HTTP support needs to be enabled in order to enable RTSP support!" "$LINENO" 5
        else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
          curl_rtsp_msg="enabled"
        fi
        ;;
     esac
-else
+else $as_nop
   if test "x$CURL_DISABLE_HTTP" != "x1"; then
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
           curl_rtsp_msg="enabled"
        else
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        fi
 
 fi
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support proxies" >&5
-$as_echo_n "checking whether to support proxies... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support proxies" >&5
+printf %s "checking whether to support proxies... " >&6; }
 # Check whether --enable-proxy was given.
-if test "${enable_proxy+set}" = set; then :
+if test ${enable_proxy+y}
+then :
   enableval=$enable_proxy;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_PROXY 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_PROXY 1" >>confdefs.h
 
        CURL_DISABLE_PROXY=1
 
        https_proxy="no"
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support dict" >&5
-$as_echo_n "checking whether to support dict... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support dict" >&5
+printf %s "checking whether to support dict... " >&6; }
 # Check whether --enable-dict was given.
-if test "${enable_dict+set}" = set; then :
+if test ${enable_dict+y}
+then :
   enableval=$enable_dict;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_DICT 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_DICT 1" >>confdefs.h
 
        CURL_DISABLE_DICT=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support telnet" >&5
-$as_echo_n "checking whether to support telnet... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support telnet" >&5
+printf %s "checking whether to support telnet... " >&6; }
 # Check whether --enable-telnet was given.
-if test "${enable_telnet+set}" = set; then :
+if test ${enable_telnet+y}
+then :
   enableval=$enable_telnet;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_TELNET 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_TELNET 1" >>confdefs.h
 
        CURL_DISABLE_TELNET=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support tftp" >&5
-$as_echo_n "checking whether to support tftp... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support tftp" >&5
+printf %s "checking whether to support tftp... " >&6; }
 # Check whether --enable-tftp was given.
-if test "${enable_tftp+set}" = set; then :
+if test ${enable_tftp+y}
+then :
   enableval=$enable_tftp;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_TFTP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_TFTP 1" >>confdefs.h
 
        CURL_DISABLE_TFTP=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support pop3" >&5
-$as_echo_n "checking whether to support pop3... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support pop3" >&5
+printf %s "checking whether to support pop3... " >&6; }
 # Check whether --enable-pop3 was given.
-if test "${enable_pop3+set}" = set; then :
+if test ${enable_pop3+y}
+then :
   enableval=$enable_pop3;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_POP3 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_POP3 1" >>confdefs.h
 
        CURL_DISABLE_POP3=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support imap" >&5
-$as_echo_n "checking whether to support imap... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support imap" >&5
+printf %s "checking whether to support imap... " >&6; }
 # Check whether --enable-imap was given.
-if test "${enable_imap+set}" = set; then :
+if test ${enable_imap+y}
+then :
   enableval=$enable_imap;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_IMAP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_IMAP 1" >>confdefs.h
 
        CURL_DISABLE_IMAP=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support smb" >&5
-$as_echo_n "checking whether to support smb... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support smb" >&5
+printf %s "checking whether to support smb... " >&6; }
 # Check whether --enable-smb was given.
-if test "${enable_smb+set}" = set; then :
+if test ${enable_smb+y}
+then :
   enableval=$enable_smb;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_SMB 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_SMB 1" >>confdefs.h
 
        CURL_DISABLE_SMB=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support smtp" >&5
-$as_echo_n "checking whether to support smtp... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support smtp" >&5
+printf %s "checking whether to support smtp... " >&6; }
 # Check whether --enable-smtp was given.
-if test "${enable_smtp+set}" = set; then :
+if test ${enable_smtp+y}
+then :
   enableval=$enable_smtp;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_SMTP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_SMTP 1" >>confdefs.h
 
        CURL_DISABLE_SMTP=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support gopher" >&5
-$as_echo_n "checking whether to support gopher... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support gopher" >&5
+printf %s "checking whether to support gopher... " >&6; }
 # Check whether --enable-gopher was given.
-if test "${enable_gopher+set}" = set; then :
+if test ${enable_gopher+y}
+then :
   enableval=$enable_gopher;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_GOPHER 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_GOPHER 1" >>confdefs.h
 
        CURL_DISABLE_GOPHER=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support mqtt" >&5
-$as_echo_n "checking whether to support mqtt... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support mqtt" >&5
+printf %s "checking whether to support mqtt... " >&6; }
 # Check whether --enable-mqtt was given.
-if test "${enable_mqtt+set}" = set; then :
+if test ${enable_mqtt+y}
+then :
   enableval=$enable_mqtt;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_MQTT 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_MQTT 1" >>confdefs.h
 
        CURL_DISABLE_MQTT=1
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to provide built-in manual" >&5
-$as_echo_n "checking whether to provide built-in manual... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to provide built-in manual" >&5
+printf %s "checking whether to provide built-in manual... " >&6; }
 # Check whether --enable-manual was given.
-if test "${enable_manual+set}" = set; then :
+if test ${enable_manual+y}
+then :
   enableval=$enable_manual;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        USE_MANUAL="1"
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        USE_MANUAL="1"
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable generation of C code" >&5
-$as_echo_n "checking whether to enable generation of C code... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable generation of C code" >&5
+printf %s "checking whether to enable generation of C code... " >&6; }
 # Check whether --enable-libcurl_option was given.
-if test "${enable_libcurl_option+set}" = set; then :
+if test ${enable_libcurl_option+y}
+then :
   enableval=$enable_libcurl_option;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_LIBCURL_OPTION 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LIBCURL_OPTION 1" >>confdefs.h
 
        curl_libcurl_msg="no"
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use libgcc" >&5
-$as_echo_n "checking whether to use libgcc... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use libgcc" >&5
+printf %s "checking whether to use libgcc... " >&6; }
 # Check whether --enable-libgcc was given.
-if test "${enable_libgcc+set}" = set; then :
+if test ${enable_libgcc+y}
+then :
   enableval=$enable_libgcc;  case "$enableval" in
   yes)
        LIBS="-lgcc $LIBS"
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
 
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if X/Open network library is required" >&5
-$as_echo_n "checking if X/Open network library is required... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if X/Open network library is required" >&5
+printf %s "checking if X/Open network library is required... " >&6; }
   tst_lib_xnet_required="no"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -20763,27 +21664,30 @@
 
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
     tst_lib_xnet_required="yes"
     LIBS="-lxnet $LIBS"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_lib_xnet_required" >&5
-$as_echo "$tst_lib_xnet_required" >&6; }
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_lib_xnet_required" >&5
+printf "%s\n" "$tst_lib_xnet_required" >&6; }
 
 
 ac_fn_c_check_func "$LINENO" "gethostbyname" "ac_cv_func_gethostbyname"
-if test "x$ac_cv_func_gethostbyname" = xyes; then :
+if test "x$ac_cv_func_gethostbyname" = xyes
+then :
   HAVE_GETHOSTBYNAME="1"
 
-else
-   { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
-$as_echo_n "checking for gethostbyname in -lnsl... " >&6; }
-if ${ac_cv_lib_nsl_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+else $as_nop
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnsl" >&5
+printf %s "checking for gethostbyname in -lnsl... " >&6; }
+if test ${ac_cv_lib_nsl_gethostbyname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnsl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20801,18 +21705,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_nsl_gethostbyname=yes
-else
+else $as_nop
   ac_cv_lib_nsl_gethostbyname=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
-$as_echo "$ac_cv_lib_nsl_gethostbyname" >&6; }
-if test "x$ac_cv_lib_nsl_gethostbyname" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nsl_gethostbyname" >&5
+printf "%s\n" "$ac_cv_lib_nsl_gethostbyname" >&6; }
+if test "x$ac_cv_lib_nsl_gethostbyname" = xyes
+then :
   HAVE_GETHOSTBYNAME="1"
                              LIBS="-lnsl $LIBS"
 
@@ -20824,11 +21730,12 @@
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lsocket" >&5
-$as_echo_n "checking for gethostbyname in -lsocket... " >&6; }
-if ${ac_cv_lib_socket_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lsocket" >&5
+printf %s "checking for gethostbyname in -lsocket... " >&6; }
+if test ${ac_cv_lib_socket_gethostbyname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lsocket  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20846,18 +21753,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_socket_gethostbyname=yes
-else
+else $as_nop
   ac_cv_lib_socket_gethostbyname=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_gethostbyname" >&5
-$as_echo "$ac_cv_lib_socket_gethostbyname" >&6; }
-if test "x$ac_cv_lib_socket_gethostbyname" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_socket_gethostbyname" >&5
+printf "%s\n" "$ac_cv_lib_socket_gethostbyname" >&6; }
+if test "x$ac_cv_lib_socket_gethostbyname" = xyes
+then :
   HAVE_GETHOSTBYNAME="1"
                LIBS="-lsocket $LIBS"
 
@@ -20867,11 +21776,12 @@
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lwatt" >&5
-$as_echo_n "checking for gethostbyname in -lwatt... " >&6; }
-if ${ac_cv_lib_watt_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lwatt" >&5
+printf %s "checking for gethostbyname in -lwatt... " >&6; }
+if test ${ac_cv_lib_watt_gethostbyname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lwatt  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20889,18 +21799,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_watt_gethostbyname=yes
-else
+else $as_nop
   ac_cv_lib_watt_gethostbyname=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_watt_gethostbyname" >&5
-$as_echo "$ac_cv_lib_watt_gethostbyname" >&6; }
-if test "x$ac_cv_lib_watt_gethostbyname" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_watt_gethostbyname" >&5
+printf "%s\n" "$ac_cv_lib_watt_gethostbyname" >&6; }
+if test "x$ac_cv_lib_watt_gethostbyname" = xyes
+then :
   HAVE_GETHOSTBYNAME="1"
                CPPFLAGS="-I/dev/env/WATT_ROOT/inc"
                LDFLAGS="-L/dev/env/WATT_ROOT/lib"
@@ -20912,8 +21824,8 @@
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname with both nsl and socket libs" >&5
-$as_echo_n "checking for gethostbyname with both nsl and socket libs... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname with both nsl and socket libs" >&5
+printf %s "checking for gethostbyname with both nsl and socket libs... " >&6; }
   my_ac_save_LIBS=$LIBS
   LIBS="-lnsl -lsocket $LIBS"
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -20931,44 +21843,35 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     HAVE_GETHOSTBYNAME="1"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     LIBS=$my_ac_save_LIBS
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
     if test "$curl_cv_header_windows_h" = "yes"; then
-    if test "$curl_cv_header_winsock_h" = "yes"; then
-      case $host in
-        *-*-mingw32ce*)
-          winsock_LIB="-lwinsock"
-          ;;
-        *)
-          winsock_LIB="-lwsock32"
-          ;;
-      esac
-    fi
     if test "$curl_cv_header_winsock2_h" = "yes"; then
       winsock_LIB="-lws2_32"
     fi
     if test ! -z "$winsock_LIB"; then
       my_ac_save_LIBS=$LIBS
       LIBS="$winsock_LIB $LIBS"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in $winsock_LIB" >&5
-$as_echo_n "checking for gethostbyname in $winsock_LIB... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in $winsock_LIB" >&5
+printf %s "checking for gethostbyname in $winsock_LIB... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -20980,10 +21883,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #endif
 
@@ -20997,21 +21896,22 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         HAVE_GETHOSTBYNAME="1"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         winsock_LIB=""
         LIBS=$my_ac_save_LIBS
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     fi
   fi
@@ -21019,8 +21919,8 @@
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for Minix 3" >&5
-$as_echo_n "checking for gethostbyname for Minix 3... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for Minix 3" >&5
+printf %s "checking for gethostbyname for Minix 3... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -21038,26 +21938,27 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     HAVE_GETHOSTBYNAME="1"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for eCos" >&5
-$as_echo_n "checking for gethostbyname for eCos... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for eCos" >&5
+printf %s "checking for gethostbyname for eCos... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -21075,26 +21976,27 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     HAVE_GETHOSTBYNAME="1"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 
 if test "$HAVE_GETHOSTBYNAME" != "1" -o "${with_amissl+set}" = set
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for AmigaOS bsdsocket.library" >&5
-$as_echo_n "checking for gethostbyname for AmigaOS bsdsocket.library... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname for AmigaOS bsdsocket.library" >&5
+printf %s "checking for gethostbyname for AmigaOS bsdsocket.library... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -21112,35 +22014,37 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     HAVE_GETHOSTBYNAME="1"
     HAVE_PROTO_BSDSOCKET_H="1"
 
-$as_echo "#define HAVE_PROTO_BSDSOCKET_H 1" >>confdefs.h
+printf "%s\n" "#define HAVE_PROTO_BSDSOCKET_H 1" >>confdefs.h
 
     HAVE_PROTO_BSDSOCKET_H=1
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 fi
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnetwork" >&5
-$as_echo_n "checking for gethostbyname in -lnetwork... " >&6; }
-if ${ac_cv_lib_network_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnetwork" >&5
+printf %s "checking for gethostbyname in -lnetwork... " >&6; }
+if test ${ac_cv_lib_network_gethostbyname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnetwork  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -21158,18 +22062,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_network_gethostbyname=yes
-else
+else $as_nop
   ac_cv_lib_network_gethostbyname=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_network_gethostbyname" >&5
-$as_echo "$ac_cv_lib_network_gethostbyname" >&6; }
-if test "x$ac_cv_lib_network_gethostbyname" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_network_gethostbyname" >&5
+printf "%s\n" "$ac_cv_lib_network_gethostbyname" >&6; }
+if test "x$ac_cv_lib_network_gethostbyname" = xyes
+then :
   HAVE_GETHOSTBYNAME="1"
                LIBS="-lnetwork $LIBS"
 
@@ -21179,11 +22085,12 @@
 
 if test "$HAVE_GETHOSTBYNAME" != "1"
 then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnet" >&5
-$as_echo_n "checking for gethostbyname in -lnet... " >&6; }
-if ${ac_cv_lib_net_gethostbyname+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostbyname in -lnet" >&5
+printf %s "checking for gethostbyname in -lnet... " >&6; }
+if test ${ac_cv_lib_net_gethostbyname+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnet  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -21201,18 +22108,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_net_gethostbyname=yes
-else
+else $as_nop
   ac_cv_lib_net_gethostbyname=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_net_gethostbyname" >&5
-$as_echo "$ac_cv_lib_net_gethostbyname" >&6; }
-if test "x$ac_cv_lib_net_gethostbyname" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_net_gethostbyname" >&5
+printf "%s\n" "$ac_cv_lib_net_gethostbyname" >&6; }
+if test "x$ac_cv_lib_net_gethostbyname" = xyes
+then :
   HAVE_GETHOSTBYNAME="1"
                LIBS="-lnet $LIBS"
 
@@ -21235,19 +22144,16 @@
 #  include <windows.h>
 #  ifdef HAVE_WINSOCK2_H
 #    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #endif
 /* includes end */"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${curl_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
+printf %s "checking for windows.h... " >&6; }
+if test ${curl_cv_header_windows_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -21273,92 +22179,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_windows_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_windows_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_windows_h" >&5
-$as_echo "$curl_cv_header_windows_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_windows_h" >&5
+printf "%s\n" "$curl_cv_header_windows_h" >&6; }
   case "$curl_cv_header_windows_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINDOWS_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock.h" >&5
-$as_echo_n "checking for winsock.h... " >&6; }
-if ${curl_cv_header_winsock_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
-
-    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#undef inline
-#ifndef WIN32_LEAN_AND_MEAN
-#define WIN32_LEAN_AND_MEAN
-#endif
-#include <windows.h>
-#include <winsock.h>
-
-int main (void)
-{
-
-#if defined(__CYGWIN__) || defined(__CEGCC__)
-        HAVE_WINSOCK_H shall not be defined.
-#else
-        int dummy=WSACleanup();
-#endif
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
-
-      curl_cv_header_winsock_h="yes"
-
-else
-
-      curl_cv_header_winsock_h="no"
-
-fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
-
-fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock_h" >&5
-$as_echo "$curl_cv_header_winsock_h" >&6; }
-  case "$curl_cv_header_winsock_h" in
-    yes)
-
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK_H 1
-_ACEOF
-
-      ;;
-  esac
-
-
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${curl_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
+printf %s "checking for winsock2.h... " >&6; }
+if test ${curl_cv_header_winsock2_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -21385,26 +22235,25 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_winsock2_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_winsock2_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock2_h" >&5
-$as_echo "$curl_cv_header_winsock2_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock2_h" >&5
+printf "%s\n" "$curl_cv_header_winsock2_h" >&6; }
   case "$curl_cv_header_winsock2_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h
 
       ;;
   esac
@@ -21418,23 +22267,18 @@
   struct Library *SocketBase = NULL;
 #endif
 /* includes end */"
-  for ac_header in proto/bsdsocket.h
-do :
   ac_fn_c_check_header_compile "$LINENO" "proto/bsdsocket.h" "ac_cv_header_proto_bsdsocket_h" "      $curl_includes_bsdsocket
 "
-if test "x$ac_cv_header_proto_bsdsocket_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_PROTO_BSDSOCKET_H 1
-_ACEOF
+if test "x$ac_cv_header_proto_bsdsocket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_PROTO_BSDSOCKET_H 1" >>confdefs.h
 
 fi
 
-done
 
 
-
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for connect in libraries" >&5
-$as_echo_n "checking for connect in libraries... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for connect in libraries" >&5
+printf %s "checking for connect in libraries... " >&6; }
   tst_connect_save_LIBS="$LIBS"
   tst_connect_need_LIBS="unknown"
   for tst_lib in '' '-lsocket' ; do
@@ -21461,12 +22305,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
         tst_connect_need_LIBS="$tst_lib"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     fi
   done
@@ -21474,17 +22319,17 @@
   #
   case X-"$tst_connect_need_LIBS" in
     X-unknown)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find connect" >&5
-$as_echo "cannot find connect" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cannot find connect" >&5
+printf "%s\n" "cannot find connect" >&6; }
       as_fn_error $? "cannot find connect function in libraries." "$LINENO" 5
       ;;
     X-)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ;;
     *)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_connect_need_LIBS" >&5
-$as_echo "$tst_connect_need_LIBS" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_connect_need_LIBS" >&5
+printf "%s\n" "$tst_connect_need_LIBS" >&6; }
       LIBS="$tst_connect_need_LIBS $tst_connect_save_LIBS"
       ;;
   esac
@@ -21493,21 +22338,21 @@
 CURL_NETWORK_LIBS=$LIBS
 
 
-  for ac_header in sys/types.h sys/time.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_time_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TIME_H 1" >>confdefs.h
 
 fi
 
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for monotonic clock_gettime" >&5
-$as_echo_n "checking for monotonic clock_gettime... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for monotonic clock_gettime" >&5
+printf %s "checking for monotonic clock_gettime... " >&6; }
   #
   if test "x$dontwant_rt" = "xno" ; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -21533,28 +22378,29 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       curl_func_clock_gettime="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       curl_func_clock_gettime="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
 
 
     #
   if test "$curl_func_clock_gettime" = "yes"; then
     #
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in libraries" >&5
-$as_echo_n "checking for clock_gettime in libraries... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for clock_gettime in libraries" >&5
+printf %s "checking for clock_gettime in libraries... " >&6; }
     #
     curl_cv_save_LIBS="$LIBS"
     curl_cv_gclk_LIBS="unknown"
@@ -21589,12 +22435,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
           curl_cv_gclk_LIBS="$x_xlibs"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
       fi
     done
@@ -21603,15 +22450,15 @@
     #
     case X-"$curl_cv_gclk_LIBS" in
       X-unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find clock_gettime" >&5
-$as_echo "cannot find clock_gettime" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cannot find clock_gettime" >&5
+printf "%s\n" "cannot find clock_gettime" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
+printf "%s\n" "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
         curl_func_clock_gettime="no"
         ;;
       X-)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no additional lib required" >&5
-$as_echo "no additional lib required" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no additional lib required" >&5
+printf "%s\n" "no additional lib required" >&6; }
         curl_func_clock_gettime="yes"
         ;;
       *)
@@ -21620,26 +22467,27 @@
         else
           LIBS="$curl_cv_gclk_LIBS $curl_cv_save_LIBS"
         fi
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_gclk_LIBS" >&5
-$as_echo "$curl_cv_gclk_LIBS" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_gclk_LIBS" >&5
+printf "%s\n" "$curl_cv_gclk_LIBS" >&6; }
         curl_func_clock_gettime="yes"
         ;;
     esac
     #
         if test "x$cross_compiling" != "xyes" &&
       test "$curl_func_clock_gettime" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if monotonic clock_gettime works" >&5
-$as_echo_n "checking if monotonic clock_gettime works... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if monotonic clock_gettime works" >&5
+printf %s "checking if monotonic clock_gettime works... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -21669,15 +22517,16 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&5
+printf "%s\n" "$as_me: WARNING: HAVE_CLOCK_GETTIME_MONOTONIC will not be defined" >&2;}
         curl_func_clock_gettime="no"
         LIBS="$curl_cv_save_LIBS"
 
@@ -21693,9 +22542,7 @@
     case "$curl_func_clock_gettime" in
       yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOCK_GETTIME_MONOTONIC 1
-_ACEOF
+printf "%s\n" "#define HAVE_CLOCK_GETTIME_MONOTONIC 1" >>confdefs.h
 
         ;;
     esac
@@ -21714,14 +22561,15 @@
 ZLIB_LIBS=""
 
 # Check whether --with-zlib was given.
-if test "${with_zlib+set}" = set; then :
+if test ${with_zlib+y}
+then :
   withval=$with_zlib; OPT_ZLIB="$withval"
 fi
 
 
 if test "$OPT_ZLIB" = "no" ; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: zlib disabled" >&5
-$as_echo "$as_me: WARNING: zlib disabled" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: zlib disabled" >&5
+printf "%s\n" "$as_me: WARNING: zlib disabled" >&2;}
 else
   if test "$OPT_ZLIB" = "yes" ; then
     OPT_ZLIB=""
@@ -21735,11 +22583,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -21750,11 +22599,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -21766,11 +22619,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -21779,11 +22632,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -21794,11 +22648,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -21810,11 +22668,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -21822,8 +22680,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -21835,8 +22693,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for zlib options with pkg-config" >&5
-$as_echo_n "checking for zlib options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for zlib options with pkg-config" >&5
+printf %s "checking for zlib options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -21846,11 +22704,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -21866,11 +22724,12 @@
     if test -z "$HAVE_LIBZ"; then
 
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflateEnd in -lz" >&5
-$as_echo_n "checking for inflateEnd in -lz... " >&6; }
-if ${ac_cv_lib_z_inflateEnd+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for inflateEnd in -lz" >&5
+printf %s "checking for inflateEnd in -lz... " >&6; }
+if test ${ac_cv_lib_z_inflateEnd+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lz  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -21888,21 +22747,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_z_inflateEnd=yes
-else
+else $as_nop
   ac_cv_lib_z_inflateEnd=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflateEnd" >&5
-$as_echo "$ac_cv_lib_z_inflateEnd" >&6; }
-if test "x$ac_cv_lib_z_inflateEnd" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflateEnd" >&5
+printf "%s\n" "$ac_cv_lib_z_inflateEnd" >&6; }
+if test "x$ac_cv_lib_z_inflateEnd" = xyes
+then :
                      HAVE_LIBZ="1"
                     LIBS="-lz $LIBS"
-else
+else $as_nop
                      OPT_ZLIB="/usr/local"
 fi
 
@@ -21914,16 +22775,18 @@
      LDFLAGS="$LDFLAGS -L$OPT_ZLIB/lib$libsuff"
   fi
 
-  ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
-if test "x$ac_cv_header_zlib_h" = xyes; then :
+  ac_fn_c_check_header_compile "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default"
+if test "x$ac_cv_header_zlib_h" = xyes
+then :
 
         HAVE_ZLIB_H="1"
         if test "$HAVE_LIBZ" != "1"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gzread in -lz" >&5
-$as_echo_n "checking for gzread in -lz... " >&6; }
-if ${ac_cv_lib_z_gzread+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gzread in -lz" >&5
+printf %s "checking for gzread in -lz... " >&6; }
+if test ${ac_cv_lib_z_gzread+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lz  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -21941,30 +22804,32 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_z_gzread=yes
-else
+else $as_nop
   ac_cv_lib_z_gzread=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_gzread" >&5
-$as_echo "$ac_cv_lib_z_gzread" >&6; }
-if test "x$ac_cv_lib_z_gzread" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_gzread" >&5
+printf "%s\n" "$ac_cv_lib_z_gzread" >&6; }
+if test "x$ac_cv_lib_z_gzread" = xyes
+then :
 
                                       HAVE_LIBZ="1"
                    LIBS="-lz $LIBS"
 
-else
+else $as_nop
    CPPFLAGS=$clean_CPPFLAGS
                    LDFLAGS=$clean_LDFLAGS
 fi
 
     fi
 
-else
+else $as_nop
 
             CPPFLAGS=$clean_CPPFLAGS
       LDFLAGS=$clean_LDFLAGS
@@ -21972,19 +22837,18 @@
 fi
 
 
-
   if test "$HAVE_LIBZ" = "1" && test "$HAVE_ZLIB_H" != "1"
   then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: configure found only the libz lib, not the header file!" >&5
-$as_echo "$as_me: WARNING: configure found only the libz lib, not the header file!" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: configure found only the libz lib, not the header file!" >&5
+printf "%s\n" "$as_me: WARNING: configure found only the libz lib, not the header file!" >&2;}
     HAVE_LIBZ=""
     CPPFLAGS=$clean_CPPFLAGS
     LDFLAGS=$clean_LDFLAGS
     LIBS=$clean_LIBS
   elif test "$HAVE_LIBZ" != "1" && test "$HAVE_ZLIB_H" = "1"
   then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: configure found only the libz header file, not the lib!" >&5
-$as_echo "$as_me: WARNING: configure found only the libz header file, not the lib!" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: configure found only the libz header file, not the lib!" >&5
+printf "%s\n" "$as_me: WARNING: configure found only the libz header file, not the lib!" >&2;}
     CPPFLAGS=$clean_CPPFLAGS
     LDFLAGS=$clean_LDFLAGS
     LIBS=$clean_LIBS
@@ -21992,18 +22856,18 @@
   then
 
 
-$as_echo "#define HAVE_ZLIB_H 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ZLIB_H 1" >>confdefs.h
 
 
-$as_echo "#define HAVE_LIBZ 1" >>confdefs.h
+printf "%s\n" "#define HAVE_LIBZ 1" >>confdefs.h
 
 
     ZLIB_LIBS="-lz"
     LIBS="-lz $clean_LIBS"
 
         AMFIXLIB="1"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: found both libz and libz.h header" >&5
-$as_echo "$as_me: found both libz and libz.h header" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: found both libz and libz.h header" >&5
+printf "%s\n" "$as_me: found both libz and libz.h header" >&6;}
     curl_zlib_msg="enabled"
   fi
 fi
@@ -22023,7 +22887,8 @@
 OPT_BROTLI=off
 
 # Check whether --with-brotli was given.
-if test "${with_brotli+set}" = set; then :
+if test ${with_brotli+y}
+then :
   withval=$with_brotli; OPT_BROTLI=$withval
 fi
 
@@ -22042,11 +22907,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -22057,11 +22923,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -22073,11 +22943,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -22086,11 +22956,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -22101,11 +22972,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -22117,11 +22992,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -22129,8 +23004,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -22142,8 +23017,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libbrotlidec options with pkg-config" >&5
-$as_echo_n "checking for libbrotlidec options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libbrotlidec options with pkg-config" >&5
+printf %s "checking for libbrotlidec options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -22153,11 +23028,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -22189,11 +23064,12 @@
   CPPFLAGS="$CPPFLAGS $CPP_BROTLI"
   LIBS="$LIB_BROTLI $LIBS"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BrotliDecoderDecompress in -lbrotlidec" >&5
-$as_echo_n "checking for BrotliDecoderDecompress in -lbrotlidec... " >&6; }
-if ${ac_cv_lib_brotlidec_BrotliDecoderDecompress+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BrotliDecoderDecompress in -lbrotlidec" >&5
+printf %s "checking for BrotliDecoderDecompress in -lbrotlidec... " >&6; }
+if test ${ac_cv_lib_brotlidec_BrotliDecoderDecompress+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lbrotlidec  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -22211,38 +23087,37 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_brotlidec_BrotliDecoderDecompress=yes
-else
+else $as_nop
   ac_cv_lib_brotlidec_BrotliDecoderDecompress=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_brotlidec_BrotliDecoderDecompress" >&5
-$as_echo "$ac_cv_lib_brotlidec_BrotliDecoderDecompress" >&6; }
-if test "x$ac_cv_lib_brotlidec_BrotliDecoderDecompress" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBBROTLIDEC 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_brotlidec_BrotliDecoderDecompress" >&5
+printf "%s\n" "$ac_cv_lib_brotlidec_BrotliDecoderDecompress" >&6; }
+if test "x$ac_cv_lib_brotlidec_BrotliDecoderDecompress" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBBROTLIDEC 1" >>confdefs.h
 
   LIBS="-lbrotlidec $LIBS"
 
 fi
 
 
-  for ac_header in brotli/decode.h
+         for ac_header in brotli/decode.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "brotli/decode.h" "ac_cv_header_brotli_decode_h" "$ac_includes_default"
-if test "x$ac_cv_header_brotli_decode_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_BROTLI_DECODE_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "brotli/decode.h" "ac_cv_header_brotli_decode_h" "$ac_includes_default"
+if test "x$ac_cv_header_brotli_decode_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_BROTLI_DECODE_H 1" >>confdefs.h
  curl_brotli_msg="enabled (libbrotlidec)"
     HAVE_BROTLI=1
 
-$as_echo "#define HAVE_BROTLI 1" >>confdefs.h
+printf "%s\n" "#define HAVE_BROTLI 1" >>confdefs.h
 
     HAVE_BROTLI=1
 
@@ -22251,7 +23126,6 @@
 
 done
 
-
   if test X"$OPT_BROTLI" != Xoff &&
      test "$HAVE_BROTLI" != "1"; then
     as_fn_error $? "BROTLI libs and/or directories were not found where specified!" "$LINENO" 5
@@ -22263,8 +23137,8 @@
        if test "x$cross_compiling" != "xyes"; then
          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_BROTLI"
          export CURL_LIBRARY_PATH
-         { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_BROTLI to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_BROTLI to CURL_LIBRARY_PATH" >&6;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_BROTLI to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_BROTLI to CURL_LIBRARY_PATH" >&6;}
        fi
     fi
   else
@@ -22278,7 +23152,8 @@
 OPT_ZSTD=off
 
 # Check whether --with-zstd was given.
-if test "${with_zstd+set}" = set; then :
+if test ${with_zstd+y}
+then :
   withval=$with_zstd; OPT_ZSTD=$withval
 fi
 
@@ -22297,11 +23172,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -22312,11 +23188,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -22328,11 +23208,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -22341,11 +23221,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -22356,11 +23237,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -22372,11 +23257,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -22384,8 +23269,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -22397,8 +23282,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libzstd options with pkg-config" >&5
-$as_echo_n "checking for libzstd options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libzstd options with pkg-config" >&5
+printf %s "checking for libzstd options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -22408,11 +23293,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -22444,11 +23329,12 @@
   CPPFLAGS="$CPPFLAGS $CPP_ZSTD"
   LIBS="$LIB_ZSTD $LIBS"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ZSTD_createDStream in -lzstd" >&5
-$as_echo_n "checking for ZSTD_createDStream in -lzstd... " >&6; }
-if ${ac_cv_lib_zstd_ZSTD_createDStream+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ZSTD_createDStream in -lzstd" >&5
+printf %s "checking for ZSTD_createDStream in -lzstd... " >&6; }
+if test ${ac_cv_lib_zstd_ZSTD_createDStream+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lzstd  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -22466,38 +23352,37 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_zstd_ZSTD_createDStream=yes
-else
+else $as_nop
   ac_cv_lib_zstd_ZSTD_createDStream=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_zstd_ZSTD_createDStream" >&5
-$as_echo "$ac_cv_lib_zstd_ZSTD_createDStream" >&6; }
-if test "x$ac_cv_lib_zstd_ZSTD_createDStream" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBZSTD 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_zstd_ZSTD_createDStream" >&5
+printf "%s\n" "$ac_cv_lib_zstd_ZSTD_createDStream" >&6; }
+if test "x$ac_cv_lib_zstd_ZSTD_createDStream" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBZSTD 1" >>confdefs.h
 
   LIBS="-lzstd $LIBS"
 
 fi
 
 
-  for ac_header in zstd.h
+         for ac_header in zstd.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "zstd.h" "ac_cv_header_zstd_h" "$ac_includes_default"
-if test "x$ac_cv_header_zstd_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_ZSTD_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "zstd.h" "ac_cv_header_zstd_h" "$ac_includes_default"
+if test "x$ac_cv_header_zstd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ZSTD_H 1" >>confdefs.h
  curl_zstd_msg="enabled (libzstd)"
     HAVE_ZSTD=1
 
-$as_echo "#define HAVE_ZSTD 1" >>confdefs.h
+printf "%s\n" "#define HAVE_ZSTD 1" >>confdefs.h
 
     HAVE_ZSTD=1
 
@@ -22506,7 +23391,6 @@
 
 done
 
-
   if test X"$OPT_ZSTD" != Xoff &&
      test "$HAVE_ZSTD" != "1"; then
     as_fn_error $? "libzstd was not found where specified!" "$LINENO" 5
@@ -22518,8 +23402,8 @@
        if test "x$cross_compiling" != "xyes"; then
          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_ZSTD"
          export CURL_LIBRARY_PATH
-         { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_ZSTD to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_ZSTD to CURL_LIBRARY_PATH" >&6;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_ZSTD to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_ZSTD to CURL_LIBRARY_PATH" >&6;}
        fi
     fi
   else
@@ -22533,7 +23417,8 @@
 LDAPLIBNAME=""
 
 # Check whether --with-ldap-lib was given.
-if test "${with_ldap_lib+set}" = set; then :
+if test ${with_ldap_lib+y}
+then :
   withval=$with_ldap_lib; LDAPLIBNAME="$withval"
 fi
 
@@ -22541,7 +23426,8 @@
 LBERLIBNAME=""
 
 # Check whether --with-lber-lib was given.
-if test "${with_lber_lib+set}" = set; then :
+if test ${with_lber_lib+y}
+then :
   withval=$with_lber_lib; LBERLIBNAME="$withval"
 fi
 
@@ -22549,11 +23435,12 @@
 if test x$CURL_DISABLE_LDAP != x1 ; then
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for lber.h" >&5
-$as_echo_n "checking for lber.h... " >&6; }
-if ${curl_cv_header_lber_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for lber.h" >&5
+printf %s "checking for lber.h... " >&6; }
+if test ${curl_cv_header_lber_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -22587,25 +23474,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_lber_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_lber_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_lber_h" >&5
-$as_echo "$curl_cv_header_lber_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_lber_h" >&5
+printf "%s\n" "$curl_cv_header_lber_h" >&6; }
   if test "$curl_cv_header_lber_h" = "yes"; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LBER_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_LBER_H 1" >>confdefs.h
 
     #
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -22643,34 +23529,34 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_need_header_lber_h="no"
 
-else
+else $as_nop
 
       curl_cv_need_header_lber_h="yes"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     #
     case "$curl_cv_need_header_lber_h" in
       yes)
 
-cat >>confdefs.h <<_ACEOF
-#define NEED_LBER_H 1
-_ACEOF
+printf "%s\n" "#define NEED_LBER_H 1" >>confdefs.h
 
         ;;
     esac
   fi
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap.h" >&5
-$as_echo_n "checking for ldap.h... " >&6; }
-if ${curl_cv_header_ldap_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ldap.h" >&5
+printf %s "checking for ldap.h... " >&6; }
+if test ${curl_cv_header_ldap_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -22706,36 +23592,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_ldap_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_ldap_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ldap_h" >&5
-$as_echo "$curl_cv_header_ldap_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ldap_h" >&5
+printf "%s\n" "$curl_cv_header_ldap_h" >&6; }
   case "$curl_cv_header_ldap_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LDAP_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_LDAP_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldapssl.h" >&5
-$as_echo_n "checking for ldapssl.h... " >&6; }
-if ${curl_cv_header_ldapssl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ldapssl.h" >&5
+printf %s "checking for ldapssl.h... " >&6; }
+if test ${curl_cv_header_ldapssl_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -22777,36 +23663,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_ldapssl_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_ldapssl_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ldapssl_h" >&5
-$as_echo "$curl_cv_header_ldapssl_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ldapssl_h" >&5
+printf "%s\n" "$curl_cv_header_ldapssl_h" >&6; }
   case "$curl_cv_header_ldapssl_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LDAPSSL_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_LDAPSSL_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_ssl.h" >&5
-$as_echo_n "checking for ldap_ssl.h... " >&6; }
-if ${curl_cv_header_ldap_ssl_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ldap_ssl.h" >&5
+printf %s "checking for ldap_ssl.h... " >&6; }
+if test ${curl_cv_header_ldap_ssl_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -22844,26 +23730,25 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_ldap_ssl_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_ldap_ssl_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ldap_ssl_h" >&5
-$as_echo "$curl_cv_header_ldap_ssl_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ldap_ssl_h" >&5
+printf "%s\n" "$curl_cv_header_ldap_ssl_h" >&6; }
   case "$curl_cv_header_ldap_ssl_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LDAP_SSL_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_LDAP_SSL_H 1" >>confdefs.h
 
       ;;
   esac
@@ -22877,12 +23762,13 @@
   fi
 
   if test "$LDAPLIBNAME" ; then
-    as_ac_Lib=`$as_echo "ac_cv_lib_"$LDAPLIBNAME"''_ldap_init" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ldap_init in -l\"$LDAPLIBNAME\"" >&5
-$as_echo_n "checking for ldap_init in -l\"$LDAPLIBNAME\"... " >&6; }
-if eval \${$as_ac_Lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    as_ac_Lib=`printf "%s\n" "ac_cv_lib_"$LDAPLIBNAME"""_ldap_init" | $as_tr_sh`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ldap_init in -l\"$LDAPLIBNAME\"" >&5
+printf %s "checking for ldap_init in -l\"$LDAPLIBNAME\"... " >&6; }
+if eval test \${$as_ac_Lib+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-l"$LDAPLIBNAME"  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -22900,39 +23786,41 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$as_ac_Lib=yes"
-else
+else $as_nop
   eval "$as_ac_Lib=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
 eval ac_res=\$$as_ac_Lib
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+if eval test \"x\$"$as_ac_Lib"\" = x"yes"
+then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_LIB"$LDAPLIBNAME"" | $as_tr_cpp` 1
+#define `printf "%s\n" "HAVE_LIB"$LDAPLIBNAME"" | $as_tr_cpp` 1
 _ACEOF
 
   LIBS="-l"$LDAPLIBNAME" $LIBS"
 
-else
+else $as_nop
 
       if test -n "$ldap_askedfor"; then
         as_fn_error $? "couldn't detect the LDAP libraries" "$LINENO" 5
       fi
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"$LDAPLIBNAME\" is not an LDAP library: LDAP disabled" >&5
-$as_echo "$as_me: WARNING: \"$LDAPLIBNAME\" is not an LDAP library: LDAP disabled" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: \"$LDAPLIBNAME\" is not an LDAP library: LDAP disabled" >&5
+printf "%s\n" "$as_me: WARNING: \"$LDAPLIBNAME\" is not an LDAP library: LDAP disabled" >&2;}
 
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAP 1" >>confdefs.h
 
       CURL_DISABLE_LDAP=1
 
 
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
 
       CURL_DISABLE_LDAPS=1
 
@@ -22941,8 +23829,8 @@
   else
 
     #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for LDAP libraries" >&5
-$as_echo_n "checking for LDAP libraries... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for LDAP libraries" >&5
+printf %s "checking for LDAP libraries... " >&6; }
   #
   u_libs=""
   #
@@ -23007,12 +23895,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
         curl_cv_ldap_LIBS="$x_nlibs"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     fi
   done
@@ -23021,12 +23910,12 @@
   #
   case X-"$curl_cv_ldap_LIBS" in
     X-unknown)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: cannot find LDAP libraries" >&5
-$as_echo "cannot find LDAP libraries" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: cannot find LDAP libraries" >&5
+printf "%s\n" "cannot find LDAP libraries" >&6; }
       ;;
     X-)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no additional lib required" >&5
-$as_echo "no additional lib required" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no additional lib required" >&5
+printf "%s\n" "no additional lib required" >&6; }
       ;;
     *)
       if test -z "$curl_cv_save_LIBS"; then
@@ -23034,8 +23923,8 @@
       else
         LIBS="$curl_cv_ldap_LIBS $curl_cv_save_LIBS"
       fi
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_ldap_LIBS" >&5
-$as_echo "$curl_cv_ldap_LIBS" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_ldap_LIBS" >&5
+printf "%s\n" "$curl_cv_ldap_LIBS" >&6; }
       ;;
   esac
   #
@@ -23045,15 +23934,15 @@
         if test -n "$ldap_askedfor"; then
           as_fn_error $? "couldn't detect the LDAP libraries" "$LINENO" 5
         fi
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find libraries for LDAP support: LDAP disabled" >&5
-$as_echo "$as_me: WARNING: Cannot find libraries for LDAP support: LDAP disabled" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find libraries for LDAP support: LDAP disabled" >&5
+printf "%s\n" "$as_me: WARNING: Cannot find libraries for LDAP support: LDAP disabled" >&2;}
 
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAP 1" >>confdefs.h
 
         CURL_DISABLE_LDAP=1
 
 
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
 
         CURL_DISABLE_LDAPS=1
 
@@ -23066,12 +23955,13 @@
 
   if test "$LBERLIBNAME" ; then
             if test "$LBERLIBNAME" != "no" ; then
-      as_ac_Lib=`$as_echo "ac_cv_lib_"$LBERLIBNAME"''_ber_free" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ber_free in -l\"$LBERLIBNAME\"" >&5
-$as_echo_n "checking for ber_free in -l\"$LBERLIBNAME\"... " >&6; }
-if eval \${$as_ac_Lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      as_ac_Lib=`printf "%s\n" "ac_cv_lib_"$LBERLIBNAME"""_ber_free" | $as_tr_sh`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ber_free in -l\"$LBERLIBNAME\"" >&5
+printf %s "checking for ber_free in -l\"$LBERLIBNAME\"... " >&6; }
+if eval test \${$as_ac_Lib+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-l"$LBERLIBNAME"  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -23089,36 +23979,38 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   eval "$as_ac_Lib=yes"
-else
+else $as_nop
   eval "$as_ac_Lib=no"
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
 eval ac_res=\$$as_ac_Lib
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+if eval test \"x\$"$as_ac_Lib"\" = x"yes"
+then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_LIB"$LBERLIBNAME"" | $as_tr_cpp` 1
+#define `printf "%s\n" "HAVE_LIB"$LBERLIBNAME"" | $as_tr_cpp` 1
 _ACEOF
 
   LIBS="-l"$LBERLIBNAME" $LIBS"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: \"$LBERLIBNAME\" is not an LBER library: LDAP disabled" >&5
-$as_echo "$as_me: WARNING: \"$LBERLIBNAME\" is not an LBER library: LDAP disabled" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: \"$LBERLIBNAME\" is not an LBER library: LDAP disabled" >&5
+printf "%s\n" "$as_me: WARNING: \"$LBERLIBNAME\" is not an LBER library: LDAP disabled" >&2;}
 
-$as_echo "#define CURL_DISABLE_LDAP 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAP 1" >>confdefs.h
 
         CURL_DISABLE_LDAP=1
 
 
-$as_echo "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_LDAPS 1" >>confdefs.h
 
         CURL_DISABLE_LDAPS=1
 
@@ -23129,29 +24021,30 @@
 fi
 
 if test x$CURL_DISABLE_LDAP != x1 ; then
-  for ac_func in ldap_url_parse ldap_init_fd
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+  ac_fn_c_check_func "$LINENO" "ldap_url_parse" "ac_cv_func_ldap_url_parse"
+if test "x$ac_cv_func_ldap_url_parse" = xyes
+then :
+  printf "%s\n" "#define HAVE_LDAP_URL_PARSE 1" >>confdefs.h
 
 fi
-done
+ac_fn_c_check_func "$LINENO" "ldap_init_fd" "ac_cv_func_ldap_init_fd"
+if test "x$ac_cv_func_ldap_init_fd" = xyes
+then :
+  printf "%s\n" "#define HAVE_LDAP_INIT_FD 1" >>confdefs.h
+
+fi
 
 
   if test "$LDAPLIBNAME" = "wldap32"; then
     curl_ldap_msg="enabled (winldap)"
 
-$as_echo "#define USE_WIN32_LDAP 1" >>confdefs.h
+printf "%s\n" "#define USE_WIN32_LDAP 1" >>confdefs.h
 
   else
     curl_ldap_msg="enabled (OpenLDAP)"
     if test "x$ac_cv_func_ldap_init_fd" = "xyes"; then
 
-$as_echo "#define USE_OPENLDAP 1" >>confdefs.h
+printf "%s\n" "#define USE_OPENLDAP 1" >>confdefs.h
 
       USE_OPENLDAP=1
 
@@ -23164,28 +24057,30 @@
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable IPv6" >&5
-$as_echo_n "checking whether to enable IPv6... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable IPv6" >&5
+printf %s "checking whether to enable IPv6... " >&6; }
 # Check whether --enable-ipv6 was given.
-if test "${enable_ipv6+set}" = set; then :
+if test ${enable_ipv6+y}
+then :
   enableval=$enable_ipv6;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        ipv6=no
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ipv6=yes
        ;;
   esac
-else
-  if test "$cross_compiling" = yes; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  if test "$cross_compiling" = yes
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   ipv6=yes
 
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -23214,13 +24109,14 @@
 
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   ipv6=yes
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   ipv6=no
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -23233,13 +24129,13 @@
 if test "$ipv6" = yes; then
   curl_ipv6_msg="enabled"
 
-$as_echo "#define ENABLE_IPV6 1" >>confdefs.h
+printf "%s\n" "#define ENABLE_IPV6 1" >>confdefs.h
 
   IPV6_ENABLED=1
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if struct sockaddr_in6 has sin6_scope_id member" >&5
-$as_echo_n "checking if struct sockaddr_in6 has sin6_scope_id member... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if struct sockaddr_in6 has sin6_scope_id member" >&5
+printf %s "checking if struct sockaddr_in6 has sin6_scope_id member... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -23264,34 +24160,36 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1" >>confdefs.h
+printf "%s\n" "#define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1" >>confdefs.h
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if argv can be written to" >&5
-$as_echo_n "checking if argv can be written to... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if argv can be written to" >&5
+printf %s "checking if argv can be written to... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
+   if test "$cross_compiling" = yes
+then :
   curl_cv_writable_argv=cross
 
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -23303,10 +24201,11 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
+if ac_fn_c_try_run "$LINENO"
+then :
   curl_cv_writable_argv=yes
 
-else
+else $as_nop
   curl_cv_writable_argv=no
 
 fi
@@ -23319,20 +24218,20 @@
 case $curl_cv_writable_argv in
 yes)
 
-$as_echo "#define HAVE_WRITABLE_ARGV 1" >>confdefs.h
+printf "%s\n" "#define HAVE_WRITABLE_ARGV 1" >>confdefs.h
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         ;;
 no)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         ;;
 *)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: the previous check could not be made default was used" >&5
-$as_echo "$as_me: WARNING: the previous check could not be made default was used" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: the previous check could not be made default was used" >&5
+printf "%s\n" "$as_me: WARNING: the previous check could not be made default was used" >&2;}
         ;;
 esac
 
@@ -23341,7 +24240,8 @@
 GSSAPI_ROOT="/usr"
 
 # Check whether --with-gssapi-includes was given.
-if test "${with_gssapi_includes+set}" = set; then :
+if test ${with_gssapi_includes+y}
+then :
   withval=$with_gssapi_includes;  GSSAPI_INCS="-I$withval"
     want_gss="yes"
 
@@ -23350,7 +24250,8 @@
 
 
 # Check whether --with-gssapi-libs was given.
-if test "${with_gssapi_libs+set}" = set; then :
+if test ${with_gssapi_libs+y}
+then :
   withval=$with_gssapi_libs;  GSSAPI_LIB_DIR="-L$withval"
     want_gss="yes"
 
@@ -23359,7 +24260,8 @@
 
 
 # Check whether --with-gssapi was given.
-if test "${with_gssapi+set}" = set; then :
+if test ${with_gssapi+y}
+then :
   withval=$with_gssapi;
   GSSAPI_ROOT="$withval"
   if test x"$GSSAPI_ROOT" != xno; then
@@ -23372,20 +24274,154 @@
 fi
 
 
-: ${KRB5CONFIG:="$GSSAPI_ROOT/bin/krb5-config"}
-
 save_CPPFLAGS="$CPPFLAGS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if GSS-API support is requested" >&5
-$as_echo_n "checking if GSS-API support is requested... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if GSS-API support is requested" >&5
+printf %s "checking if GSS-API support is requested... " >&6; }
 if test x"$want_gss" = xyes; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+
+
+    if test -n "$PKG_CONFIG"; then
+      PKGCONFIG="$PKG_CONFIG"
+    else
+      if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  case $PKGCONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_dummy="$PATH:/usr/bin:/usr/local/bin"
+for as_dir in $as_dummy
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+PKGCONFIG=$ac_cv_path_PKGCONFIG
+if test -n "$PKGCONFIG"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_path_PKGCONFIG"; then
+  ac_pt_PKGCONFIG=$PKGCONFIG
+  # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  case $ac_pt_PKGCONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_dummy="$PATH:/usr/bin:/usr/local/bin"
+for as_dir in $as_dummy
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
+if test -n "$ac_pt_PKGCONFIG"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_pt_PKGCONFIG" = x; then
+    PKGCONFIG="no"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    PKGCONFIG=$ac_pt_PKGCONFIG
+  fi
+else
+  PKGCONFIG="$ac_cv_path_PKGCONFIG"
+fi
+
+    fi
+
+    if test "x$PKGCONFIG" != "xno"; then
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mit-krb5-gssapi options with pkg-config" >&5
+printf %s "checking for mit-krb5-gssapi options with pkg-config... " >&6; }
+            itexists=`
+    if test -n ""; then
+      PKG_CONFIG_LIBDIR=""
+      export PKG_CONFIG_LIBDIR
+    fi
+         $PKGCONFIG --exists mit-krb5-gssapi >/dev/null 2>&1 && echo 1`
+
+      if test -z "$itexists"; then
+                        PKGCONFIG="no"
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+      else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
+      fi
+    fi
 
   if test -z "$GSSAPI_INCS"; then
      if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
         GSSAPI_INCS=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --cflags gssapi`
-     elif test -f "$KRB5CONFIG"; then
-        GSSAPI_INCS=`$KRB5CONFIG --cflags gssapi`
+     elif test "$PKGCONFIG" != "no" ; then
+        GSSAPI_INCS=`$PKGCONFIG --cflags mit-krb5-gssapi`
      elif test "$GSSAPI_ROOT" != "yes"; then
         GSSAPI_INCS="-I$GSSAPI_ROOT/include"
      fi
@@ -23393,33 +24429,32 @@
 
   CPPFLAGS="$CPPFLAGS $GSSAPI_INCS"
 
-  ac_fn_c_check_header_mongrel "$LINENO" "gss.h" "ac_cv_header_gss_h" "$ac_includes_default"
-if test "x$ac_cv_header_gss_h" = xyes; then :
+  ac_fn_c_check_header_compile "$LINENO" "gss.h" "ac_cv_header_gss_h" "$ac_includes_default"
+if test "x$ac_cv_header_gss_h" = xyes
+then :
 
 
-$as_echo "#define HAVE_GSSGNU 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GSSGNU 1" >>confdefs.h
 
       gnu_gss=yes
 
-else
+else $as_nop
 
-            for ac_header in gssapi/gssapi.h
+                   for ac_header in gssapi/gssapi.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "gssapi/gssapi.h" "ac_cv_header_gssapi_gssapi_h" "$ac_includes_default"
-if test "x$ac_cv_header_gssapi_gssapi_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_GSSAPI_GSSAPI_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "gssapi/gssapi.h" "ac_cv_header_gssapi_gssapi_h" "$ac_includes_default"
+if test "x$ac_cv_header_gssapi_gssapi_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_GSSAPI_GSSAPI_H 1" >>confdefs.h
 
-else
+else $as_nop
   not_mit=1
 fi
 
 done
-
-      for ac_header in gssapi/gssapi_generic.h gssapi/gssapi_krb5.h
+             for ac_header in gssapi/gssapi_generic.h gssapi/gssapi_krb5.h
 do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
+  as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`
 ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "
 $ac_includes_default
 #ifdef HAVE_GSSAPI_GSSAPI_H
@@ -23427,41 +24462,41 @@
 #endif
 
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+if eval test \"x\$"$as_ac_Header"\" = x"yes"
+then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `printf "%s\n" "HAVE_$ac_header" | $as_tr_cpp` 1
 _ACEOF
 
-else
+else $as_nop
   not_mit=1
 fi
 
 done
-
       if test "x$not_mit" = "x1"; then
-                ac_fn_c_check_header_mongrel "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default"
-if test "x$ac_cv_header_gssapi_h" = xyes; then :
+                ac_fn_c_check_header_compile "$LINENO" "gssapi.h" "ac_cv_header_gssapi_h" "$ac_includes_default"
+if test "x$ac_cv_header_gssapi_h" = xyes
+then :
 
 
-$as_echo "#define HAVE_GSSHEIMDAL 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GSSHEIMDAL 1" >>confdefs.h
 
 
-else
+else $as_nop
 
                             want_gss=no
-              { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disabling GSS-API support since no header files were found" >&5
-$as_echo "$as_me: WARNING: disabling GSS-API support since no header files were found" >&2;}
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: disabling GSS-API support since no header files were found" >&5
+printf "%s\n" "$as_me: WARNING: disabling GSS-API support since no header files were found" >&2;}
 
 
 fi
 
-
       else
 
-$as_echo "#define HAVE_GSSMIT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GSSMIT 1" >>confdefs.h
 
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE" >&5
-$as_echo_n "checking if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE... " >&6; }
+                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE" >&5
+printf %s "checking if GSS-API headers declare GSS_C_NT_HOSTBASED_SERVICE... " >&6; }
         cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -23484,34 +24519,34 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-else
+else $as_nop
 
-          { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define HAVE_OLD_GSSMIT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_OLD_GSSMIT 1" >>confdefs.h
 
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
       fi
 
 
 fi
 
-
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 if test x"$want_gss" = xyes; then
 
-$as_echo "#define HAVE_GSSAPI 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GSSAPI 1" >>confdefs.h
 
   HAVE_GSSAPI=1
   curl_gss_msg="enabled (MIT Kerberos/Heimdal)"
@@ -23526,11 +24561,147 @@
         LIBS="-lgssapi_krb5 -lresolv $LIBS"
         ;;
      *)
+
+    if test -n "$PKG_CONFIG"; then
+      PKGCONFIG="$PKG_CONFIG"
+    else
+      if test -n "$ac_tool_prefix"; then
+  # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
+set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  case $PKGCONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_dummy="$PATH:/usr/bin:/usr/local/bin"
+for as_dir in $as_dummy
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+PKGCONFIG=$ac_cv_path_PKGCONFIG
+if test -n "$PKGCONFIG"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+
+fi
+if test -z "$ac_cv_path_PKGCONFIG"; then
+  ac_pt_PKGCONFIG=$PKGCONFIG
+  # Extract the first word of "pkg-config", so it can be a program name with args.
+set dummy pkg-config; ac_word=$2
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  case $ac_pt_PKGCONFIG in
+  [\\/]* | ?:[\\/]*)
+  ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
+  ;;
+  *)
+  as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
+as_dummy="$PATH:/usr/bin:/usr/local/bin"
+for as_dir in $as_dummy
+do
+  IFS=$as_save_IFS
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    for ac_exec_ext in '' $ac_executable_extensions; do
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
+    break 2
+  fi
+done
+  done
+IFS=$as_save_IFS
+
+  ;;
+esac
+fi
+ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
+if test -n "$ac_pt_PKGCONFIG"; then
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
+else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+fi
+
+  if test "x$ac_pt_PKGCONFIG" = x; then
+    PKGCONFIG="no"
+  else
+    case $cross_compiling:$ac_tool_warned in
+yes:)
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+ac_tool_warned=yes ;;
+esac
+    PKGCONFIG=$ac_pt_PKGCONFIG
+  fi
+else
+  PKGCONFIG="$ac_cv_path_PKGCONFIG"
+fi
+
+    fi
+
+    if test "x$PKGCONFIG" != "xno"; then
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mit-krb5-gssapi options with pkg-config" >&5
+printf %s "checking for mit-krb5-gssapi options with pkg-config... " >&6; }
+            itexists=`
+    if test -n ""; then
+      PKG_CONFIG_LIBDIR=""
+      export PKG_CONFIG_LIBDIR
+    fi
+         $PKGCONFIG --exists mit-krb5-gssapi >/dev/null 2>&1 && echo 1`
+
+      if test -z "$itexists"; then
+                        PKGCONFIG="no"
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+      else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
+      fi
+    fi
+
         if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
                                  gss_libs=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --libs gssapi`
            LIBS="$gss_libs $LIBS"
-        elif test -f "$KRB5CONFIG"; then
-                                 gss_libs=`$KRB5CONFIG --libs gssapi`
+        elif test "$PKGCONFIG" != "no" ; then
+           gss_libs=`$PKGCONFIG --libs mit-krb5-gssapi`
            LIBS="$gss_libs $LIBS"
         else
            case $host in
@@ -23585,7 +24756,8 @@
 VALID_DEFAULT_SSL_BACKEND=
 
 # Check whether --with-default-ssl-backend was given.
-if test "${with_default_ssl_backend+set}" = set; then :
+if test ${with_default_ssl_backend+y}
+then :
   withval=$with_default_ssl_backend; DEFAULT_SSL_BACKEND=$withval
 fi
 
@@ -23602,16 +24774,16 @@
 esac
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Windows native SSL/TLS" >&5
-$as_echo_n "checking whether to enable Windows native SSL/TLS... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable Windows native SSL/TLS" >&5
+printf %s "checking whether to enable Windows native SSL/TLS... " >&6; }
 if test "x$OPT_SCHANNEL" != xno; then
   ssl_msg=
   if test "x$OPT_SCHANNEL" != "xno"  &&
      test "x$curl_cv_native_windows" = "xyes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define USE_SCHANNEL 1" >>confdefs.h
+printf "%s\n" "#define USE_SCHANNEL 1" >>confdefs.h
 
     USE_SCHANNEL=1
 
@@ -23620,31 +24792,31 @@
     SCHANNEL_ENABLED=1
     # --with-schannel implies --enable-sspi
 
-$as_echo "#define USE_WINDOWS_SSPI 1" >>confdefs.h
+printf "%s\n" "#define USE_WINDOWS_SSPI 1" >>confdefs.h
 
     USE_WINDOWS_SSPI=1
 
     curl_sspi_msg="enabled"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
   test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Secure Transport" >&5
-$as_echo_n "checking whether to enable Secure Transport... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable Secure Transport" >&5
+printf %s "checking whether to enable Secure Transport... " >&6; }
 if test "x$OPT_SECURETRANSPORT" != xno; then
   if test "x$OPT_SECURETRANSPORT" != "xno" &&
      (test "x$cross_compiling" != "xno" || test -d "/System/Library/Frameworks/Security.framework"); then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define USE_SECTRANSP 1" >>confdefs.h
+printf "%s\n" "#define USE_SECTRANSP 1" >>confdefs.h
 
     USE_SECTRANSP=1
 
@@ -23653,47 +24825,47 @@
     SECURETRANSPORT_ENABLED=1
     LDFLAGS="$LDFLAGS -framework CoreFoundation -framework Security"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
   test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Amiga native SSL/TLS (AmiSSL)" >&5
-$as_echo_n "checking whether to enable Amiga native SSL/TLS (AmiSSL)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable Amiga native SSL/TLS (AmiSSL)" >&5
+printf %s "checking whether to enable Amiga native SSL/TLS (AmiSSL)... " >&6; }
 if test "$HAVE_PROTO_BSDSOCKET_H" = "1"; then
   if test "x$OPT_AMISSL" != xno; then
     ssl_msg=
     if test "x$OPT_AMISSL" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       ssl_msg="AmiSSL"
       test amissl != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
       AMISSL_ENABLED=1
       LIBS="-lamisslauto $LIBS"
 
-$as_echo "#define USE_AMISSL 1" >>confdefs.h
+printf "%s\n" "#define USE_AMISSL 1" >>confdefs.h
 
 
-$as_echo "#define USE_OPENSSL 1" >>confdefs.h
+printf "%s\n" "#define USE_OPENSSL 1" >>confdefs.h
 
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     fi
     test -z "$ssl_msg" || ssl_backends="${ssl_backends:+$ssl_backends, }$ssl_msg"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -23707,8 +24879,8 @@
 
     case $host in
     *-*-msys* | *-*-mingw*)
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gdi32" >&5
-$as_echo_n "checking for gdi32... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gdi32" >&5
+printf %s "checking for gdi32... " >&6; }
       my_ac_save_LIBS=$LIBS
       LIBS="-lgdi32 $LIBS"
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -23726,16 +24898,17 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-else
+if ac_fn_c_try_link "$LINENO"
+then :
+           { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+else $as_nop
            LIBS=$my_ac_save_LIBS
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
       ;;
   esac
@@ -23751,11 +24924,25 @@
 
                 OPENSSL_PCDIR="$OPT_OPENSSL/lib/pkgconfig"
     if test -f "$OPENSSL_PCDIR/openssl.pc"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&5
-$as_echo "$as_me: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&5
+printf "%s\n" "$as_me: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&6;}
       PKGTEST="yes"
-    elif test ! -f "$PREFIX_OPENSSL/include/openssl/ssl.h"; then
-      as_fn_error $? "$PREFIX_OPENSSL is a bad --with-openssl prefix!" "$LINENO" 5
+    fi
+
+    if test "$PKGTEST" != "yes"; then
+      # try lib64 instead
+      OPENSSL_PCDIR="$OPT_OPENSSL/lib64/pkgconfig"
+      if test -f "$OPENSSL_PCDIR/openssl.pc"; then
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&5
+printf "%s\n" "$as_me: PKG_CONFIG_LIBDIR will be set to \"$OPENSSL_PCDIR\"" >&6;}
+        PKGTEST="yes"
+      fi
+    fi
+
+    if test "$PKGTEST" != "yes"; then
+      if test ! -f "$PREFIX_OPENSSL/include/openssl/ssl.h"; then
+        as_fn_error $? "$PREFIX_OPENSSL is a bad --with-openssl prefix!" "$LINENO" 5
+      fi
     fi
 
             LIB_OPENSSL="$PREFIX_OPENSSL/lib$libsuff"
@@ -23776,11 +24963,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -23791,11 +24979,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -23807,11 +24999,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -23820,11 +25012,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -23835,11 +25028,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -23851,11 +25048,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -23863,8 +25060,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -23876,8 +25073,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for openssl options with pkg-config" >&5
-$as_echo_n "checking for openssl options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for openssl options with pkg-config" >&5
+printf %s "checking for openssl options with pkg-config... " >&6; }
             itexists=`
     if test -n "$OPENSSL_PCDIR"; then
       PKG_CONFIG_LIBDIR="$OPENSSL_PCDIR"
@@ -23887,11 +25084,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -23919,12 +25116,12 @@
          $PKGCONFIG --cflags-only-I openssl 2>/dev/null`
 
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&5
-$as_echo "$as_me: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&6;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LDFLAGS: \"$SSL_LDFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: SSL_LDFLAGS: \"$SSL_LDFLAGS\"" >&6;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_CPPFLAGS: \"$SSL_CPPFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: SSL_CPPFLAGS: \"$SSL_CPPFLAGS\"" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&5
+printf "%s\n" "$as_me: pkg-config: SSL_LIBS: \"$SSL_LIBS\"" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_LDFLAGS: \"$SSL_LDFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: SSL_LDFLAGS: \"$SSL_LDFLAGS\"" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: SSL_CPPFLAGS: \"$SSL_CPPFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: SSL_CPPFLAGS: \"$SSL_CPPFLAGS\"" >&6;}
 
       LIB_OPENSSL=`echo $SSL_LDFLAGS | sed -e 's/^-L//'`
 
@@ -23935,11 +25132,12 @@
     CPPFLAGS="$CPPFLAGS $SSL_CPPFLAGS"
   LDFLAGS="$LDFLAGS $SSL_LDFLAGS"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for HMAC_Update in -lcrypto" >&5
-$as_echo_n "checking for HMAC_Update in -lcrypto... " >&6; }
-if ${ac_cv_lib_crypto_HMAC_Update+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for HMAC_Update in -lcrypto" >&5
+printf %s "checking for HMAC_Update in -lcrypto... " >&6; }
+if test ${ac_cv_lib_crypto_HMAC_Update+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrypto  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -23957,23 +25155,25 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_crypto_HMAC_Update=yes
-else
+else $as_nop
   ac_cv_lib_crypto_HMAC_Update=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_HMAC_Update" >&5
-$as_echo "$ac_cv_lib_crypto_HMAC_Update" >&6; }
-if test "x$ac_cv_lib_crypto_HMAC_Update" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_HMAC_Update" >&5
+printf "%s\n" "$ac_cv_lib_crypto_HMAC_Update" >&6; }
+if test "x$ac_cv_lib_crypto_HMAC_Update" = xyes
+then :
 
      HAVECRYPTO="yes"
      LIBS="-lcrypto $LIBS"
 
-else
+else $as_nop
 
      if test -n "$LIB_OPENSSL" ; then
        LDFLAGS="$CLEANLDFLAGS -L$LIB_OPENSSL"
@@ -23985,11 +25185,12 @@
      # Linking previously failed, try extra paths from --with-openssl or
      # pkg-config.  Use a different function name to avoid reusing the earlier
      # cached result.
-     { $as_echo "$as_me:${as_lineno-$LINENO}: checking for HMAC_Init_ex in -lcrypto" >&5
-$as_echo_n "checking for HMAC_Init_ex in -lcrypto... " >&6; }
-if ${ac_cv_lib_crypto_HMAC_Init_ex+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for HMAC_Init_ex in -lcrypto" >&5
+printf %s "checking for HMAC_Init_ex in -lcrypto... " >&6; }
+if test ${ac_cv_lib_crypto_HMAC_Init_ex+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrypto  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -24007,27 +25208,29 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_crypto_HMAC_Init_ex=yes
-else
+else $as_nop
   ac_cv_lib_crypto_HMAC_Init_ex=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_HMAC_Init_ex" >&5
-$as_echo "$ac_cv_lib_crypto_HMAC_Init_ex" >&6; }
-if test "x$ac_cv_lib_crypto_HMAC_Init_ex" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_HMAC_Init_ex" >&5
+printf "%s\n" "$ac_cv_lib_crypto_HMAC_Init_ex" >&6; }
+if test "x$ac_cv_lib_crypto_HMAC_Init_ex" = xyes
+then :
 
        HAVECRYPTO="yes"
        LIBS="-lcrypto $LIBS"
-else
+else $as_nop
 
 
-              { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL linking with -ldl" >&5
-$as_echo_n "checking OpenSSL linking with -ldl... " >&6; }
-       LIBS="$CLEANLIBS -lcrypto -ldl"
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking OpenSSL linking with -ldl" >&5
+printf %s "checking OpenSSL linking with -ldl... " >&6; }
+       LIBS="-lcrypto $CLEANLIBS -ldl"
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -24042,20 +25245,21 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
          HAVECRYPTO="yes"
 
-else
+else $as_nop
 
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-         { $as_echo "$as_me:${as_lineno-$LINENO}: checking OpenSSL linking with -ldl and -lpthread" >&5
-$as_echo_n "checking OpenSSL linking with -ldl and -lpthread... " >&6; }
-         LIBS="$CLEANLIBS -lcrypto -ldl -lpthread"
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking OpenSSL linking with -ldl and -lpthread" >&5
+printf %s "checking OpenSSL linking with -ldl and -lpthread... " >&6; }
+         LIBS="-lcrypto $CLEANLIBS -ldl -lpthread"
          cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -24071,28 +25275,29 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+           { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
            HAVECRYPTO="yes"
 
-else
+else $as_nop
 
-           { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+           { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
            LDFLAGS="$CLEANLDFLAGS"
            CPPFLAGS="$CLEANCPPFLAGS"
            LIBS="$CLEANLIBS"
 
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 
 
@@ -24104,11 +25309,12 @@
 
   if test X"$HAVECRYPTO" = X"yes"; then
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_connect in -lssl" >&5
-$as_echo_n "checking for SSL_connect in -lssl... " >&6; }
-if ${ac_cv_lib_ssl_SSL_connect+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SSL_connect in -lssl" >&5
+printf %s "checking for SSL_connect in -lssl... " >&6; }
+if test ${ac_cv_lib_ssl_SSL_connect+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lssl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -24126,21 +25332,21 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ssl_SSL_connect=yes
-else
+else $as_nop
   ac_cv_lib_ssl_SSL_connect=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssl_SSL_connect" >&5
-$as_echo "$ac_cv_lib_ssl_SSL_connect" >&6; }
-if test "x$ac_cv_lib_ssl_SSL_connect" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSL 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssl_SSL_connect" >&5
+printf "%s\n" "$ac_cv_lib_ssl_SSL_connect" >&6; }
+if test "x$ac_cv_lib_ssl_SSL_connect" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBSSL 1" >>confdefs.h
 
   LIBS="-lssl $LIBS"
 
@@ -24148,15 +25354,16 @@
 
 
     if test "$ac_cv_lib_ssl_SSL_connect" != yes; then
-                { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssl with RSAglue/rsaref libs in use" >&5
-$as_echo_n "checking for ssl with RSAglue/rsaref libs in use... " >&6; };
+                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ssl with RSAglue/rsaref libs in use" >&5
+printf %s "checking for ssl with RSAglue/rsaref libs in use... " >&6; };
         OLIBS=$LIBS
         LIBS="-lRSAglue -lrsaref $LIBS"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_connect in -lssl" >&5
-$as_echo_n "checking for SSL_connect in -lssl... " >&6; }
-if ${ac_cv_lib_ssl_SSL_connect+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SSL_connect in -lssl" >&5
+printf %s "checking for SSL_connect in -lssl... " >&6; }
+if test ${ac_cv_lib_ssl_SSL_connect+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lssl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -24174,70 +25381,93 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ssl_SSL_connect=yes
-else
+else $as_nop
   ac_cv_lib_ssl_SSL_connect=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssl_SSL_connect" >&5
-$as_echo "$ac_cv_lib_ssl_SSL_connect" >&6; }
-if test "x$ac_cv_lib_ssl_SSL_connect" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSL 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssl_SSL_connect" >&5
+printf "%s\n" "$ac_cv_lib_ssl_SSL_connect" >&6; }
+if test "x$ac_cv_lib_ssl_SSL_connect" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBSSL 1" >>confdefs.h
 
   LIBS="-lssl $LIBS"
 
 fi
 
         if test "$ac_cv_lib_ssl_SSL_connect" != yes; then
-                        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+                        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
             LIBS=$OLIBS
         else
-            { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         fi
 
     else
 
-            for ac_header in openssl/x509.h openssl/rsa.h openssl/crypto.h \
-                       openssl/pem.h openssl/ssl.h openssl/err.h
+                   for ac_header in openssl/x509.h openssl/rsa.h openssl/crypto.h openssl/pem.h openssl/ssl.h openssl/err.h
 do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
+  as_ac_Header=`printf "%s\n" "ac_cv_header_$ac_header" | $as_tr_sh`
+ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
+if eval test \"x\$"$as_ac_Header"\" = x"yes"
+then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
+#define `printf "%s\n" "HAVE_$ac_header" | $as_tr_cpp` 1
 _ACEOF
  ssl_msg="OpenSSL"
 	test openssl != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
         OPENSSL_ENABLED=1
 
-$as_echo "#define USE_OPENSSL 1" >>confdefs.h
+printf "%s\n" "#define USE_OPENSSL 1" >>confdefs.h
 
 fi
 
 done
 
-
       if test $ac_cv_header_openssl_x509_h = no; then
-                                for ac_header in x509.h rsa.h crypto.h pem.h ssl.h err.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+                                ac_fn_c_check_header_compile "$LINENO" "x509.h" "ac_cv_header_x509_h" "$ac_includes_default"
+if test "x$ac_cv_header_x509_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_X509_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "rsa.h" "ac_cv_header_rsa_h" "$ac_includes_default"
+if test "x$ac_cv_header_rsa_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_RSA_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "crypto.h" "ac_cv_header_crypto_h" "$ac_includes_default"
+if test "x$ac_cv_header_crypto_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_CRYPTO_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "pem.h" "ac_cv_header_pem_h" "$ac_includes_default"
+if test "x$ac_cv_header_pem_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_PEM_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "ssl.h" "ac_cv_header_ssl_h" "$ac_includes_default"
+if test "x$ac_cv_header_ssl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SSL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "err.h" "ac_cv_header_err_h" "$ac_includes_default"
+if test "x$ac_cv_header_err_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ERR_H 1" >>confdefs.h
+
+fi
 
 
         if test $ac_cv_header_x509_h = yes &&
@@ -24261,23 +25491,28 @@
 
   if test X"$OPENSSL_ENABLED" = X"1"; then
 
-    for ac_func in RAND_egd \
-                    SSLv2_client_method \
-                    OpenSSL_version
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+    ac_fn_c_check_func "$LINENO" "RAND_egd" "ac_cv_func_RAND_egd"
+if test "x$ac_cv_func_RAND_egd" = xyes
+then :
+  printf "%s\n" "#define HAVE_RAND_EGD 1" >>confdefs.h
 
 fi
-done
+ac_fn_c_check_func "$LINENO" "SSLv2_client_method" "ac_cv_func_SSLv2_client_method"
+if test "x$ac_cv_func_SSLv2_client_method" = xyes
+then :
+  printf "%s\n" "#define HAVE_SSLV2_CLIENT_METHOD 1" >>confdefs.h
+
+fi
+ac_fn_c_check_func "$LINENO" "OpenSSL_version" "ac_cv_func_OpenSSL_version"
+if test "x$ac_cv_func_OpenSSL_version" = xyes
+then :
+  printf "%s\n" "#define HAVE_OPENSSL_VERSION 1" >>confdefs.h
+
+fi
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for BoringSSL" >&5
-$as_echo_n "checking for BoringSSL... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for BoringSSL" >&5
+printf %s "checking for BoringSSL... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -24296,27 +25531,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_BORINGSSL 1
-_ACEOF
+printf "%s\n" "#define HAVE_BORINGSSL 1" >>confdefs.h
 
         ssl_msg="BoringSSL"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libressl" >&5
-$as_echo_n "checking for libressl... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libressl" >&5
+printf %s "checking for libressl... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -24333,27 +25567,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBRESSL 1
-_ACEOF
+printf "%s\n" "#define HAVE_LIBRESSL 1" >>confdefs.h
 
       ssl_msg="libressl"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL >= v3" >&5
-$as_echo_n "checking for OpenSSL >= v3... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for OpenSSL >= v3" >&5
+printf %s "checking for OpenSSL >= v3... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -24374,25 +25607,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_OPENSSL3 1
-_ACEOF
+printf "%s\n" "#define HAVE_OPENSSL3 1" >>confdefs.h
 
                               CPPFLAGS="$CPPFLAGS -DOPENSSL_SUPPRESS_DEPRECATED"
       ssl_msg="OpenSSL v3+"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
 
   if test "$OPENSSL_ENABLED" = "1"; then
@@ -24400,8 +25632,8 @@
                             if test "x$cross_compiling" != "xyes"; then
          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$LIB_OPENSSL"
          export CURL_LIBRARY_PATH
-         { $as_echo "$as_me:${as_lineno-$LINENO}: Added $LIB_OPENSSL to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $LIB_OPENSSL to CURL_LIBRARY_PATH" >&6;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $LIB_OPENSSL to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $LIB_OPENSSL to CURL_LIBRARY_PATH" >&6;}
        fi
     fi
 
@@ -24410,8 +25642,8 @@
   #
   tst_api="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL headers version" >&5
-$as_echo_n "checking for OpenSSL headers version... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for OpenSSL headers version" >&5
+printf %s "checking for OpenSSL headers version... " >&6; }
 
     OLDCPPFLAGS=$CPPFLAGS
   # CPPPFLAG comes from CURL_CPP_P
@@ -24440,7 +25672,8 @@
 
 
 _ACEOF
-if ac_fn_c_try_cpp "$LINENO"; then :
+if ac_fn_c_try_cpp "$LINENO"
+then :
 
     tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
       "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
@@ -24462,6 +25695,53 @@
   fi
       CPPFLAGS=$OLDCPPFLAGS
 
+
+    OLDCPPFLAGS=$CPPFLAGS
+  # CPPPFLAG comes from CURL_CPP_P
+  CPPFLAGS="$CPPFLAGS $CPPPFLAG"
+      if test -z "$SED"; then
+    as_fn_error $? "SED not set. Cannot continue without SED being set." "$LINENO" 5
+  fi
+  if test -z "$GREP"; then
+    as_fn_error $? "GREP not set. Cannot continue without GREP being set." "$LINENO" 5
+  fi
+
+  tmp_exp=""
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+
+#     include <openssl/crypto.h>
+
+#ifdef OPENSSL_VERSION_STR
+CURL_DEF_TOKEN OPENSSL_VERSION_STR
+#endif
+
+
+_ACEOF
+if ac_fn_c_try_cpp "$LINENO"
+then :
+
+    tmp_exp=`eval "$ac_cpp conftest.$ac_ext" 2>/dev/null | \
+      "$GREP" CURL_DEF_TOKEN 2>/dev/null | \
+      "$SED" 's/.*CURL_DEF_TOKEN[ ][ ]*//' 2>/dev/null | \
+      "$SED" 's/["][ ]*["]//g' 2>/dev/null`
+    if test -z "$tmp_exp" || test "$tmp_exp" = "OPENSSL_VERSION_STR"; then
+      tmp_exp=""
+    fi
+
+fi
+rm -f conftest.err conftest.i conftest.$ac_ext
+  if test -z "$tmp_exp"; then
+    curl_cv_have_def_OPENSSL_VERSION_STR=no
+
+  else
+    curl_cv_have_def_OPENSSL_VERSION_STR=yes
+    curl_cv_def_OPENSSL_VERSION_STR=$tmp_exp
+
+  fi
+      CPPFLAGS=$OLDCPPFLAGS
+
   if test "$curl_cv_have_def_OPENSSL_VERSION_NUMBER" = "yes"; then
     tst_verlen=`expr "$curl_cv_def_OPENSSL_VERSION_NUMBER" : '.*'`
     case "x$tst_verlen" in
@@ -24478,7 +25758,16 @@
         tst_api=0x$tst_vermaj$tst_vermin$tst_verfix
         ;;
       *)
-        tst_api="unknown"
+        if test "$curl_cv_have_def_OPENSSL_VERSION_STR" = "yes"; then
+          ver=`echo $curl_cv_def_OPENSSL_VERSION_STR | sed 's/"//g'`;
+          tst_vermaj=`echo $ver | cut -d. -f1`
+          tst_vermin=`echo $ver | cut -d. -f2`
+          tst_verfix=`echo $ver | cut -d. -f3`
+          tst_show="$ver"
+          tst_api=0x$tst_vermaj$tst_vermin$tst_verfix
+        else
+          tst_api="unknown"
+        fi
         ;;
     esac
     case $tst_api in
@@ -24496,14 +25785,18 @@
       0x093) tst_show="0.9.3" ;;
       0x092) tst_show="0.9.2" ;;
       0x091) tst_show="0.9.1" ;;
-      *)     tst_show="unknown" ;;
+      *)
+      if test -z "$tst_show"; then
+        tst_show="unknown"
+      fi
+      ;;
     esac
-    tst_show="$tst_show - $curl_cv_def_OPENSSL_VERSION_NUMBER"
+    tst_show="$tst_show - $tst_api"
   else
     tst_show="unknown"
   fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_show" >&5
-$as_echo "$tst_show" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_show" >&5
+printf "%s\n" "$tst_show" >&6; }
   #
   curl_openssl_api_headers=$tst_api
 
@@ -24511,8 +25804,45 @@
   #
   tst_api="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL library version" >&5
-$as_echo_n "checking for OpenSSL library version... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for OpenSSL library version" >&5
+printf %s "checking for OpenSSL library version... " >&6; }
+  if test "$tst_api" = "unknown"; then
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+
+#define SSL_CTX_load_verify_dir innocuous_SSL_CTX_load_verify_dir
+#ifdef __STDC__
+# include <limits.h>
+#else
+# include <assert.h>
+#endif
+#undef SSL_CTX_load_verify_dir
+#ifdef __cplusplus
+extern "C"
+#endif
+char SSL_CTX_load_verify_dir ();
+#if defined __stub_SSL_CTX_load_verify_dir || defined __stub___SSL_CTX_load_verify_dir
+choke me
+#endif
+
+int main (void)
+{
+return SSL_CTX_load_verify_dir ();
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_link "$LINENO"
+then :
+
+      tst_api="0x300"
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
+    conftest$ac_exeext conftest.$ac_ext
+  fi
   if test "$tst_api" = "unknown"; then
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -24541,12 +25871,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x111"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24579,12 +25910,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
           tst_api="0x110"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
         ;;
       *)
@@ -24615,12 +25947,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
           tst_api="0x110"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
         ;;
     esac
@@ -24653,12 +25986,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x102"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24689,12 +26023,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x101"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24725,12 +26060,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x100"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24761,12 +26097,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x098"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24797,12 +26134,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x097"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24833,12 +26171,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x096"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24869,12 +26208,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x095"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24905,12 +26245,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x094"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24941,12 +26282,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x093"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -24977,12 +26319,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x092"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   if test "$tst_api" = "unknown"; then
@@ -25013,15 +26356,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
       tst_api="0x091"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   case $tst_api in
+    0x300) tst_show="3.0.0" ;;
     0x111) tst_show="1.1.1" ;;
     0x110) tst_show="1.1.0" ;;
     0x102) tst_show="1.0.2" ;;
@@ -25038,16 +26383,16 @@
     0x091) tst_show="0.9.1" ;;
     *)     tst_show="unknown" ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_show" >&5
-$as_echo "$tst_show" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_show" >&5
+printf "%s\n" "$tst_show" >&6; }
   #
   curl_openssl_api_library=$tst_api
 
   #
   tst_match="yes"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for OpenSSL headers and library versions matching" >&5
-$as_echo_n "checking for OpenSSL headers and library versions matching... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for OpenSSL headers and library versions matching" >&5
+printf %s "checking for OpenSSL headers and library versions matching... " >&6; }
   if test "$curl_openssl_api_headers" = "unknown" ||
     test "$curl_openssl_api_library" = "unknown"; then
     tst_match="fail"
@@ -25056,11 +26401,11 @@
     tst_match="no"
     tst_warns="OpenSSL headers and library versions do not match."
   fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_match" >&5
-$as_echo "$tst_match" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_match" >&5
+printf "%s\n" "$tst_match" >&6; }
   if test "$tst_match" != "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $tst_warns" >&5
-$as_echo "$as_me: WARNING: $tst_warns" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $tst_warns" >&5
+printf "%s\n" "$as_me: WARNING: $tst_warns" >&2;}
   fi
 
     check_for_ca_bundle=1
@@ -25071,10 +26416,10 @@
 
 if test X"$OPT_OPENSSL" != Xno &&
   test "$OPENSSL_ENABLED" != "1"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: OPT_OPENSSL: $OPT_OPENSSL" >&5
-$as_echo "$as_me: OPT_OPENSSL: $OPT_OPENSSL" >&6;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: OPENSSL_ENABLED: $OPENSSL_ENABLED" >&5
-$as_echo "$as_me: OPENSSL_ENABLED: $OPENSSL_ENABLED" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: OPT_OPENSSL: $OPT_OPENSSL" >&5
+printf "%s\n" "$as_me: OPT_OPENSSL: $OPT_OPENSSL" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: OPENSSL_ENABLED: $OPENSSL_ENABLED" >&5
+printf "%s\n" "$as_me: OPENSSL_ENABLED: $OPENSSL_ENABLED" >&6;}
   as_fn_error $? "--with-openssl was given but OpenSSL could not be detected" "$LINENO" 5
 fi
 
@@ -25082,32 +26427,33 @@
 if test X"$OPENSSL_ENABLED" = X"1"; then
 
 # Check whether --with-egd-socket was given.
-if test "${with_egd_socket+set}" = set; then :
+if test ${with_egd_socket+y}
+then :
   withval=$with_egd_socket;  EGD_SOCKET="$withval"
 
 fi
 
   if test -n "$EGD_SOCKET" ; then
 
-cat >>confdefs.h <<_ACEOF
-#define EGD_SOCKET "$EGD_SOCKET"
-_ACEOF
+printf "%s\n" "#define EGD_SOCKET \"$EGD_SOCKET\"" >>confdefs.h
 
   fi
 
 
 # Check whether --with-random was given.
-if test "${with_random+set}" = set; then :
+if test ${with_random+y}
+then :
   withval=$with_random;  RANDOM_FILE="$withval"
-else
+else $as_nop
 
           if test x$cross_compiling != xyes; then
-                        as_ac_File=`$as_echo "ac_cv_file_"/dev/urandom"" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for \"/dev/urandom\"" >&5
-$as_echo_n "checking for \"/dev/urandom\"... " >&6; }
-if eval \${$as_ac_File+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+                        as_ac_File=`printf "%s\n" "ac_cv_file_"/dev/urandom"" | $as_tr_sh`
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for \"/dev/urandom\"" >&5
+printf %s "checking for \"/dev/urandom\"... " >&6; }
+if eval test \${$as_ac_File+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   test "$cross_compiling" = yes &&
   as_fn_error $? "cannot check for file existence when cross compiling" "$LINENO" 5
 if test -r ""/dev/urandom""; then
@@ -25117,15 +26463,16 @@
 fi
 fi
 eval ac_res=\$$as_ac_File
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_File"\" = x"yes"; then :
+	       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
+printf "%s\n" "$ac_res" >&6; }
+if eval test \"x\$"$as_ac_File"\" = x"yes"
+then :
    RANDOM_FILE="/dev/urandom"
 fi
 
           else
-            { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: skipped the /dev/urandom detection when cross-compiling" >&5
-$as_echo "$as_me: WARNING: skipped the /dev/urandom detection when cross-compiling" >&2;}
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: skipped the /dev/urandom detection when cross-compiling" >&5
+printf "%s\n" "$as_me: WARNING: skipped the /dev/urandom detection when cross-compiling" >&2;}
           fi
 
 
@@ -25134,19 +26481,18 @@
   if test -n "$RANDOM_FILE" && test X"$RANDOM_FILE" != Xno ; then
 
 
-cat >>confdefs.h <<_ACEOF
-#define RANDOM_FILE "$RANDOM_FILE"
-_ACEOF
+printf "%s\n" "#define RANDOM_FILE \"$RANDOM_FILE\"" >>confdefs.h
 
   fi
 fi
 
 if test "$OPENSSL_ENABLED" = "1"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SRP_Calc_client_key in -lcrypto" >&5
-$as_echo_n "checking for SRP_Calc_client_key in -lcrypto... " >&6; }
-if ${ac_cv_lib_crypto_SRP_Calc_client_key+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SRP_Calc_client_key in -lcrypto" >&5
+printf %s "checking for SRP_Calc_client_key in -lcrypto... " >&6; }
+if test ${ac_cv_lib_crypto_SRP_Calc_client_key+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrypto  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -25164,21 +26510,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_crypto_SRP_Calc_client_key=yes
-else
+else $as_nop
   ac_cv_lib_crypto_SRP_Calc_client_key=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_SRP_Calc_client_key" >&5
-$as_echo "$ac_cv_lib_crypto_SRP_Calc_client_key" >&6; }
-if test "x$ac_cv_lib_crypto_SRP_Calc_client_key" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crypto_SRP_Calc_client_key" >&5
+printf "%s\n" "$ac_cv_lib_crypto_SRP_Calc_client_key" >&6; }
+if test "x$ac_cv_lib_crypto_SRP_Calc_client_key" = xyes
+then :
 
 
-$as_echo "#define HAVE_OPENSSL_SRP 1" >>confdefs.h
+printf "%s\n" "#define HAVE_OPENSSL_SRP 1" >>confdefs.h
 
      HAVE_OPENSSL_SRP=1
 
@@ -25189,12 +26537,13 @@
 
 if test X"$OPENSSL_ENABLED" = X"1"; then
 # Check whether --enable-openssl-auto-load-config was given.
-if test "${enable_openssl_auto_load_config+set}" = set; then :
+if test ${enable_openssl_auto_load_config+y}
+then :
   enableval=$enable_openssl_auto_load_config;  if test X"$enableval" = X"no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: automatic loading of OpenSSL configuration disabled" >&5
-$as_echo "$as_me: automatic loading of OpenSSL configuration disabled" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: automatic loading of OpenSSL configuration disabled" >&5
+printf "%s\n" "$as_me: automatic loading of OpenSSL configuration disabled" >&6;}
 
-$as_echo "#define CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG 1" >>confdefs.h
 
   fi
 
@@ -25223,11 +26572,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -25238,11 +26588,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -25254,11 +26608,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -25267,11 +26621,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -25282,11 +26637,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -25298,11 +26657,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -25310,8 +26669,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -25323,8 +26682,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gnutls options with pkg-config" >&5
-$as_echo_n "checking for gnutls options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gnutls options with pkg-config" >&5
+printf %s "checking for gnutls options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -25334,11 +26693,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -25391,11 +26750,12 @@
          CPPFLAGS="$CPPFLAGS $addcflags"
       fi
 
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gnutls_x509_crt_get_dn2 in -lgnutls" >&5
-$as_echo_n "checking for gnutls_x509_crt_get_dn2 in -lgnutls... " >&6; }
-if ${ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gnutls_x509_crt_get_dn2 in -lgnutls" >&5
+printf %s "checking for gnutls_x509_crt_get_dn2 in -lgnutls... " >&6; }
+if test ${ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lgnutls  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -25413,21 +26773,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2=yes
-else
+else $as_nop
   ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2" >&5
-$as_echo "$ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2" >&6; }
-if test "x$ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2" >&5
+printf "%s\n" "$ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2" >&6; }
+if test "x$ac_cv_lib_gnutls_gnutls_x509_crt_get_dn2" = xyes
+then :
 
 
-$as_echo "#define USE_GNUTLS 1" >>confdefs.h
+printf "%s\n" "#define USE_GNUTLS 1" >>confdefs.h
 
        USE_GNUTLS=1
 
@@ -25436,7 +26798,7 @@
        ssl_msg="GnuTLS"
        test gnutls != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
 
-else
+else $as_nop
 
          LIBS="$CLEANLIBS"
          CPPFLAGS="$CLEANCPPFLAGS"
@@ -25445,15 +26807,15 @@
 
 
       if test "x$USE_GNUTLS" = "xyes"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: detected GnuTLS version $version" >&5
-$as_echo "$as_me: detected GnuTLS version $version" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: detected GnuTLS version $version" >&5
+printf "%s\n" "$as_me: detected GnuTLS version $version" >&6;}
         check_for_ca_bundle=1
         if test -n "$gtlslib"; then
                                                   if test "x$cross_compiling" != "xyes"; then
             CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$gtlslib"
             export CURL_LIBRARY_PATH
-            { $as_echo "$as_me:${as_lineno-$LINENO}: Added $gtlslib to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $gtlslib to CURL_LIBRARY_PATH" >&6;}
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $gtlslib to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $gtlslib to CURL_LIBRARY_PATH" >&6;}
           fi
         fi
       fi
@@ -25468,11 +26830,12 @@
 if test "$GNUTLS_ENABLED" = "1"; then
   USE_GNUTLS_NETTLE=
   # First check if we can detect either crypto library via transitive linking
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nettle_MD5Init in -lgnutls" >&5
-$as_echo_n "checking for nettle_MD5Init in -lgnutls... " >&6; }
-if ${ac_cv_lib_gnutls_nettle_MD5Init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nettle_MD5Init in -lgnutls" >&5
+printf %s "checking for nettle_MD5Init in -lgnutls... " >&6; }
+if test ${ac_cv_lib_gnutls_nettle_MD5Init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lgnutls  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -25490,29 +26853,32 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_gnutls_nettle_MD5Init=yes
-else
+else $as_nop
   ac_cv_lib_gnutls_nettle_MD5Init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gnutls_nettle_MD5Init" >&5
-$as_echo "$ac_cv_lib_gnutls_nettle_MD5Init" >&6; }
-if test "x$ac_cv_lib_gnutls_nettle_MD5Init" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gnutls_nettle_MD5Init" >&5
+printf "%s\n" "$ac_cv_lib_gnutls_nettle_MD5Init" >&6; }
+if test "x$ac_cv_lib_gnutls_nettle_MD5Init" = xyes
+then :
    USE_GNUTLS_NETTLE=1
 fi
 
 
   # If not, try linking directly to both of them to see if they are available
   if test "$USE_GNUTLS_NETTLE" = ""; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nettle_MD5Init in -lnettle" >&5
-$as_echo_n "checking for nettle_MD5Init in -lnettle... " >&6; }
-if ${ac_cv_lib_nettle_nettle_MD5Init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nettle_MD5Init in -lnettle" >&5
+printf %s "checking for nettle_MD5Init in -lnettle... " >&6; }
+if test ${ac_cv_lib_nettle_nettle_MD5Init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnettle  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -25530,18 +26896,20 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_nettle_nettle_MD5Init=yes
-else
+else $as_nop
   ac_cv_lib_nettle_nettle_MD5Init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nettle_nettle_MD5Init" >&5
-$as_echo "$ac_cv_lib_nettle_nettle_MD5Init" >&6; }
-if test "x$ac_cv_lib_nettle_nettle_MD5Init" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nettle_nettle_MD5Init" >&5
+printf "%s\n" "$ac_cv_lib_nettle_nettle_MD5Init" >&6; }
+if test "x$ac_cv_lib_nettle_nettle_MD5Init" = xyes
+then :
    USE_GNUTLS_NETTLE=1
 fi
 
@@ -25553,11 +26921,12 @@
 fi
 
 if test "$GNUTLS_ENABLED" = "1"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gnutls_srp_verifier in -lgnutls" >&5
-$as_echo_n "checking for gnutls_srp_verifier in -lgnutls... " >&6; }
-if ${ac_cv_lib_gnutls_gnutls_srp_verifier+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gnutls_srp_verifier in -lgnutls" >&5
+printf %s "checking for gnutls_srp_verifier in -lgnutls... " >&6; }
+if test ${ac_cv_lib_gnutls_gnutls_srp_verifier+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lgnutls  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -25575,21 +26944,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_gnutls_gnutls_srp_verifier=yes
-else
+else $as_nop
   ac_cv_lib_gnutls_gnutls_srp_verifier=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gnutls_gnutls_srp_verifier" >&5
-$as_echo "$ac_cv_lib_gnutls_gnutls_srp_verifier" >&6; }
-if test "x$ac_cv_lib_gnutls_gnutls_srp_verifier" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gnutls_gnutls_srp_verifier" >&5
+printf "%s\n" "$ac_cv_lib_gnutls_gnutls_srp_verifier" >&6; }
+if test "x$ac_cv_lib_gnutls_gnutls_srp_verifier" = xyes
+then :
 
 
-$as_echo "#define HAVE_GNUTLS_SRP 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GNUTLS_SRP 1" >>confdefs.h
 
      HAVE_GNUTLS_SRP=1
 
@@ -25614,11 +26985,12 @@
 
     if test -z "$OPT_MBEDTLS" ; then
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbedtls_havege_init in -lmbedtls" >&5
-$as_echo_n "checking for mbedtls_havege_init in -lmbedtls... " >&6; }
-if ${ac_cv_lib_mbedtls_mbedtls_havege_init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mbedtls_havege_init in -lmbedtls" >&5
+printf %s "checking for mbedtls_havege_init in -lmbedtls... " >&6; }
+if test ${ac_cv_lib_mbedtls_mbedtls_havege_init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lmbedtls -lmbedx509 -lmbedcrypto $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -25636,21 +27008,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_mbedtls_mbedtls_havege_init=yes
-else
+else $as_nop
   ac_cv_lib_mbedtls_mbedtls_havege_init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mbedtls_mbedtls_havege_init" >&5
-$as_echo "$ac_cv_lib_mbedtls_mbedtls_havege_init" >&6; }
-if test "x$ac_cv_lib_mbedtls_mbedtls_havege_init" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mbedtls_mbedtls_havege_init" >&5
+printf "%s\n" "$ac_cv_lib_mbedtls_mbedtls_havege_init" >&6; }
+if test "x$ac_cv_lib_mbedtls_mbedtls_havege_init" = xyes
+then :
 
 
-$as_echo "#define USE_MBEDTLS 1" >>confdefs.h
+printf "%s\n" "#define USE_MBEDTLS 1" >>confdefs.h
 
          USE_MBEDTLS=1
 
@@ -25678,11 +27052,12 @@
          CPPFLAGS="$CPPFLAGS $addcflags"
       fi
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mbedtls_ssl_init in -lmbedtls" >&5
-$as_echo_n "checking for mbedtls_ssl_init in -lmbedtls... " >&6; }
-if ${ac_cv_lib_mbedtls_mbedtls_ssl_init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mbedtls_ssl_init in -lmbedtls" >&5
+printf %s "checking for mbedtls_ssl_init in -lmbedtls... " >&6; }
+if test ${ac_cv_lib_mbedtls_mbedtls_ssl_init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lmbedtls -lmbedx509 -lmbedcrypto $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -25700,21 +27075,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_mbedtls_mbedtls_ssl_init=yes
-else
+else $as_nop
   ac_cv_lib_mbedtls_mbedtls_ssl_init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mbedtls_mbedtls_ssl_init" >&5
-$as_echo "$ac_cv_lib_mbedtls_mbedtls_ssl_init" >&6; }
-if test "x$ac_cv_lib_mbedtls_mbedtls_ssl_init" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mbedtls_mbedtls_ssl_init" >&5
+printf "%s\n" "$ac_cv_lib_mbedtls_mbedtls_ssl_init" >&6; }
+if test "x$ac_cv_lib_mbedtls_mbedtls_ssl_init" = xyes
+then :
 
 
-$as_echo "#define USE_MBEDTLS 1" >>confdefs.h
+printf "%s\n" "#define USE_MBEDTLS 1" >>confdefs.h
 
        USE_MBEDTLS=1
 
@@ -25723,7 +27100,7 @@
        ssl_msg="mbedTLS"
        test mbedtls != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
 
-else
+else $as_nop
 
          CPPFLAGS=$_cppflags
          LDFLAGS=$_ldflags
@@ -25733,8 +27110,8 @@
     fi
 
     if test "x$USE_MBEDTLS" = "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: detected mbedTLS" >&5
-$as_echo "$as_me: detected mbedTLS" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: detected mbedTLS" >&5
+printf "%s\n" "$as_me: detected mbedTLS" >&6;}
       check_for_ca_bundle=1
 
       LIBS="-lmbedtls -lmbedx509 -lmbedcrypto $LIBS"
@@ -25743,8 +27120,8 @@
                                         if test "x$cross_compiling" != "xyes"; then
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$mbedtlslib"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $mbedtlslib to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $mbedtlslib to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $mbedtlslib to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $mbedtlslib to CURL_LIBRARY_PATH" >&6;}
         fi
       fi
     fi
@@ -25784,11 +27161,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -25799,11 +27177,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -25815,11 +27197,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -25828,11 +27210,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -25843,11 +27226,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -25859,11 +27246,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -25871,8 +27258,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -25884,8 +27271,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wolfssl options with pkg-config" >&5
-$as_echo_n "checking for wolfssl options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wolfssl options with pkg-config" >&5
+printf %s "checking for wolfssl options with pkg-config... " >&6; }
             itexists=`
     if test -n "$wolfpkg"; then
       PKG_CONFIG_LIBDIR="$wolfpkg"
@@ -25895,16 +27282,16 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: Check dir $wolfpkg" >&5
-$as_echo "$as_me: Check dir $wolfpkg" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Check dir $wolfpkg" >&5
+printf "%s\n" "$as_me: Check dir $wolfpkg" >&6;}
 
     addld=""
     addlib=""
@@ -25951,21 +27338,21 @@
     if test "x$USE_WOLFSSL" != "xyes"; then
 
       LDFLAGS="$LDFLAGS $addld"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: Add $addld to LDFLAGS" >&5
-$as_echo "$as_me: Add $addld to LDFLAGS" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Add $addld to LDFLAGS" >&5
+printf "%s\n" "$as_me: Add $addld to LDFLAGS" >&6;}
       if test "$addcflags" != "-I/usr/include"; then
          CPPFLAGS="$CPPFLAGS $addcflags"
-         { $as_echo "$as_me:${as_lineno-$LINENO}: Add $addcflags to CPPFLAGS" >&5
-$as_echo "$as_me: Add $addcflags to CPPFLAGS" >&6;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Add $addcflags to CPPFLAGS" >&5
+printf "%s\n" "$as_me: Add $addcflags to CPPFLAGS" >&6;}
       fi
 
       my_ac_save_LIBS="$LIBS"
       LIBS="$addlib $LIBS"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: Add $addlib to LIBS" >&5
-$as_echo "$as_me: Add $addlib to LIBS" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Add $addlib to LIBS" >&5
+printf "%s\n" "$as_me: Add $addlib to LIBS" >&6;}
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wolfSSL_Init in -lwolfssl" >&5
-$as_echo_n "checking for wolfSSL_Init in -lwolfssl... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wolfSSL_Init in -lwolfssl" >&5
+printf %s "checking for wolfSSL_Init in -lwolfssl... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -25986,12 +27373,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define USE_WOLFSSL 1" >>confdefs.h
+printf "%s\n" "#define USE_WOLFSSL 1" >>confdefs.h
 
          USE_WOLFSSL=1
 
@@ -26000,30 +27388,31 @@
          ssl_msg="WolfSSL"
 	 test wolfssl != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
 
-else
+else $as_nop
 
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
          CPPFLAGS=$_cppflags
          LDFLAGS=$_ldflags
          wolfssllibpath=""
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
       LIBS="$my_ac_save_LIBS"
     fi
 
     if test "x$USE_WOLFSSL" = "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: detected wolfSSL" >&5
-$as_echo "$as_me: detected wolfSSL" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: detected wolfSSL" >&5
+printf "%s\n" "$as_me: detected wolfSSL" >&6;}
       check_for_ca_bundle=1
 
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
-$as_echo_n "checking size of long long... " >&6; }
-if ${ac_cv_sizeof_long_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of long long" >&5
+printf %s "checking size of long long... " >&6; }
+if test ${ac_cv_sizeof_long_long+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -26038,10 +27427,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_long_long=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_long_long != x ; then break; fi
 done
 
@@ -26050,48 +27440,47 @@
 if test x$ac_cv_sizeof_long_long = x ; then
   as_fn_error $? "cannot determine a size for long long" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
-$as_echo "$ac_cv_sizeof_long_long" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long_long" >&5
+printf "%s\n" "$ac_cv_sizeof_long_long" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long
-_ACEOF
+printf "%s\n" "#define SIZEOF_LONG_LONG $ac_cv_sizeof_long_long" >>confdefs.h
 
 
 
       LIBS="$addlib -lm $LIBS"
 
-                        for ac_func in wolfSSL_get_peer_certificate \
-                     wolfSSL_UseALPN
-do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
-ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
-_ACEOF
+                        ac_fn_c_check_func "$LINENO" "wolfSSL_get_peer_certificate" "ac_cv_func_wolfSSL_get_peer_certificate"
+if test "x$ac_cv_func_wolfSSL_get_peer_certificate" = xyes
+then :
+  printf "%s\n" "#define HAVE_WOLFSSL_GET_PEER_CERTIFICATE 1" >>confdefs.h
 
 fi
-done
+ac_fn_c_check_func "$LINENO" "wolfSSL_UseALPN" "ac_cv_func_wolfSSL_UseALPN"
+if test "x$ac_cv_func_wolfSSL_UseALPN" = xyes
+then :
+  printf "%s\n" "#define HAVE_WOLFSSL_USEALPN 1" >>confdefs.h
+
+fi
 
 
                   ac_fn_c_check_func "$LINENO" "wolfSSL_DES_ecb_encrypt" "ac_cv_func_wolfSSL_DES_ecb_encrypt"
-if test "x$ac_cv_func_wolfSSL_DES_ecb_encrypt" = xyes; then :
+if test "x$ac_cv_func_wolfSSL_DES_ecb_encrypt" = xyes
+then :
 
 
-$as_echo "#define HAVE_WOLFSSL_DES_ECB_ENCRYPT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_WOLFSSL_DES_ECB_ENCRYPT 1" >>confdefs.h
 
             if test -n "$addcflags"; then
                             for f in $addcflags; do
                 CPPFLAGS="$f/wolfssl $CPPFLAGS"
-                { $as_echo "$as_me:${as_lineno-$LINENO}: Add $f/wolfssl to CPPFLAGS" >&5
-$as_echo "$as_me: Add $f/wolfssl to CPPFLAGS" >&6;}
+                { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Add $f/wolfssl to CPPFLAGS" >&5
+printf "%s\n" "$as_me: Add $f/wolfssl to CPPFLAGS" >&6;}
                 break
               done
             else
                                           CPPFLAGS="-I/usr/include/wolfssl $CPPFLAGS"
-              { $as_echo "$as_me:${as_lineno-$LINENO}: Add /usr/include/wolfssl to CPPFLAGS" >&5
-$as_echo "$as_me: Add /usr/include/wolfssl to CPPFLAGS" >&6;}
+              { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Add /usr/include/wolfssl to CPPFLAGS" >&5
+printf "%s\n" "$as_me: Add /usr/include/wolfssl to CPPFLAGS" >&6;}
             fi
             WOLFSSL_NTLM=1
 
@@ -26103,8 +27492,8 @@
                                         if test "x$cross_compiling" != "xyes"; then
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$wolfssllibpath"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $wolfssllibpath to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $wolfssllibpath to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $wolfssllibpath to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $wolfssllibpath to CURL_LIBRARY_PATH" >&6;}
         fi
       fi
 
@@ -26130,11 +27519,12 @@
 
     if test -z "$OPT_MESALINK" ; then
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mesalink_library_init in -lmesalink" >&5
-$as_echo_n "checking for mesalink_library_init in -lmesalink... " >&6; }
-if ${ac_cv_lib_mesalink_mesalink_library_init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mesalink_library_init in -lmesalink" >&5
+printf %s "checking for mesalink_library_init in -lmesalink... " >&6; }
+if test ${ac_cv_lib_mesalink_mesalink_library_init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lmesalink  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -26152,21 +27542,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_mesalink_mesalink_library_init=yes
-else
+else $as_nop
   ac_cv_lib_mesalink_mesalink_library_init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mesalink_mesalink_library_init" >&5
-$as_echo "$ac_cv_lib_mesalink_mesalink_library_init" >&6; }
-if test "x$ac_cv_lib_mesalink_mesalink_library_init" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mesalink_mesalink_library_init" >&5
+printf "%s\n" "$ac_cv_lib_mesalink_mesalink_library_init" >&6; }
+if test "x$ac_cv_lib_mesalink_mesalink_library_init" = xyes
+then :
 
 
-$as_echo "#define USE_MESALINK 1" >>confdefs.h
+printf "%s\n" "#define USE_MESALINK 1" >>confdefs.h
 
          USE_MESALINK=1
 
@@ -26194,11 +27586,12 @@
          CPPFLAGS="$CPPFLAGS $addcflags"
       fi
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for mesalink_library_init in -lmesalink" >&5
-$as_echo_n "checking for mesalink_library_init in -lmesalink... " >&6; }
-if ${ac_cv_lib_mesalink_mesalink_library_init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for mesalink_library_init in -lmesalink" >&5
+printf %s "checking for mesalink_library_init in -lmesalink... " >&6; }
+if test ${ac_cv_lib_mesalink_mesalink_library_init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lmesalink  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -26216,21 +27609,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_mesalink_mesalink_library_init=yes
-else
+else $as_nop
   ac_cv_lib_mesalink_mesalink_library_init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mesalink_mesalink_library_init" >&5
-$as_echo "$ac_cv_lib_mesalink_mesalink_library_init" >&6; }
-if test "x$ac_cv_lib_mesalink_mesalink_library_init" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_mesalink_mesalink_library_init" >&5
+printf "%s\n" "$ac_cv_lib_mesalink_mesalink_library_init" >&6; }
+if test "x$ac_cv_lib_mesalink_mesalink_library_init" = xyes
+then :
 
 
-$as_echo "#define USE_MESALINK 1" >>confdefs.h
+printf "%s\n" "#define USE_MESALINK 1" >>confdefs.h
 
        USE_MESALINK=1
 
@@ -26239,7 +27634,7 @@
        ssl_msg="MesaLink"
        test mesalink != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
 
-else
+else $as_nop
 
          CPPFLAGS=$_cppflags
          LDFLAGS=$_ldflags
@@ -26249,8 +27644,8 @@
     fi
 
     if test "x$USE_MESALINK" = "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: detected MesaLink" >&5
-$as_echo "$as_me: detected MesaLink" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: detected MesaLink" >&5
+printf "%s\n" "$as_me: detected MesaLink" >&6;}
 
       LIBS="-lmesalink $LIBS"
 
@@ -26258,8 +27653,8 @@
                                         if test "x$cross_compiling" != "xyes"; then
           LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$mesalinklib"
           export LD_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $mesalinklib to LD_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $mesalinklib to LD_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $mesalinklib to LD_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $mesalinklib to LD_LIBRARY_PATH" >&6;}
         fi
       fi
     fi
@@ -26283,11 +27678,12 @@
 
     if test -z "$OPT_BEARSSL" ; then
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for br_ssl_client_init_full in -lbearssl" >&5
-$as_echo_n "checking for br_ssl_client_init_full in -lbearssl... " >&6; }
-if ${ac_cv_lib_bearssl_br_ssl_client_init_full+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for br_ssl_client_init_full in -lbearssl" >&5
+printf %s "checking for br_ssl_client_init_full in -lbearssl... " >&6; }
+if test ${ac_cv_lib_bearssl_br_ssl_client_init_full+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lbearssl -lbearssl $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -26305,21 +27701,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_bearssl_br_ssl_client_init_full=yes
-else
+else $as_nop
   ac_cv_lib_bearssl_br_ssl_client_init_full=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bearssl_br_ssl_client_init_full" >&5
-$as_echo "$ac_cv_lib_bearssl_br_ssl_client_init_full" >&6; }
-if test "x$ac_cv_lib_bearssl_br_ssl_client_init_full" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bearssl_br_ssl_client_init_full" >&5
+printf "%s\n" "$ac_cv_lib_bearssl_br_ssl_client_init_full" >&6; }
+if test "x$ac_cv_lib_bearssl_br_ssl_client_init_full" = xyes
+then :
 
 
-$as_echo "#define USE_BEARSSL 1" >>confdefs.h
+printf "%s\n" "#define USE_BEARSSL 1" >>confdefs.h
 
          USE_BEARSSL=1
 
@@ -26347,11 +27745,12 @@
          CPPFLAGS="$CPPFLAGS $addcflags"
       fi
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for br_ssl_client_init_full in -lbearssl" >&5
-$as_echo_n "checking for br_ssl_client_init_full in -lbearssl... " >&6; }
-if ${ac_cv_lib_bearssl_br_ssl_client_init_full+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for br_ssl_client_init_full in -lbearssl" >&5
+printf %s "checking for br_ssl_client_init_full in -lbearssl... " >&6; }
+if test ${ac_cv_lib_bearssl_br_ssl_client_init_full+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lbearssl -lbearssl $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -26369,21 +27768,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_bearssl_br_ssl_client_init_full=yes
-else
+else $as_nop
   ac_cv_lib_bearssl_br_ssl_client_init_full=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bearssl_br_ssl_client_init_full" >&5
-$as_echo "$ac_cv_lib_bearssl_br_ssl_client_init_full" >&6; }
-if test "x$ac_cv_lib_bearssl_br_ssl_client_init_full" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_bearssl_br_ssl_client_init_full" >&5
+printf "%s\n" "$ac_cv_lib_bearssl_br_ssl_client_init_full" >&6; }
+if test "x$ac_cv_lib_bearssl_br_ssl_client_init_full" = xyes
+then :
 
 
-$as_echo "#define USE_BEARSSL 1" >>confdefs.h
+printf "%s\n" "#define USE_BEARSSL 1" >>confdefs.h
 
        USE_BEARSSL=1
 
@@ -26392,7 +27793,7 @@
        ssl_msg="BearSSL"
        test bearssl != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
 
-else
+else $as_nop
 
          CPPFLAGS=$_cppflags
          LDFLAGS=$_ldflags
@@ -26402,8 +27803,8 @@
     fi
 
     if test "x$USE_BEARSSL" = "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: detected BearSSL" >&5
-$as_echo "$as_me: detected BearSSL" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: detected BearSSL" >&5
+printf "%s\n" "$as_me: detected BearSSL" >&6;}
       check_for_ca_bundle=1
 
       LIBS="-lbearssl $LIBS"
@@ -26412,8 +27813,8 @@
                                         if test "x$cross_compiling" != "xyes"; then
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$bearssllib"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $bearssllib to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $bearssllib to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $bearssllib to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $bearssllib to CURL_LIBRARY_PATH" >&6;}
         fi
       fi
     fi
@@ -26437,11 +27838,12 @@
 
     if test -z "$OPT_RUSTLS" ; then
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for rustls_client_session_read in -lcrustls" >&5
-$as_echo_n "checking for rustls_client_session_read in -lcrustls... " >&6; }
-if ${ac_cv_lib_crustls_rustls_client_session_read+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for rustls_client_session_read in -lcrustls" >&5
+printf %s "checking for rustls_client_session_read in -lcrustls... " >&6; }
+if test ${ac_cv_lib_crustls_rustls_client_session_read+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrustls -lpthread -ldl $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -26459,21 +27861,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_crustls_rustls_client_session_read=yes
-else
+else $as_nop
   ac_cv_lib_crustls_rustls_client_session_read=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crustls_rustls_client_session_read" >&5
-$as_echo "$ac_cv_lib_crustls_rustls_client_session_read" >&6; }
-if test "x$ac_cv_lib_crustls_rustls_client_session_read" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crustls_rustls_client_session_read" >&5
+printf "%s\n" "$ac_cv_lib_crustls_rustls_client_session_read" >&6; }
+if test "x$ac_cv_lib_crustls_rustls_client_session_read" = xyes
+then :
 
 
-$as_echo "#define USE_RUSTLS 1" >>confdefs.h
+printf "%s\n" "#define USE_RUSTLS 1" >>confdefs.h
 
          USE_RUSTLS=1
 
@@ -26501,11 +27905,12 @@
          CPPFLAGS="$CPPFLAGS $addcflags"
       fi
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for rustls_connection_read in -lcrustls" >&5
-$as_echo_n "checking for rustls_connection_read in -lcrustls... " >&6; }
-if ${ac_cv_lib_crustls_rustls_connection_read+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for rustls_connection_read in -lcrustls" >&5
+printf %s "checking for rustls_connection_read in -lcrustls... " >&6; }
+if test ${ac_cv_lib_crustls_rustls_connection_read+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lcrustls -lpthread -ldl $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -26523,21 +27928,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_crustls_rustls_connection_read=yes
-else
+else $as_nop
   ac_cv_lib_crustls_rustls_connection_read=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crustls_rustls_connection_read" >&5
-$as_echo "$ac_cv_lib_crustls_rustls_connection_read" >&6; }
-if test "x$ac_cv_lib_crustls_rustls_connection_read" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_crustls_rustls_connection_read" >&5
+printf "%s\n" "$ac_cv_lib_crustls_rustls_connection_read" >&6; }
+if test "x$ac_cv_lib_crustls_rustls_connection_read" = xyes
+then :
 
 
-$as_echo "#define USE_RUSTLS 1" >>confdefs.h
+printf "%s\n" "#define USE_RUSTLS 1" >>confdefs.h
 
        USE_RUSTLS=1
 
@@ -26546,15 +27953,15 @@
        ssl_msg="rustls"
        test rustls != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
 
-else
+else $as_nop
   as_fn_error $? "--with-rustls was specified but could not find rustls." "$LINENO" 5
 fi
 
     fi
 
     if test "x$USE_RUSTLS" = "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: detected rustls" >&5
-$as_echo "$as_me: detected rustls" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: detected rustls" >&5
+printf "%s\n" "$as_me: detected rustls" >&6;}
       check_for_ca_bundle=1
 
       LIBS="-lcrustls -lpthread -ldl $LIBS"
@@ -26563,8 +27970,8 @@
                                         if test "x$cross_compiling" != "xyes"; then
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$rustlslib"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $rustlslib to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $rustlslib to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $rustlslib to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $rustlslib to CURL_LIBRARY_PATH" >&6;}
         fi
       fi
     fi
@@ -26594,11 +28001,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -26609,11 +28017,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -26625,11 +28037,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -26638,11 +28050,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -26653,11 +28066,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -26669,11 +28086,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -26681,8 +28098,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -26694,8 +28111,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nss options with pkg-config" >&5
-$as_echo_n "checking for nss options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nss options with pkg-config" >&5
+printf %s "checking for nss options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -26705,11 +28122,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -26743,11 +28160,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -26758,11 +28176,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -26774,11 +28196,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -26787,11 +28209,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -26802,11 +28225,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -26818,11 +28245,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -26830,8 +28257,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -26843,8 +28270,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nss options with pkg-config" >&5
-$as_echo_n "checking for nss options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nss options with pkg-config" >&5
+printf %s "checking for nss options with pkg-config... " >&6; }
             itexists=`
     if test -n "$NSS_PCDIR"; then
       PKG_CONFIG_LIBDIR="$NSS_PCDIR"
@@ -26854,11 +28281,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -26899,8 +28326,8 @@
 
     if test -z "$addlib"; then
       # Without pkg-config, we'll kludge in some defaults
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Using hard-wired libraries and compilation flags for NSS." >&5
-$as_echo "$as_me: WARNING: Using hard-wired libraries and compilation flags for NSS." >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Using hard-wired libraries and compilation flags for NSS." >&5
+printf "%s\n" "$as_me: WARNING: Using hard-wired libraries and compilation flags for NSS." >&2;}
       addld="-L$OPT_NSS/lib"
       addlib="-lssl3 -lsmime3 -lnss3 -lplds4 -lplc4 -lnspr4"
       addcflags="-I$OPT_NSS/include"
@@ -26918,11 +28345,12 @@
        CPPFLAGS="$CPPFLAGS $addcflags"
     fi
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for SSL_VersionRangeSet in -lnss3" >&5
-$as_echo_n "checking for SSL_VersionRangeSet in -lnss3... " >&6; }
-if ${ac_cv_lib_nss3_SSL_VersionRangeSet+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for SSL_VersionRangeSet in -lnss3" >&5
+printf %s "checking for SSL_VersionRangeSet in -lnss3... " >&6; }
+if test ${ac_cv_lib_nss3_SSL_VersionRangeSet+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnss3  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -26940,21 +28368,23 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_nss3_SSL_VersionRangeSet=yes
-else
+else $as_nop
   ac_cv_lib_nss3_SSL_VersionRangeSet=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nss3_SSL_VersionRangeSet" >&5
-$as_echo "$ac_cv_lib_nss3_SSL_VersionRangeSet" >&6; }
-if test "x$ac_cv_lib_nss3_SSL_VersionRangeSet" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nss3_SSL_VersionRangeSet" >&5
+printf "%s\n" "$ac_cv_lib_nss3_SSL_VersionRangeSet" >&6; }
+if test "x$ac_cv_lib_nss3_SSL_VersionRangeSet" = xyes
+then :
 
 
-$as_echo "#define USE_NSS 1" >>confdefs.h
+printf "%s\n" "#define USE_NSS 1" >>confdefs.h
 
      USE_NSS=1
 
@@ -26963,7 +28393,7 @@
      ssl_msg="NSS"
      test nss != "$DEFAULT_SSL_BACKEND" || VALID_DEFAULT_SSL_BACKEND=yes
 
-else
+else $as_nop
 
        LDFLAGS="$CLEANLDFLAGS"
        LIBS="$CLEANLIBS"
@@ -26973,14 +28403,15 @@
 
 
     if test "x$USE_NSS" = "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: detected NSS version $version" >&5
-$as_echo "$as_me: detected NSS version $version" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: detected NSS version $version" >&5
+printf "%s\n" "$as_me: detected NSS version $version" >&6;}
 
                         ac_fn_c_check_func "$LINENO" "PK11_CreateManagedGenericObject" "ac_cv_func_PK11_CreateManagedGenericObject"
-if test "x$ac_cv_func_PK11_CreateManagedGenericObject" = xyes; then :
+if test "x$ac_cv_func_PK11_CreateManagedGenericObject" = xyes
+then :
 
 
-$as_echo "#define HAVE_PK11_CREATEMANAGEDGENERICOBJECT 1" >>confdefs.h
+printf "%s\n" "#define HAVE_PK11_CREATEMANAGEDGENERICOBJECT 1" >>confdefs.h
 
 
 fi
@@ -26992,8 +28423,8 @@
                               if test "x$cross_compiling" != "xyes"; then
         CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$nssprefix/lib$libsuff"
         export CURL_LIBRARY_PATH
-        { $as_echo "$as_me:${as_lineno-$LINENO}: Added $nssprefix/lib$libsuff to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $nssprefix/lib$libsuff to CURL_LIBRARY_PATH" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $nssprefix/lib$libsuff to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $nssprefix/lib$libsuff to CURL_LIBRARY_PATH" >&6;}
       fi
 
     fi
@@ -27010,17 +28441,17 @@
 case "x$OPENSSL_ENABLED$GNUTLS_ENABLED$NSS_ENABLED$MBEDTLS_ENABLED$WOLFSSL_ENABLED$SCHANNEL_ENABLED$SECURETRANSPORT_ENABLED$MESALINK_ENABLED$BEARSSL_ENABLED$AMISSL_ENABLED$RUSTLS_ENABLED"
 in
 x)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more." >&5
-$as_echo "$as_me: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more." >&2;}
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Use --with-openssl, --with-gnutls, --with-wolfssl, --with-mbedtls, --with-nss, --with-schannel, --with-secure-transport, --with-mesalink, --with-amissl, --with-bearssl or --with-rustls to address this." >&5
-$as_echo "$as_me: WARNING: Use --with-openssl, --with-gnutls, --with-wolfssl, --with-mbedtls, --with-nss, --with-schannel, --with-secure-transport, --with-mesalink, --with-amissl, --with-bearssl or --with-rustls to address this." >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more." >&5
+printf "%s\n" "$as_me: WARNING: SSL disabled, you will not be able to use HTTPS, FTPS, NTLM and more." >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Use --with-openssl, --with-gnutls, --with-wolfssl, --with-mbedtls, --with-nss, --with-schannel, --with-secure-transport, --with-mesalink, --with-amissl, --with-bearssl or --with-rustls to address this." >&5
+printf "%s\n" "$as_me: WARNING: Use --with-openssl, --with-gnutls, --with-wolfssl, --with-mbedtls, --with-nss, --with-schannel, --with-secure-transport, --with-mesalink, --with-amissl, --with-bearssl or --with-rustls to address this." >&2;}
   ;;
 x1)
   # one SSL backend is enabled
 
   SSL_ENABLED="1"
-  { $as_echo "$as_me:${as_lineno-$LINENO}: built with one SSL backend" >&5
-$as_echo "$as_me: built with one SSL backend" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: built with one SSL backend" >&5
+printf "%s\n" "$as_me: built with one SSL backend" >&6;}
   ;;
 *)
   # more than one SSL backend is enabled
@@ -27029,10 +28460,10 @@
 
   CURL_WITH_MULTI_SSL="1"
 
-$as_echo "#define CURL_WITH_MULTI_SSL 1" >>confdefs.h
+printf "%s\n" "#define CURL_WITH_MULTI_SSL 1" >>confdefs.h
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: built with multiple SSL backends" >&5
-$as_echo "$as_me: built with multiple SSL backends" >&6;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: built with multiple SSL backends" >&5
+printf "%s\n" "$as_me: built with multiple SSL backends" >&6;}
   ;;
 esac
 
@@ -27051,9 +28482,7 @@
 elif test yes = "$VALID_DEFAULT_SSL_BACKEND"
 then
 
-cat >>confdefs.h <<_ACEOF
-#define CURL_DEFAULT_SSL_BACKEND "$DEFAULT_SSL_BACKEND"
-_ACEOF
+printf "%s\n" "#define CURL_DEFAULT_SSL_BACKEND \"$DEFAULT_SSL_BACKEND\"" >>confdefs.h
 
 fi
 
@@ -27061,32 +28490,34 @@
 if test -n "$check_for_ca_bundle"; then
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking default CA cert bundle/path" >&5
-$as_echo_n "checking default CA cert bundle/path... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking default CA cert bundle/path" >&5
+printf %s "checking default CA cert bundle/path... " >&6; }
 
 
 # Check whether --with-ca-bundle was given.
-if test "${with_ca_bundle+set}" = set; then :
+if test ${with_ca_bundle+y}
+then :
   withval=$with_ca_bundle;
     want_ca="$withval"
     if test "x$want_ca" = "xyes"; then
       as_fn_error $? "--with-ca-bundle=FILE requires a path to the CA bundle" "$LINENO" 5
     fi
 
-else
+else $as_nop
    want_ca="unset"
 fi
 
 
 # Check whether --with-ca-path was given.
-if test "${with_ca_path+set}" = set; then :
+if test ${with_ca_path+y}
+then :
   withval=$with_ca_path;
     want_capath="$withval"
     if test "x$want_capath" = "xyes"; then
       as_fn_error $? "--with-ca-path=DIRECTORY requires a path to the CA path directory" "$LINENO" 5
     fi
 
-else
+else $as_nop
    want_capath="unset"
 fi
 
@@ -27136,8 +28567,8 @@
         check_capath="/etc/ssl/certs/"
       fi
     else
-            { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: skipped the ca-cert path detection when cross-compiling" >&5
-$as_echo "$as_me: WARNING: skipped the ca-cert path detection when cross-compiling" >&2;}
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: skipped the ca-cert path detection when cross-compiling" >&5
+printf "%s\n" "$as_me: WARNING: skipped the ca-cert path detection when cross-compiling" >&2;}
     fi
   fi
 
@@ -27168,53 +28599,48 @@
   if test "x$ca" != "xno"; then
     CURL_CA_BUNDLE='"'$ca'"'
 
-cat >>confdefs.h <<_ACEOF
-#define CURL_CA_BUNDLE "$ca"
-_ACEOF
+printf "%s\n" "#define CURL_CA_BUNDLE \"$ca\"" >>confdefs.h
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ca" >&5
-$as_echo "$ca" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ca" >&5
+printf "%s\n" "$ca" >&6; }
   fi
   if test "x$capath" != "xno"; then
     CURL_CA_PATH="\"$capath\""
 
-cat >>confdefs.h <<_ACEOF
-#define CURL_CA_PATH "$capath"
-_ACEOF
+printf "%s\n" "#define CURL_CA_PATH \"$capath\"" >>confdefs.h
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $capath (capath)" >&5
-$as_echo "$capath (capath)" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $capath (capath)" >&5
+printf "%s\n" "$capath (capath)" >&6; }
   fi
   if test "x$ca" = "xno" && test "x$capath" = "xno"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use builtin CA store of SSL library" >&5
-$as_echo_n "checking whether to use builtin CA store of SSL library... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use builtin CA store of SSL library" >&5
+printf %s "checking whether to use builtin CA store of SSL library... " >&6; }
 
 # Check whether --with-ca-fallback was given.
-if test "${with_ca_fallback+set}" = set; then :
+if test ${with_ca_fallback+y}
+then :
   withval=$with_ca_fallback;
     if test "x$with_ca_fallback" != "xyes" -a "x$with_ca_fallback" != "xno"; then
       as_fn_error $? "--with-ca-fallback only allows yes or no as parameter" "$LINENO" 5
     fi
 
-else
+else $as_nop
    with_ca_fallback="no"
 fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $with_ca_fallback" >&5
-$as_echo "$with_ca_fallback" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $with_ca_fallback" >&5
+printf "%s\n" "$with_ca_fallback" >&6; }
   if test "x$with_ca_fallback" = "xyes"; then
     if test "x$OPENSSL_ENABLED" != "x1" -a "x$GNUTLS_ENABLED" != "x1"; then
       as_fn_error $? "--with-ca-fallback only works with OpenSSL or GnuTLS" "$LINENO" 5
     fi
 
-cat >>confdefs.h <<_ACEOF
-#define CURL_CA_FALLBACK 1
-_ACEOF
+printf "%s\n" "#define CURL_CA_FALLBACK 1" >>confdefs.h
 
   fi
 
@@ -27223,18 +28649,20 @@
 
 
 # Check whether --with-libpsl was given.
-if test "${with_libpsl+set}" = set; then :
+if test ${with_libpsl+y}
+then :
   withval=$with_libpsl; with_libpsl=$withval
-else
+else $as_nop
   with_libpsl=yes
 fi
 
 if test $with_libpsl != "no"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing psl_builtin" >&5
-$as_echo_n "checking for library containing psl_builtin... " >&6; }
-if ${ac_cv_search_psl_builtin+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing psl_builtin" >&5
+printf %s "checking for library containing psl_builtin... " >&6; }
+if test ${ac_cv_search_psl_builtin+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_func_search_save_LIBS=$LIBS
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -27251,44 +28679,49 @@
  return 0;
 }
 _ACEOF
-for ac_lib in '' psl; do
+for ac_lib in '' psl
+do
   if test -z "$ac_lib"; then
     ac_res="none required"
   else
     ac_res=-l$ac_lib
     LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
   fi
-  if ac_fn_c_try_link "$LINENO"; then :
+  if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_search_psl_builtin=$ac_res
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext
-  if ${ac_cv_search_psl_builtin+:} false; then :
+  if test ${ac_cv_search_psl_builtin+y}
+then :
   break
 fi
 done
-if ${ac_cv_search_psl_builtin+:} false; then :
+if test ${ac_cv_search_psl_builtin+y}
+then :
 
-else
+else $as_nop
   ac_cv_search_psl_builtin=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_psl_builtin" >&5
-$as_echo "$ac_cv_search_psl_builtin" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_psl_builtin" >&5
+printf "%s\n" "$ac_cv_search_psl_builtin" >&6; }
 ac_res=$ac_cv_search_psl_builtin
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
   curl_psl_msg="enabled";
 
-$as_echo "#define USE_LIBPSL 1" >>confdefs.h
+printf "%s\n" "#define USE_LIBPSL 1" >>confdefs.h
 
 
-else
+else $as_nop
   curl_psl_msg="no      (libpsl not found)";
-     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libpsl was not found" >&5
-$as_echo "$as_me: WARNING: libpsl was not found" >&2;}
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: libpsl was not found" >&5
+printf "%s\n" "$as_me: WARNING: libpsl was not found" >&2;}
 
 
 fi
@@ -27307,18 +28740,20 @@
 
 
 # Check whether --with-libgsasl was given.
-if test "${with_libgsasl+set}" = set; then :
+if test ${with_libgsasl+y}
+then :
   withval=$with_libgsasl; with_libgsasl=$withval
-else
+else $as_nop
   with_libgsasl=yes
 fi
 
 if test $with_libgsasl != "no"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for library containing gsasl_init" >&5
-$as_echo_n "checking for library containing gsasl_init... " >&6; }
-if ${ac_cv_search_gsasl_init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for library containing gsasl_init" >&5
+printf %s "checking for library containing gsasl_init... " >&6; }
+if test ${ac_cv_search_gsasl_init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_func_search_save_LIBS=$LIBS
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -27335,44 +28770,49 @@
  return 0;
 }
 _ACEOF
-for ac_lib in '' gsasl; do
+for ac_lib in '' gsasl
+do
   if test -z "$ac_lib"; then
     ac_res="none required"
   else
     ac_res=-l$ac_lib
     LIBS="-l$ac_lib  $ac_func_search_save_LIBS"
   fi
-  if ac_fn_c_try_link "$LINENO"; then :
+  if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_search_gsasl_init=$ac_res
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext
-  if ${ac_cv_search_gsasl_init+:} false; then :
+  if test ${ac_cv_search_gsasl_init+y}
+then :
   break
 fi
 done
-if ${ac_cv_search_gsasl_init+:} false; then :
+if test ${ac_cv_search_gsasl_init+y}
+then :
 
-else
+else $as_nop
   ac_cv_search_gsasl_init=no
 fi
 rm conftest.$ac_ext
 LIBS=$ac_func_search_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_gsasl_init" >&5
-$as_echo "$ac_cv_search_gsasl_init" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_search_gsasl_init" >&5
+printf "%s\n" "$ac_cv_search_gsasl_init" >&6; }
 ac_res=$ac_cv_search_gsasl_init
-if test "$ac_res" != no; then :
+if test "$ac_res" != no
+then :
   test "$ac_res" = "none required" || LIBS="$ac_res $LIBS"
   curl_gsasl_msg="enabled";
 
-$as_echo "#define USE_GSASL 1" >>confdefs.h
+printf "%s\n" "#define USE_GSASL 1" >>confdefs.h
 
 
-else
+else $as_nop
   curl_gsasl_msg="no      (libgsasl not found)";
-     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: libgsasl was not found" >&5
-$as_echo "$as_me: WARNING: libgsasl was not found" >&2;}
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: libgsasl was not found" >&5
+printf "%s\n" "$as_me: WARNING: libgsasl was not found" >&2;}
 
 
 fi
@@ -27389,7 +28829,8 @@
 
 
 # Check whether --with-libmetalink was given.
-if test "${with_libmetalink+set}" = set; then :
+if test ${with_libmetalink+y}
+then :
   withval=$with_libmetalink; as_fn_error $? "--with-libmetalink no longer works!" "$LINENO" 5
 fi
 
@@ -27398,9 +28839,10 @@
 OPT_LIBSSH2=off
 
 # Check whether --with-libssh2 was given.
-if test "${with_libssh2+set}" = set; then :
+if test ${with_libssh2+y}
+then :
   withval=$with_libssh2; OPT_LIBSSH2=$withval
-else
+else $as_nop
   OPT_LIBSSH2=no
 fi
 
@@ -27409,9 +28851,10 @@
 OPT_LIBSSH=off
 
 # Check whether --with-libssh was given.
-if test "${with_libssh+set}" = set; then :
+if test ${with_libssh+y}
+then :
   withval=$with_libssh; OPT_LIBSSH=$withval
-else
+else $as_nop
   OPT_LIBSSH=no
 fi
 
@@ -27419,9 +28862,10 @@
 OPT_WOLFSSH=off
 
 # Check whether --with-wolfssh was given.
-if test "${with_wolfssh+set}" = set; then :
+if test ${with_wolfssh+y}
+then :
   withval=$with_wolfssh; OPT_WOLFSSH=$withval
-else
+else $as_nop
   OPT_WOLFSSH=no
 fi
 
@@ -27440,11 +28884,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -27455,11 +28900,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -27471,11 +28920,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -27484,11 +28933,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -27499,11 +28949,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -27515,11 +28969,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -27527,8 +28981,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -27540,8 +28994,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libssh2 options with pkg-config" >&5
-$as_echo_n "checking for libssh2 options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libssh2 options with pkg-config" >&5
+printf %s "checking for libssh2 options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -27551,11 +29005,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -27587,11 +29041,12 @@
   CPPFLAGS="$CPPFLAGS $CPP_SSH2"
   LIBS="$LIB_SSH2 $LIBS"
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libssh2_session_block_directions in -lssh2" >&5
-$as_echo_n "checking for libssh2_session_block_directions in -lssh2... " >&6; }
-if ${ac_cv_lib_ssh2_libssh2_session_block_directions+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libssh2_session_block_directions in -lssh2" >&5
+printf %s "checking for libssh2_session_block_directions in -lssh2... " >&6; }
+if test ${ac_cv_lib_ssh2_libssh2_session_block_directions+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lssh2  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -27609,38 +29064,37 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ssh2_libssh2_session_block_directions=yes
-else
+else $as_nop
   ac_cv_lib_ssh2_libssh2_session_block_directions=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssh2_libssh2_session_block_directions" >&5
-$as_echo "$ac_cv_lib_ssh2_libssh2_session_block_directions" >&6; }
-if test "x$ac_cv_lib_ssh2_libssh2_session_block_directions" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSH2 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssh2_libssh2_session_block_directions" >&5
+printf "%s\n" "$ac_cv_lib_ssh2_libssh2_session_block_directions" >&6; }
+if test "x$ac_cv_lib_ssh2_libssh2_session_block_directions" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBSSH2 1" >>confdefs.h
 
   LIBS="-lssh2 $LIBS"
 
 fi
 
 
-  for ac_header in libssh2.h
+         for ac_header in libssh2.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "libssh2.h" "ac_cv_header_libssh2_h" "$ac_includes_default"
-if test "x$ac_cv_header_libssh2_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSH2_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "libssh2.h" "ac_cv_header_libssh2_h" "$ac_includes_default"
+if test "x$ac_cv_header_libssh2_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBSSH2_H 1" >>confdefs.h
  curl_ssh_msg="enabled (libSSH2)"
     LIBSSH2_ENABLED=1
 
-$as_echo "#define USE_LIBSSH2 1" >>confdefs.h
+printf "%s\n" "#define USE_LIBSSH2 1" >>confdefs.h
 
     USE_LIBSSH2=1
 
@@ -27649,7 +29103,6 @@
 
 done
 
-
   if test X"$OPT_LIBSSH2" != Xoff &&
      test "$LIBSSH2_ENABLED" != "1"; then
     as_fn_error $? "libSSH2 libs and/or directories were not found where specified!" "$LINENO" 5
@@ -27661,8 +29114,8 @@
        if test "x$cross_compiling" != "xyes"; then
          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_SSH2"
          export CURL_LIBRARY_PATH
-         { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_SSH2 to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_SSH2 to CURL_LIBRARY_PATH" >&6;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_SSH2 to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_SSH2 to CURL_LIBRARY_PATH" >&6;}
        fi
     fi
   else
@@ -27684,11 +29137,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -27699,11 +29153,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -27715,11 +29173,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -27728,11 +29186,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -27743,11 +29202,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -27759,11 +29222,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -27771,8 +29234,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -27784,8 +29247,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libssh options with pkg-config" >&5
-$as_echo_n "checking for libssh options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libssh options with pkg-config" >&5
+printf %s "checking for libssh options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -27795,11 +29258,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -27831,11 +29294,12 @@
   CPPFLAGS="$CPPFLAGS $CPP_SSH"
   LIBS="$LIB_SSH $LIBS"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ssh_new in -lssh" >&5
-$as_echo_n "checking for ssh_new in -lssh... " >&6; }
-if ${ac_cv_lib_ssh_ssh_new+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ssh_new in -lssh" >&5
+printf %s "checking for ssh_new in -lssh... " >&6; }
+if test ${ac_cv_lib_ssh_ssh_new+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lssh  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -27853,38 +29317,37 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ssh_ssh_new=yes
-else
+else $as_nop
   ac_cv_lib_ssh_ssh_new=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssh_ssh_new" >&5
-$as_echo "$ac_cv_lib_ssh_ssh_new" >&6; }
-if test "x$ac_cv_lib_ssh_ssh_new" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSH 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ssh_ssh_new" >&5
+printf "%s\n" "$ac_cv_lib_ssh_ssh_new" >&6; }
+if test "x$ac_cv_lib_ssh_ssh_new" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBSSH 1" >>confdefs.h
 
   LIBS="-lssh $LIBS"
 
 fi
 
 
-  for ac_header in libssh/libssh.h
+         for ac_header in libssh/libssh.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "libssh/libssh.h" "ac_cv_header_libssh_libssh_h" "$ac_includes_default"
-if test "x$ac_cv_header_libssh_libssh_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBSSH_LIBSSH_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "libssh/libssh.h" "ac_cv_header_libssh_libssh_h" "$ac_includes_default"
+if test "x$ac_cv_header_libssh_libssh_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBSSH_LIBSSH_H 1" >>confdefs.h
  curl_ssh_msg="enabled (libSSH)"
     LIBSSH_ENABLED=1
 
-$as_echo "#define USE_LIBSSH 1" >>confdefs.h
+printf "%s\n" "#define USE_LIBSSH 1" >>confdefs.h
 
     USE_LIBSSH=1
 
@@ -27893,7 +29356,6 @@
 
 done
 
-
   if test X"$OPT_LIBSSH" != Xoff &&
      test "$LIBSSH_ENABLED" != "1"; then
     as_fn_error $? "libSSH libs and/or directories were not found where specified!" "$LINENO" 5
@@ -27905,8 +29367,8 @@
        if test "x$cross_compiling" != "xyes"; then
          CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_SSH"
          export CURL_LIBRARY_PATH
-         { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_SSH to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_SSH to CURL_LIBRARY_PATH" >&6;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_SSH to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_SSH to CURL_LIBRARY_PATH" >&6;}
        fi
     fi
   else
@@ -27926,11 +29388,12 @@
      CPPFLAGS="$CPPFLAGS `$WOLFCONFIG --cflags`"
   fi
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for wolfSSH_Init in -lwolfssh" >&5
-$as_echo_n "checking for wolfSSH_Init in -lwolfssh... " >&6; }
-if ${ac_cv_lib_wolfssh_wolfSSH_Init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for wolfSSH_Init in -lwolfssh" >&5
+printf %s "checking for wolfSSH_Init in -lwolfssh... " >&6; }
+if test ${ac_cv_lib_wolfssh_wolfSSH_Init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lwolfssh  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -27948,38 +29411,37 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_wolfssh_wolfSSH_Init=yes
-else
+else $as_nop
   ac_cv_lib_wolfssh_wolfSSH_Init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_wolfssh_wolfSSH_Init" >&5
-$as_echo "$ac_cv_lib_wolfssh_wolfSSH_Init" >&6; }
-if test "x$ac_cv_lib_wolfssh_wolfSSH_Init" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBWOLFSSH 1
-_ACEOF
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_wolfssh_wolfSSH_Init" >&5
+printf "%s\n" "$ac_cv_lib_wolfssh_wolfSSH_Init" >&6; }
+if test "x$ac_cv_lib_wolfssh_wolfSSH_Init" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBWOLFSSH 1" >>confdefs.h
 
   LIBS="-lwolfssh $LIBS"
 
 fi
 
 
-  for ac_header in wolfssh/ssh.h
+         for ac_header in wolfssh/ssh.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "wolfssh/ssh.h" "ac_cv_header_wolfssh_ssh_h" "$ac_includes_default"
-if test "x$ac_cv_header_wolfssh_ssh_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_WOLFSSH_SSH_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "wolfssh/ssh.h" "ac_cv_header_wolfssh_ssh_h" "$ac_includes_default"
+if test "x$ac_cv_header_wolfssh_ssh_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_WOLFSSH_SSH_H 1" >>confdefs.h
  curl_ssh_msg="enabled (wolfSSH)"
     WOLFSSH_ENABLED=1
 
-$as_echo "#define USE_WOLFSSH 1" >>confdefs.h
+printf "%s\n" "#define USE_WOLFSSH 1" >>confdefs.h
 
     USE_WOLFSSH=1
 
@@ -27988,14 +29450,14 @@
 
 done
 
-
 fi
 
 
 OPT_LIBRTMP=off
 
 # Check whether --with-librtmp was given.
-if test "${with_librtmp+set}" = set; then :
+if test ${with_librtmp+y}
+then :
   withval=$with_librtmp; OPT_LIBRTMP=$withval
 fi
 
@@ -28014,11 +29476,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -28029,11 +29492,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28045,11 +29512,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -28058,11 +29525,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -28073,11 +29541,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28089,11 +29561,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -28101,8 +29573,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -28114,8 +29586,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for librtmp options with pkg-config" >&5
-$as_echo_n "checking for librtmp options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for librtmp options with pkg-config" >&5
+printf %s "checking for librtmp options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -28125,11 +29597,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -28164,11 +29636,12 @@
   CPPFLAGS="$CPPFLAGS $CPP_RTMP"
   LIBS="$LIB_RTMP $LIBS"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for RTMP_Init in -lrtmp" >&5
-$as_echo_n "checking for RTMP_Init in -lrtmp... " >&6; }
-if ${ac_cv_lib_rtmp_RTMP_Init+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for RTMP_Init in -lrtmp" >&5
+printf %s "checking for RTMP_Init in -lrtmp... " >&6; }
+if test ${ac_cv_lib_rtmp_RTMP_Init+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lrtmp  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -28186,30 +29659,31 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_rtmp_RTMP_Init=yes
-else
+else $as_nop
   ac_cv_lib_rtmp_RTMP_Init=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rtmp_RTMP_Init" >&5
-$as_echo "$ac_cv_lib_rtmp_RTMP_Init" >&6; }
-if test "x$ac_cv_lib_rtmp_RTMP_Init" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_rtmp_RTMP_Init" >&5
+printf "%s\n" "$ac_cv_lib_rtmp_RTMP_Init" >&6; }
+if test "x$ac_cv_lib_rtmp_RTMP_Init" = xyes
+then :
 
-     for ac_header in librtmp/rtmp.h
+            for ac_header in librtmp/rtmp.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "librtmp/rtmp.h" "ac_cv_header_librtmp_rtmp_h" "$ac_includes_default"
-if test "x$ac_cv_header_librtmp_rtmp_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_LIBRTMP_RTMP_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "librtmp/rtmp.h" "ac_cv_header_librtmp_rtmp_h" "$ac_includes_default"
+if test "x$ac_cv_header_librtmp_rtmp_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBRTMP_RTMP_H 1" >>confdefs.h
  curl_rtmp_msg="enabled (librtmp)"
         LIBRTMP_ENABLED=1
 
-$as_echo "#define USE_LIBRTMP 1" >>confdefs.h
+printf "%s\n" "#define USE_LIBRTMP 1" >>confdefs.h
 
         USE_LIBRTMP=1
 
@@ -28218,8 +29692,7 @@
 
 done
 
-
-else
+else $as_nop
         LDFLAGS=$CLEANLDFLAGS
       CPPFLAGS=$CLEANCPPFLAGS
       LIBS=$CLEANLIBS
@@ -28236,24 +29709,25 @@
 
 
 versioned_symbols_flavour=
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether versioned symbols are wanted" >&5
-$as_echo_n "checking whether versioned symbols are wanted... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether versioned symbols are wanted" >&5
+printf %s "checking whether versioned symbols are wanted... " >&6; }
 # Check whether --enable-versioned-symbols was given.
-if test "${enable_versioned_symbols+set}" = set; then :
+if test ${enable_versioned_symbols+y}
+then :
   enableval=$enable_versioned_symbols;  case "$enableval" in
-  yes) { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if libraries can be versioned" >&5
-$as_echo_n "checking if libraries can be versioned... " >&6; }
+  yes) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if libraries can be versioned" >&5
+printf %s "checking if libraries can be versioned... " >&6; }
     GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script`
     if test -z "$GLD"; then
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: You need an ld version supporting the --version-script option" >&5
-$as_echo "$as_me: WARNING: You need an ld version supporting the --version-script option" >&2;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: You need an ld version supporting the --version-script option" >&5
+printf "%s\n" "$as_me: WARNING: You need an ld version supporting the --version-script option" >&2;}
     else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         if test "x$CURL_WITH_MULTI_SSL" = "x1"; then
           versioned_symbols_flavour="MULTISSL_"
         elif test "x$OPENSSL_ENABLED" = "x1"; then
@@ -28275,15 +29749,15 @@
     fi
     ;;
 
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     ;;
   esac
 
-else
+else $as_nop
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 
 fi
@@ -28301,41 +29775,43 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Windows native IDN (Windows native builds only)" >&5
-$as_echo_n "checking whether to enable Windows native IDN (Windows native builds only)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable Windows native IDN (Windows native builds only)" >&5
+printf %s "checking whether to enable Windows native IDN (Windows native builds only)... " >&6; }
 OPT_WINIDN="default"
 
 # Check whether --with-winidn was given.
-if test "${with_winidn+set}" = set; then :
+if test ${with_winidn+y}
+then :
   withval=$with_winidn; OPT_WINIDN=$withval
 fi
 
 case "$OPT_WINIDN" in
   no|default)
         want_winidn="no"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     ;;
   yes)
         want_winidn="yes"
     want_winidn_path="default"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     ;;
   *)
         want_winidn="yes"
     want_winidn_path="$withval"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes ($withval)" >&5
-$as_echo "yes ($withval)" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes ($withval)" >&5
+printf "%s\n" "yes ($withval)" >&6; }
     ;;
 esac
 
 if test "$want_winidn" = "yes"; then
-    clean_CPPFLAGS="$CPPFLAGS"
+    clean_CFLAGS="$CFLAGS"
+  clean_CPPFLAGS="$CPPFLAGS"
   clean_LDFLAGS="$LDFLAGS"
   clean_LIBS="$LIBS"
   WINIDN_LIBS="-lnormaliz"
-  WINIDN_CPPFLAGS="-DWINVER=0x0600"
+  WINIDN_CPPFLAGS=""
   #
   if test "$want_winidn_path" != "default"; then
             WINIDN_LDFLAGS="-L$want_winidn_path/lib$libsuff"
@@ -28343,12 +29819,45 @@
     WINIDN_DIR="$want_winidn_path/lib$libsuff"
   fi
   #
+    cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+
+      #include <windows.h>
+
+int main (void)
+{
+
+      #if (WINVER < 0x600) && (_WIN32_WINNT < 0x600)
+      #error
+      #endif
+
+ ;
+ return 0;
+}
+
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+
+else $as_nop
+
+     CFLAGS=`echo $CFLAGS | $SED -e 's/-DWINVER=[^ ]*//g'`
+     CFLAGS=`echo $CFLAGS | $SED -e 's/-D_WIN32_WINNT=[^ ]*//g'`
+     CPPFLAGS=`echo $CPPFLAGS | $SED -e 's/-DWINVER=[^ ]*//g'`
+     CPPFLAGS=`echo $CPPFLAGS | $SED -e 's/-D_WIN32_WINNT=[^ ]*//g'`
+     WINIDN_CPPFLAGS="$WINIDN_CPPFLAGS -DWINVER=0x0600"
+
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+  #
   CPPFLAGS="$CPPFLAGS $WINIDN_CPPFLAGS"
   LDFLAGS="$LDFLAGS $WINIDN_LDFLAGS"
   LIBS="$WINIDN_LIBS $LIBS"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IdnToUnicode can be linked" >&5
-$as_echo_n "checking if IdnToUnicode can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IdnToUnicode can be linked" >&5
+printf %s "checking if IdnToUnicode can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -28365,35 +29874,37 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_winidn="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_winidn="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_winidn" = "yes"; then
 
-$as_echo "#define USE_WIN32_IDN 1" >>confdefs.h
+printf "%s\n" "#define USE_WIN32_IDN 1" >>confdefs.h
 
 
-$as_echo "#define WANT_IDN_PROTOTYPES 1" >>confdefs.h
+printf "%s\n" "#define WANT_IDN_PROTOTYPES 1" >>confdefs.h
 
     IDN_ENABLED=1
 
     curl_idn_msg="enabled (Windows-native)"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find libraries for IDN support: IDN disabled" >&5
-$as_echo "$as_me: WARNING: Cannot find libraries for IDN support: IDN disabled" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find libraries for IDN support: IDN disabled" >&5
+printf "%s\n" "$as_me: WARNING: Cannot find libraries for IDN support: IDN disabled" >&2;}
+    CFLAGS="$clean_CFLAGS"
     CPPFLAGS="$clean_CPPFLAGS"
     LDFLAGS="$clean_LDFLAGS"
     LIBS="$clean_LIBS"
@@ -28401,38 +29912,39 @@
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to build with libidn2" >&5
-$as_echo_n "checking whether to build with libidn2... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to build with libidn2" >&5
+printf %s "checking whether to build with libidn2... " >&6; }
 OPT_IDN="default"
 
 # Check whether --with-libidn2 was given.
-if test "${with_libidn2+set}" = set; then :
+if test ${with_libidn2+y}
+then :
   withval=$with_libidn2; OPT_IDN=$withval
 fi
 
 case "$OPT_IDN" in
   no)
         want_idn="no"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     ;;
   default)
         want_idn="yes"
     want_idn_path="default"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
-$as_echo "(assumed) yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: (assumed) yes" >&5
+printf "%s\n" "(assumed) yes" >&6; }
     ;;
   yes)
         want_idn="yes"
     want_idn_path="default"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     ;;
   *)
         want_idn="yes"
     want_idn_path="$withval"
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes ($withval)" >&5
-$as_echo "yes ($withval)" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes ($withval)" >&5
+printf "%s\n" "yes ($withval)" >&6; }
     ;;
 esac
 
@@ -28451,11 +29963,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -28466,11 +29979,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28482,11 +29999,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -28495,11 +30012,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -28510,11 +30028,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28526,11 +30048,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -28538,8 +30060,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -28551,8 +30073,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libidn2 options with pkg-config" >&5
-$as_echo_n "checking for libidn2 options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libidn2 options with pkg-config" >&5
+printf %s "checking for libidn2 options with pkg-config... " >&6; }
             itexists=`
     if test -n "$IDN_PCDIR"; then
       PKG_CONFIG_LIBDIR="$IDN_PCDIR"
@@ -28562,11 +30084,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -28604,11 +30126,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -28619,11 +30142,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28635,11 +30162,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -28648,11 +30175,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -28663,11 +30191,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28679,11 +30211,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -28691,8 +30223,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -28704,8 +30236,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libidn2 options with pkg-config" >&5
-$as_echo_n "checking for libidn2 options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libidn2 options with pkg-config" >&5
+printf %s "checking for libidn2 options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -28715,11 +30247,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -28734,31 +30266,31 @@
   fi
   #
   if test "$PKGCONFIG" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_LIBS: \"$IDN_LIBS\"" >&5
-$as_echo "$as_me: pkg-config: IDN_LIBS: \"$IDN_LIBS\"" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_DIR: \"$IDN_DIR\"" >&5
-$as_echo "$as_me: pkg-config: IDN_DIR: \"$IDN_DIR\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_LIBS: \"$IDN_LIBS\"" >&5
+printf "%s\n" "$as_me: pkg-config: IDN_LIBS: \"$IDN_LIBS\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: IDN_DIR: \"$IDN_DIR\"" >&5
+printf "%s\n" "$as_me: pkg-config: IDN_DIR: \"$IDN_DIR\"" >&6;}
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: IDN_LIBS: \"$IDN_LIBS\"" >&5
-$as_echo "$as_me: IDN_LIBS: \"$IDN_LIBS\"" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&5
-$as_echo "$as_me: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&5
-$as_echo "$as_me: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: IDN_DIR: \"$IDN_DIR\"" >&5
-$as_echo "$as_me: IDN_DIR: \"$IDN_DIR\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: IDN_LIBS: \"$IDN_LIBS\"" >&5
+printf "%s\n" "$as_me: IDN_LIBS: \"$IDN_LIBS\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&5
+printf "%s\n" "$as_me: IDN_LDFLAGS: \"$IDN_LDFLAGS\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&5
+printf "%s\n" "$as_me: IDN_CPPFLAGS: \"$IDN_CPPFLAGS\"" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: IDN_DIR: \"$IDN_DIR\"" >&5
+printf "%s\n" "$as_me: IDN_DIR: \"$IDN_DIR\"" >&6;}
   fi
   #
   CPPFLAGS="$CPPFLAGS $IDN_CPPFLAGS"
   LDFLAGS="$LDFLAGS $IDN_LDFLAGS"
   LIBS="$IDN_LIBS $LIBS"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if idn2_lookup_ul can be linked" >&5
-$as_echo_n "checking if idn2_lookup_ul can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if idn2_lookup_ul can be linked" >&5
+printf %s "checking if idn2_lookup_ul can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -28786,39 +30318,34 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_libidn="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_libidn="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
-  for ac_header in idn2.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "idn2.h" "ac_cv_header_idn2_h" "$ac_includes_default"
+if test "x$ac_cv_header_idn2_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_IDN2_H 1" >>confdefs.h
 
 fi
 
-done
-
 
   if test "$tst_links_libidn" = "yes"; then
 
-$as_echo "#define HAVE_LIBIDN2 1" >>confdefs.h
+printf "%s\n" "#define HAVE_LIBIDN2 1" >>confdefs.h
 
 
     IDN_ENABLED=1
@@ -28827,12 +30354,12 @@
     if test -n "$IDN_DIR" -a "x$cross_compiling" != "xyes"; then
       CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$IDN_DIR"
       export CURL_LIBRARY_PATH
-      { $as_echo "$as_me:${as_lineno-$LINENO}: Added $IDN_DIR to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $IDN_DIR to CURL_LIBRARY_PATH" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $IDN_DIR to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $IDN_DIR to CURL_LIBRARY_PATH" >&6;}
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find libraries for IDN support: IDN disabled" >&5
-$as_echo "$as_me: WARNING: Cannot find libraries for IDN support: IDN disabled" >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find libraries for IDN support: IDN disabled" >&5
+printf "%s\n" "$as_me: WARNING: Cannot find libraries for IDN support: IDN disabled" >&2;}
     CPPFLAGS="$clean_CPPFLAGS"
     LDFLAGS="$clean_LDFLAGS"
     LIBS="$clean_LIBS"
@@ -28840,37 +30367,35 @@
 fi
 
 
-
-
-
 OPT_H2="yes"
 
-if test "x$disable_http" = "xyes"; then
-  # without HTTP, nghttp2 is no use
+if test "x$disable_http" = "xyes" -o X"$want_hyper" != Xno; then
+  # without HTTP or with Hyper, nghttp2 is no use
   OPT_H2="no"
 fi
 
 
 # Check whether --with-nghttp2 was given.
-if test "${with_nghttp2+set}" = set; then :
+if test ${with_nghttp2+y}
+then :
   withval=$with_nghttp2; OPT_H2=$withval
 fi
 
 case "$OPT_H2" in
   no)
-        want_h2="no"
+        want_nghttp2="no"
     ;;
   yes)
-        want_h2="default"
-    want_h2_path=""
+        want_nghttp2="default"
+    want_nghttp2_path=""
     ;;
   *)
-        want_h2="yes"
-    want_h2_path="$withval/lib/pkgconfig"
+        want_nghttp2="yes"
+    want_nghttp2_path="$withval/lib/pkgconfig"
     ;;
 esac
 
-if test X"$want_h2" != Xno; then
+if test X"$want_nghttp2" != Xno; then
     CLEANLDFLAGS="$LDFLAGS"
   CLEANCPPFLAGS="$CPPFLAGS"
   CLEANLIBS="$LIBS"
@@ -28882,11 +30407,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -28897,11 +30423,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28913,11 +30443,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -28926,11 +30456,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -28941,11 +30472,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -28957,11 +30492,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -28969,8 +30504,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -28982,71 +30517,70 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libnghttp2 options with pkg-config" >&5
-$as_echo_n "checking for libnghttp2 options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libnghttp2 options with pkg-config" >&5
+printf %s "checking for libnghttp2 options with pkg-config... " >&6; }
             itexists=`
-    if test -n "$want_h2_path"; then
-      PKG_CONFIG_LIBDIR="$want_h2_path"
+    if test -n "$want_nghttp2_path"; then
+      PKG_CONFIG_LIBDIR="$want_nghttp2_path"
       export PKG_CONFIG_LIBDIR
     fi
          $PKGCONFIG --exists libnghttp2 >/dev/null 2>&1 && echo 1`
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
 
   if test "$PKGCONFIG" != "no" ; then
     LIB_H2=`
-    if test -n "$want_h2_path"; then
-      PKG_CONFIG_LIBDIR="$want_h2_path"
+    if test -n "$want_nghttp2_path"; then
+      PKG_CONFIG_LIBDIR="$want_nghttp2_path"
       export PKG_CONFIG_LIBDIR
     fi
 
       $PKGCONFIG --libs-only-l libnghttp2`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -l is $LIB_H2" >&5
-$as_echo "$as_me: -l is $LIB_H2" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -l is $LIB_H2" >&5
+printf "%s\n" "$as_me: -l is $LIB_H2" >&6;}
 
     CPP_H2=`
-    if test -n "$want_h2_path"; then
-      PKG_CONFIG_LIBDIR="$want_h2_path"
+    if test -n "$want_nghttp2_path"; then
+      PKG_CONFIG_LIBDIR="$want_nghttp2_path"
       export PKG_CONFIG_LIBDIR
     fi
        $PKGCONFIG --cflags-only-I libnghttp2`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -I is $CPP_H2" >&5
-$as_echo "$as_me: -I is $CPP_H2" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -I is $CPP_H2" >&5
+printf "%s\n" "$as_me: -I is $CPP_H2" >&6;}
 
     LD_H2=`
-    if test -n "$want_h2_path"; then
-      PKG_CONFIG_LIBDIR="$want_h2_path"
+    if test -n "$want_nghttp2_path"; then
+      PKG_CONFIG_LIBDIR="$want_nghttp2_path"
       export PKG_CONFIG_LIBDIR
     fi
 
       $PKGCONFIG --libs-only-L libnghttp2`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -L is $LD_H2" >&5
-$as_echo "$as_me: -L is $LD_H2" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -L is $LD_H2" >&5
+printf "%s\n" "$as_me: -L is $LD_H2" >&6;}
 
     LDFLAGS="$LDFLAGS $LD_H2"
     CPPFLAGS="$CPPFLAGS $CPP_H2"
     LIBS="$LIB_H2 $LIBS"
-    LIB_H2_NAME=${LIB_H2#"-l"}
 
     # use nghttp2_session_set_local_window_size to require nghttp2
     # >= 1.12.0
-    as_ac_Lib=`$as_echo "ac_cv_lib_$LIB_H2_NAME''_nghttp2_session_set_local_window_size" | $as_tr_sh`
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for nghttp2_session_set_local_window_size in -l$LIB_H2_NAME" >&5
-$as_echo_n "checking for nghttp2_session_set_local_window_size in -l$LIB_H2_NAME... " >&6; }
-if eval \${$as_ac_Lib+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nghttp2_session_set_local_window_size in -lnghttp2" >&5
+printf %s "checking for nghttp2_session_set_local_window_size in -lnghttp2... " >&6; }
+if test ${ac_cv_lib_nghttp2_nghttp2_session_set_local_window_size+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
-LIBS="-l$LIB_H2_NAME  $LIBS"
+LIBS="-lnghttp2  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -29062,31 +30596,31 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  eval "$as_ac_Lib=yes"
-else
-  eval "$as_ac_Lib=no"
+if ac_fn_c_try_link "$LINENO"
+then :
+  ac_cv_lib_nghttp2_nghttp2_session_set_local_window_size=yes
+else $as_nop
+  ac_cv_lib_nghttp2_nghttp2_session_set_local_window_size=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-eval ac_res=\$$as_ac_Lib
-	       { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5
-$as_echo "$ac_res" >&6; }
-if eval test \"x\$"$as_ac_Lib"\" = x"yes"; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nghttp2_nghttp2_session_set_local_window_size" >&5
+printf "%s\n" "$ac_cv_lib_nghttp2_nghttp2_session_set_local_window_size" >&6; }
+if test "x$ac_cv_lib_nghttp2_nghttp2_session_set_local_window_size" = xyes
+then :
 
-       for ac_header in nghttp2/nghttp2.h
+              for ac_header in nghttp2/nghttp2.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "nghttp2/nghttp2.h" "ac_cv_header_nghttp2_nghttp2_h" "$ac_includes_default"
-if test "x$ac_cv_header_nghttp2_nghttp2_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NGHTTP2_NGHTTP2_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "nghttp2/nghttp2.h" "ac_cv_header_nghttp2_nghttp2_h" "$ac_includes_default"
+if test "x$ac_cv_header_nghttp2_nghttp2_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NGHTTP2_NGHTTP2_H 1" >>confdefs.h
  curl_h2_msg="enabled (nghttp2)"
           NGHTTP2_ENABLED=1
 
-$as_echo "#define USE_NGHTTP2 1" >>confdefs.h
+printf "%s\n" "#define USE_NGHTTP2 1" >>confdefs.h
 
           USE_NGHTTP2=1
 
@@ -29095,8 +30629,7 @@
 
 done
 
-
-else
+else $as_nop
           LDFLAGS=$CLEANLDFLAGS
         CPPFLAGS=$CLEANCPPFLAGS
         LIBS=$CLEANLIBS
@@ -29105,7 +30638,7 @@
 
 
   else
-        if test X"$want_h2" != Xdefault; then
+        if test X"$want_nghttp2" != Xdefault; then
                   as_fn_error $? "--with-nghttp2 was specified but could not find libnghttp2 pkg-config file." "$LINENO" 5
     fi
   fi
@@ -29122,7 +30655,8 @@
 
 
 # Check whether --with-ngtcp2 was given.
-if test "${with_ngtcp2+set}" = set; then :
+if test ${with_ngtcp2+y}
+then :
   withval=$with_ngtcp2; OPT_TCP2=$withval
 fi
 
@@ -29153,11 +30687,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -29168,11 +30703,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29184,11 +30723,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -29197,11 +30736,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -29212,11 +30752,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29228,11 +30772,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -29240,8 +30784,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -29253,8 +30797,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libngtcp2 options with pkg-config" >&5
-$as_echo_n "checking for libngtcp2 options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libngtcp2 options with pkg-config" >&5
+printf %s "checking for libngtcp2 options with pkg-config... " >&6; }
             itexists=`
     if test -n "$want_tcp2_path"; then
       PKG_CONFIG_LIBDIR="$want_tcp2_path"
@@ -29264,11 +30808,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -29281,8 +30825,8 @@
     fi
 
       $PKGCONFIG --libs-only-l libngtcp2`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -l is $LIB_TCP2" >&5
-$as_echo "$as_me: -l is $LIB_TCP2" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -l is $LIB_TCP2" >&5
+printf "%s\n" "$as_me: -l is $LIB_TCP2" >&6;}
 
     CPP_TCP2=`
     if test -n "$want_tcp2_path"; then
@@ -29290,8 +30834,8 @@
       export PKG_CONFIG_LIBDIR
     fi
        $PKGCONFIG --cflags-only-I libngtcp2`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -I is $CPP_TCP2" >&5
-$as_echo "$as_me: -I is $CPP_TCP2" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -I is $CPP_TCP2" >&5
+printf "%s\n" "$as_me: -I is $CPP_TCP2" >&6;}
 
     LD_TCP2=`
     if test -n "$want_tcp2_path"; then
@@ -29300,8 +30844,8 @@
     fi
 
       $PKGCONFIG --libs-only-L libngtcp2`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -L is $LD_TCP2" >&5
-$as_echo "$as_me: -L is $LD_TCP2" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -L is $LD_TCP2" >&5
+printf "%s\n" "$as_me: -L is $LD_TCP2" >&6;}
 
     LDFLAGS="$LDFLAGS $LD_TCP2"
     CPPFLAGS="$CPPFLAGS $CPP_TCP2"
@@ -29310,11 +30854,12 @@
     if test "x$cross_compiling" != "xyes"; then
       DIR_TCP2=`echo $LD_TCP2 | $SED -e 's/^-L//'`
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngtcp2_conn_client_new in -lngtcp2" >&5
-$as_echo_n "checking for ngtcp2_conn_client_new in -lngtcp2... " >&6; }
-if ${ac_cv_lib_ngtcp2_ngtcp2_conn_client_new+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ngtcp2_conn_client_new_versioned in -lngtcp2" >&5
+printf %s "checking for ngtcp2_conn_client_new_versioned in -lngtcp2... " >&6; }
+if test ${ac_cv_lib_ngtcp2_ngtcp2_conn_client_new_versioned+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lngtcp2  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -29324,51 +30869,51 @@
 #ifdef __cplusplus
 extern "C"
 #endif
-char ngtcp2_conn_client_new ();
+char ngtcp2_conn_client_new_versioned ();
 int main (void)
 {
-return ngtcp2_conn_client_new ();
+return ngtcp2_conn_client_new_versioned ();
  ;
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_ngtcp2_ngtcp2_conn_client_new=yes
-else
-  ac_cv_lib_ngtcp2_ngtcp2_conn_client_new=no
+if ac_fn_c_try_link "$LINENO"
+then :
+  ac_cv_lib_ngtcp2_ngtcp2_conn_client_new_versioned=yes
+else $as_nop
+  ac_cv_lib_ngtcp2_ngtcp2_conn_client_new_versioned=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ngtcp2_ngtcp2_conn_client_new" >&5
-$as_echo "$ac_cv_lib_ngtcp2_ngtcp2_conn_client_new" >&6; }
-if test "x$ac_cv_lib_ngtcp2_ngtcp2_conn_client_new" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ngtcp2_ngtcp2_conn_client_new_versioned" >&5
+printf "%s\n" "$ac_cv_lib_ngtcp2_ngtcp2_conn_client_new_versioned" >&6; }
+if test "x$ac_cv_lib_ngtcp2_ngtcp2_conn_client_new_versioned" = xyes
+then :
 
-       for ac_header in ngtcp2/ngtcp2.h
+              for ac_header in ngtcp2/ngtcp2.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "ngtcp2/ngtcp2.h" "ac_cv_header_ngtcp2_ngtcp2_h" "$ac_includes_default"
-if test "x$ac_cv_header_ngtcp2_ngtcp2_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NGTCP2_NGTCP2_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "ngtcp2/ngtcp2.h" "ac_cv_header_ngtcp2_ngtcp2_h" "$ac_includes_default"
+if test "x$ac_cv_header_ngtcp2_ngtcp2_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NGTCP2_NGTCP2_H 1" >>confdefs.h
  NGTCP2_ENABLED=1
 
-$as_echo "#define USE_NGTCP2 1" >>confdefs.h
+printf "%s\n" "#define USE_NGTCP2 1" >>confdefs.h
 
           USE_NGTCP2=1
 
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_TCP2"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_TCP2 to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_TCP2 to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_TCP2 to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_TCP2 to CURL_LIBRARY_PATH" >&6;}
 
 fi
 
 done
 
-
-else
+else $as_nop
           LDFLAGS=$CLEANLDFLAGS
         CPPFLAGS=$CLEANCPPFLAGS
         LIBS=$CLEANLIBS
@@ -29396,11 +30941,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -29411,11 +30957,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29427,11 +30977,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -29440,11 +30990,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -29455,11 +31006,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29471,11 +31026,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -29483,8 +31038,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -29496,8 +31051,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libngtcp2_crypto_openssl options with pkg-config" >&5
-$as_echo_n "checking for libngtcp2_crypto_openssl options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libngtcp2_crypto_openssl options with pkg-config" >&5
+printf %s "checking for libngtcp2_crypto_openssl options with pkg-config... " >&6; }
             itexists=`
     if test -n "$want_tcp2_path"; then
       PKG_CONFIG_LIBDIR="$want_tcp2_path"
@@ -29507,11 +31062,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -29524,8 +31079,8 @@
     fi
 
       $PKGCONFIG --libs-only-l libngtcp2_crypto_openssl`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -l is $LIB_NGTCP2_CRYPTO_OPENSSL" >&5
-$as_echo "$as_me: -l is $LIB_NGTCP2_CRYPTO_OPENSSL" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -l is $LIB_NGTCP2_CRYPTO_OPENSSL" >&5
+printf "%s\n" "$as_me: -l is $LIB_NGTCP2_CRYPTO_OPENSSL" >&6;}
 
     CPP_NGTCP2_CRYPTO_OPENSSL=`
     if test -n "$want_tcp2_path"; then
@@ -29533,8 +31088,8 @@
       export PKG_CONFIG_LIBDIR
     fi
        $PKGCONFIG --cflags-only-I libngtcp2_crypto_openssl`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -I is $CPP_NGTCP2_CRYPTO_OPENSSL" >&5
-$as_echo "$as_me: -I is $CPP_NGTCP2_CRYPTO_OPENSSL" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -I is $CPP_NGTCP2_CRYPTO_OPENSSL" >&5
+printf "%s\n" "$as_me: -I is $CPP_NGTCP2_CRYPTO_OPENSSL" >&6;}
 
     LD_NGTCP2_CRYPTO_OPENSSL=`
     if test -n "$want_tcp2_path"; then
@@ -29543,8 +31098,8 @@
     fi
 
       $PKGCONFIG --libs-only-L libngtcp2_crypto_openssl`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -L is $LD_NGTCP2_CRYPTO_OPENSSL" >&5
-$as_echo "$as_me: -L is $LD_NGTCP2_CRYPTO_OPENSSL" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -L is $LD_NGTCP2_CRYPTO_OPENSSL" >&5
+printf "%s\n" "$as_me: -L is $LD_NGTCP2_CRYPTO_OPENSSL" >&6;}
 
     LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_OPENSSL"
     CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_OPENSSL"
@@ -29553,11 +31108,12 @@
     if test "x$cross_compiling" != "xyes"; then
       DIR_NGTCP2_CRYPTO_OPENSSL=`echo $LD_NGTCP2_CRYPTO_OPENSSL | $SED -e 's/^-L//'`
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_openssl" >&5
-$as_echo_n "checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_openssl... " >&6; }
-if ${ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_openssl" >&5
+printf %s "checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_openssl... " >&6; }
+if test ${ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lngtcp2_crypto_openssl  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -29575,43 +31131,43 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial=yes
-else
+else $as_nop
   ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial" >&5
-$as_echo "$ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial" >&6; }
-if test "x$ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial" >&5
+printf "%s\n" "$ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial" >&6; }
+if test "x$ac_cv_lib_ngtcp2_crypto_openssl_ngtcp2_crypto_ctx_initial" = xyes
+then :
 
-       for ac_header in ngtcp2/ngtcp2_crypto.h
+              for ac_header in ngtcp2/ngtcp2_crypto.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "ngtcp2/ngtcp2_crypto.h" "ac_cv_header_ngtcp2_ngtcp2_crypto_h" "$ac_includes_default"
-if test "x$ac_cv_header_ngtcp2_ngtcp2_crypto_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NGTCP2_NGTCP2_CRYPTO_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "ngtcp2/ngtcp2_crypto.h" "ac_cv_header_ngtcp2_ngtcp2_crypto_h" "$ac_includes_default"
+if test "x$ac_cv_header_ngtcp2_ngtcp2_crypto_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NGTCP2_NGTCP2_CRYPTO_H 1" >>confdefs.h
  NGTCP2_ENABLED=1
 
-$as_echo "#define USE_NGTCP2_CRYPTO_OPENSSL 1" >>confdefs.h
+printf "%s\n" "#define USE_NGTCP2_CRYPTO_OPENSSL 1" >>confdefs.h
 
           USE_NGTCP2_CRYPTO_OPENSSL=1
 
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGTCP2_CRYPTO_OPENSSL"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_NGTCP2_CRYPTO_OPENSSL to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_NGTCP2_CRYPTO_OPENSSL to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_NGTCP2_CRYPTO_OPENSSL to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_NGTCP2_CRYPTO_OPENSSL to CURL_LIBRARY_PATH" >&6;}
 
 fi
 
 done
 
-
-else
+else $as_nop
           LDFLAGS=$CLEANLDFLAGS
         CPPFLAGS=$CLEANCPPFLAGS
         LIBS=$CLEANLIBS
@@ -29638,11 +31194,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -29653,11 +31210,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29669,11 +31230,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -29682,11 +31243,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -29697,11 +31259,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29713,11 +31279,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -29725,8 +31291,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -29738,8 +31304,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libngtcp2_crypto_gnutls options with pkg-config" >&5
-$as_echo_n "checking for libngtcp2_crypto_gnutls options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libngtcp2_crypto_gnutls options with pkg-config" >&5
+printf %s "checking for libngtcp2_crypto_gnutls options with pkg-config... " >&6; }
             itexists=`
     if test -n "$want_tcp2_path"; then
       PKG_CONFIG_LIBDIR="$want_tcp2_path"
@@ -29749,11 +31315,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -29766,8 +31332,8 @@
     fi
 
       $PKGCONFIG --libs-only-l libngtcp2_crypto_gnutls`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -l is $LIB_NGTCP2_CRYPTO_GNUTLS" >&5
-$as_echo "$as_me: -l is $LIB_NGTCP2_CRYPTO_GNUTLS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -l is $LIB_NGTCP2_CRYPTO_GNUTLS" >&5
+printf "%s\n" "$as_me: -l is $LIB_NGTCP2_CRYPTO_GNUTLS" >&6;}
 
     CPP_NGTCP2_CRYPTO_GNUTLS=`
     if test -n "$want_tcp2_path"; then
@@ -29775,8 +31341,8 @@
       export PKG_CONFIG_LIBDIR
     fi
        $PKGCONFIG --cflags-only-I libngtcp2_crypto_gnutls`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -I is $CPP_NGTCP2_CRYPTO_GNUTLS" >&5
-$as_echo "$as_me: -I is $CPP_NGTCP2_CRYPTO_GNUTLS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -I is $CPP_NGTCP2_CRYPTO_GNUTLS" >&5
+printf "%s\n" "$as_me: -I is $CPP_NGTCP2_CRYPTO_GNUTLS" >&6;}
 
     LD_NGTCP2_CRYPTO_GNUTLS=`
     if test -n "$want_tcp2_path"; then
@@ -29785,8 +31351,8 @@
     fi
 
       $PKGCONFIG --libs-only-L libngtcp2_crypto_gnutls`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -L is $LD_NGTCP2_CRYPTO_GNUTLS" >&5
-$as_echo "$as_me: -L is $LD_NGTCP2_CRYPTO_GNUTLS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -L is $LD_NGTCP2_CRYPTO_GNUTLS" >&5
+printf "%s\n" "$as_me: -L is $LD_NGTCP2_CRYPTO_GNUTLS" >&6;}
 
     LDFLAGS="$LDFLAGS $LD_NGTCP2_CRYPTO_GNUTLS"
     CPPFLAGS="$CPPFLAGS $CPP_NGTCP2_CRYPTO_GNUTLS"
@@ -29795,11 +31361,12 @@
     if test "x$cross_compiling" != "xyes"; then
       DIR_NGTCP2_CRYPTO_GNUTLS=`echo $LD_NGTCP2_CRYPTO_GNUTLS | $SED -e 's/^-L//'`
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_gnutls" >&5
-$as_echo_n "checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_gnutls... " >&6; }
-if ${ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_gnutls" >&5
+printf %s "checking for ngtcp2_crypto_ctx_initial in -lngtcp2_crypto_gnutls... " >&6; }
+if test ${ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lngtcp2_crypto_gnutls  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -29817,43 +31384,43 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial=yes
-else
+else $as_nop
   ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial" >&5
-$as_echo "$ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial" >&6; }
-if test "x$ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial" >&5
+printf "%s\n" "$ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial" >&6; }
+if test "x$ac_cv_lib_ngtcp2_crypto_gnutls_ngtcp2_crypto_ctx_initial" = xyes
+then :
 
-       for ac_header in ngtcp2/ngtcp2_crypto.h
+              for ac_header in ngtcp2/ngtcp2_crypto.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "ngtcp2/ngtcp2_crypto.h" "ac_cv_header_ngtcp2_ngtcp2_crypto_h" "$ac_includes_default"
-if test "x$ac_cv_header_ngtcp2_ngtcp2_crypto_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NGTCP2_NGTCP2_CRYPTO_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "ngtcp2/ngtcp2_crypto.h" "ac_cv_header_ngtcp2_ngtcp2_crypto_h" "$ac_includes_default"
+if test "x$ac_cv_header_ngtcp2_ngtcp2_crypto_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NGTCP2_NGTCP2_CRYPTO_H 1" >>confdefs.h
  NGTCP2_ENABLED=1
 
-$as_echo "#define USE_NGTCP2_CRYPTO_GNUTLS 1" >>confdefs.h
+printf "%s\n" "#define USE_NGTCP2_CRYPTO_GNUTLS 1" >>confdefs.h
 
           USE_NGTCP2_CRYPTO_GNUTLS=1
 
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGTCP2_CRYPTO_GNUTLS"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_NGTCP2_CRYPTO_GNUTLS to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_NGTCP2_CRYPTO_GNUTLS to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_NGTCP2_CRYPTO_GNUTLS to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_NGTCP2_CRYPTO_GNUTLS to CURL_LIBRARY_PATH" >&6;}
 
 fi
 
 done
 
-
-else
+else $as_nop
           LDFLAGS=$CLEANLDFLAGS
         CPPFLAGS=$CLEANCPPFLAGS
         LIBS=$CLEANLIBS
@@ -29878,7 +31445,8 @@
 
 
 # Check whether --with-nghttp3 was given.
-if test "${with_nghttp3+set}" = set; then :
+if test ${with_nghttp3+y}
+then :
   withval=$with_nghttp3; OPT_NGHTTP3=$withval
 fi
 
@@ -29909,11 +31477,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -29924,11 +31493,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29940,11 +31513,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -29953,11 +31526,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -29968,11 +31542,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -29984,11 +31562,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -29996,8 +31574,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -30009,8 +31587,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libnghttp3 options with pkg-config" >&5
-$as_echo_n "checking for libnghttp3 options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libnghttp3 options with pkg-config" >&5
+printf %s "checking for libnghttp3 options with pkg-config... " >&6; }
             itexists=`
     if test -n "$want_nghttp3_path"; then
       PKG_CONFIG_LIBDIR="$want_nghttp3_path"
@@ -30020,11 +31598,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -30037,8 +31615,8 @@
     fi
 
       $PKGCONFIG --libs-only-l libnghttp3`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -l is $LIB_NGHTTP3" >&5
-$as_echo "$as_me: -l is $LIB_NGHTTP3" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -l is $LIB_NGHTTP3" >&5
+printf "%s\n" "$as_me: -l is $LIB_NGHTTP3" >&6;}
 
     CPP_NGHTTP3=`
     if test -n "$want_nghttp3_path"; then
@@ -30046,8 +31624,8 @@
       export PKG_CONFIG_LIBDIR
     fi
        $PKGCONFIG --cflags-only-I libnghttp3`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -I is $CPP_NGHTTP3" >&5
-$as_echo "$as_me: -I is $CPP_NGHTTP3" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -I is $CPP_NGHTTP3" >&5
+printf "%s\n" "$as_me: -I is $CPP_NGHTTP3" >&6;}
 
     LD_NGHTTP3=`
     if test -n "$want_nghttp3_path"; then
@@ -30056,8 +31634,8 @@
     fi
 
       $PKGCONFIG --libs-only-L libnghttp3`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -L is $LD_NGHTTP3" >&5
-$as_echo "$as_me: -L is $LD_NGHTTP3" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -L is $LD_NGHTTP3" >&5
+printf "%s\n" "$as_me: -L is $LD_NGHTTP3" >&6;}
 
     LDFLAGS="$LDFLAGS $LD_NGHTTP3"
     CPPFLAGS="$CPPFLAGS $CPP_NGHTTP3"
@@ -30066,11 +31644,12 @@
     if test "x$cross_compiling" != "xyes"; then
       DIR_NGHTTP3=`echo $LD_NGHTTP3 | $SED -e 's/^-L//'`
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for nghttp3_conn_client_new in -lnghttp3" >&5
-$as_echo_n "checking for nghttp3_conn_client_new in -lnghttp3... " >&6; }
-if ${ac_cv_lib_nghttp3_nghttp3_conn_client_new+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for nghttp3_conn_client_new_versioned in -lnghttp3" >&5
+printf %s "checking for nghttp3_conn_client_new_versioned in -lnghttp3... " >&6; }
+if test ${ac_cv_lib_nghttp3_nghttp3_conn_client_new_versioned+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lnghttp3  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -30080,53 +31659,53 @@
 #ifdef __cplusplus
 extern "C"
 #endif
-char nghttp3_conn_client_new ();
+char nghttp3_conn_client_new_versioned ();
 int main (void)
 {
-return nghttp3_conn_client_new ();
+return nghttp3_conn_client_new_versioned ();
  ;
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-  ac_cv_lib_nghttp3_nghttp3_conn_client_new=yes
-else
-  ac_cv_lib_nghttp3_nghttp3_conn_client_new=no
+if ac_fn_c_try_link "$LINENO"
+then :
+  ac_cv_lib_nghttp3_nghttp3_conn_client_new_versioned=yes
+else $as_nop
+  ac_cv_lib_nghttp3_nghttp3_conn_client_new_versioned=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nghttp3_nghttp3_conn_client_new" >&5
-$as_echo "$ac_cv_lib_nghttp3_nghttp3_conn_client_new" >&6; }
-if test "x$ac_cv_lib_nghttp3_nghttp3_conn_client_new" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_nghttp3_nghttp3_conn_client_new_versioned" >&5
+printf "%s\n" "$ac_cv_lib_nghttp3_nghttp3_conn_client_new_versioned" >&6; }
+if test "x$ac_cv_lib_nghttp3_nghttp3_conn_client_new_versioned" = xyes
+then :
 
-       for ac_header in nghttp3/nghttp3.h
+              for ac_header in nghttp3/nghttp3.h
 do :
-  ac_fn_c_check_header_mongrel "$LINENO" "nghttp3/nghttp3.h" "ac_cv_header_nghttp3_nghttp3_h" "$ac_includes_default"
-if test "x$ac_cv_header_nghttp3_nghttp3_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NGHTTP3_NGHTTP3_H 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "nghttp3/nghttp3.h" "ac_cv_header_nghttp3_nghttp3_h" "$ac_includes_default"
+if test "x$ac_cv_header_nghttp3_nghttp3_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NGHTTP3_NGHTTP3_H 1" >>confdefs.h
  curl_h3_msg="enabled (ngtcp2 + nghttp3)"
           NGHTTP3_ENABLED=1
 
-$as_echo "#define USE_NGHTTP3 1" >>confdefs.h
+printf "%s\n" "#define USE_NGHTTP3 1" >>confdefs.h
 
           USE_NGHTTP3=1
 
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_NGHTTP3"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_NGHTTP3 to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_NGHTTP3 to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_NGHTTP3 to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_NGHTTP3 to CURL_LIBRARY_PATH" >&6;}
           experimental="$experimental HTTP3"
 
 fi
 
 done
 
-
-else
+else $as_nop
           LDFLAGS=$CLEANLDFLAGS
         CPPFLAGS=$CLEANCPPFLAGS
         LIBS=$CLEANLIBS
@@ -30152,7 +31731,8 @@
 
 
 # Check whether --with-quiche was given.
-if test "${with_quiche+set}" = set; then :
+if test ${with_quiche+y}
+then :
   withval=$with_quiche; OPT_QUICHE=$withval
 fi
 
@@ -30171,6 +31751,11 @@
 esac
 
 if test X"$want_quiche" != Xno; then
+
+  if test "$NGHTTP3_ENABLED" = 1; then
+    as_fn_error $? "--with-quiche and --with-ngtcp2 are mutually exclusive" "$LINENO" 5
+  fi
+
     CLEANLDFLAGS="$LDFLAGS"
   CLEANCPPFLAGS="$CPPFLAGS"
   CLEANLIBS="$LIBS"
@@ -30182,11 +31767,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -30197,11 +31783,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -30213,11 +31803,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -30226,11 +31816,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -30241,11 +31832,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -30257,11 +31852,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -30269,8 +31864,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -30282,8 +31877,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for quiche options with pkg-config" >&5
-$as_echo_n "checking for quiche options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for quiche options with pkg-config" >&5
+printf %s "checking for quiche options with pkg-config... " >&6; }
             itexists=`
     if test -n "$want_quiche_path"; then
       PKG_CONFIG_LIBDIR="$want_quiche_path"
@@ -30293,11 +31888,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -30310,8 +31905,8 @@
     fi
 
       $PKGCONFIG --libs-only-l quiche`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -l is $LIB_QUICHE" >&5
-$as_echo "$as_me: -l is $LIB_QUICHE" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -l is $LIB_QUICHE" >&5
+printf "%s\n" "$as_me: -l is $LIB_QUICHE" >&6;}
 
     CPP_QUICHE=`
     if test -n "$want_quiche_path"; then
@@ -30319,8 +31914,8 @@
       export PKG_CONFIG_LIBDIR
     fi
        $PKGCONFIG --cflags-only-I quiche`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -I is $CPP_QUICHE" >&5
-$as_echo "$as_me: -I is $CPP_QUICHE" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -I is $CPP_QUICHE" >&5
+printf "%s\n" "$as_me: -I is $CPP_QUICHE" >&6;}
 
     LD_QUICHE=`
     if test -n "$want_quiche_path"; then
@@ -30329,8 +31924,8 @@
     fi
 
       $PKGCONFIG --libs-only-L quiche`
-    { $as_echo "$as_me:${as_lineno-$LINENO}: -L is $LD_QUICHE" >&5
-$as_echo "$as_me: -L is $LD_QUICHE" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: -L is $LD_QUICHE" >&5
+printf "%s\n" "$as_me: -L is $LD_QUICHE" >&6;}
 
     LDFLAGS="$LDFLAGS $LD_QUICHE"
     CPPFLAGS="$CPPFLAGS $CPP_QUICHE"
@@ -30339,11 +31934,12 @@
     if test "x$cross_compiling" != "xyes"; then
       DIR_QUICHE=`echo $LD_QUICHE | $SED -e 's/^-L//'`
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for quiche_connect in -lquiche" >&5
-$as_echo_n "checking for quiche_connect in -lquiche... " >&6; }
-if ${ac_cv_lib_quiche_quiche_connect+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for quiche_connect in -lquiche" >&5
+printf %s "checking for quiche_connect in -lquiche... " >&6; }
+if test ${ac_cv_lib_quiche_quiche_connect+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lquiche  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -30361,20 +31957,22 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_quiche_quiche_connect=yes
-else
+else $as_nop
   ac_cv_lib_quiche_quiche_connect=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_quiche_quiche_connect" >&5
-$as_echo "$ac_cv_lib_quiche_quiche_connect" >&6; }
-if test "x$ac_cv_lib_quiche_quiche_connect" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_quiche_quiche_connect" >&5
+printf "%s\n" "$ac_cv_lib_quiche_quiche_connect" >&6; }
+if test "x$ac_cv_lib_quiche_quiche_connect" = xyes
+then :
 
-       for ac_header in quiche.h
+              for ac_header in quiche.h
 do :
   ac_fn_c_check_header_compile "$LINENO" "quiche.h" "ac_cv_header_quiche_h" "
 $ac_includes_default
@@ -30382,41 +31980,35 @@
 
 
 "
-if test "x$ac_cv_header_quiche_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_QUICHE_H 1
-_ACEOF
+if test "x$ac_cv_header_quiche_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_QUICHE_H 1" >>confdefs.h
  experimental="$experimental HTTP3"
-          { $as_echo "$as_me:${as_lineno-$LINENO}: HTTP3 support is experimental" >&5
-$as_echo "$as_me: HTTP3 support is experimental" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: HTTP3 support is experimental" >&5
+printf "%s\n" "$as_me: HTTP3 support is experimental" >&6;}
           curl_h3_msg="enabled (quiche)"
           QUICHE_ENABLED=1
 
-$as_echo "#define USE_QUICHE 1" >>confdefs.h
+printf "%s\n" "#define USE_QUICHE 1" >>confdefs.h
 
           USE_QUICHE=1
 
-          for ac_func in quiche_conn_set_qlog_fd
-do :
-  ac_fn_c_check_func "$LINENO" "quiche_conn_set_qlog_fd" "ac_cv_func_quiche_conn_set_qlog_fd"
-if test "x$ac_cv_func_quiche_conn_set_qlog_fd" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_QUICHE_CONN_SET_QLOG_FD 1
-_ACEOF
+          ac_fn_c_check_func "$LINENO" "quiche_conn_set_qlog_fd" "ac_cv_func_quiche_conn_set_qlog_fd"
+if test "x$ac_cv_func_quiche_conn_set_qlog_fd" = xyes
+then :
+  printf "%s\n" "#define HAVE_QUICHE_CONN_SET_QLOG_FD 1" >>confdefs.h
 
 fi
-done
 
           CURL_LIBRARY_PATH="$CURL_LIBRARY_PATH:$DIR_QUICHE"
           export CURL_LIBRARY_PATH
-          { $as_echo "$as_me:${as_lineno-$LINENO}: Added $DIR_QUICHE to CURL_LIBRARY_PATH" >&5
-$as_echo "$as_me: Added $DIR_QUICHE to CURL_LIBRARY_PATH" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: Added $DIR_QUICHE to CURL_LIBRARY_PATH" >&5
+printf "%s\n" "$as_me: Added $DIR_QUICHE to CURL_LIBRARY_PATH" >&6;}
 fi
 
 done
 
-
-else
+else $as_nop
           as_fn_error $? "couldn't use quiche" "$LINENO" 5
 
 fi
@@ -30432,7 +32024,8 @@
 OPT_ZSH_FPATH=default
 
 # Check whether --with-zsh-functions-dir was given.
-if test "${with_zsh_functions_dir+set}" = set; then :
+if test ${with_zsh_functions_dir+y}
+then :
   withval=$with_zsh_functions_dir; OPT_ZSH_FPATH=$withval
 fi
 
@@ -30453,7 +32046,8 @@
 OPT_FISH_FPATH=default
 
 # Check whether --with-fish-functions-dir was given.
-if test "${with_fish_functions_dir+set}" = set; then :
+if test ${with_fish_functions_dir+y}
+then :
   withval=$with_fish_functions_dir; OPT_FISH_FPATH=$withval
 fi
 
@@ -30468,11 +32062,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -30483,11 +32078,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -30499,11 +32098,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -30512,11 +32111,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -30527,11 +32127,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -30543,11 +32147,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -30555,8 +32159,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -30568,8 +32172,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for fish options with pkg-config" >&5
-$as_echo_n "checking for fish options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for fish options with pkg-config" >&5
+printf %s "checking for fish options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -30579,11 +32183,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -30601,11 +32205,12 @@
 esac
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for malloc.h" >&5
-$as_echo_n "checking for malloc.h... " >&6; }
-if ${curl_cv_header_malloc_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for malloc.h" >&5
+printf %s "checking for malloc.h... " >&6; }
+if test ${curl_cv_header_malloc_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -30626,25 +32231,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_malloc_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_malloc_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_malloc_h" >&5
-$as_echo "$curl_cv_header_malloc_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_malloc_h" >&5
+printf "%s\n" "$curl_cv_header_malloc_h" >&6; }
   if test "$curl_cv_header_malloc_h" = "yes"; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MALLOC_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_MALLOC_H 1" >>confdefs.h
 
     #
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -30666,34 +32270,34 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_need_header_malloc_h="no"
 
-else
+else $as_nop
 
       curl_cv_need_header_malloc_h="yes"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     #
     case "$curl_cv_need_header_malloc_h" in
       yes)
 
-cat >>confdefs.h <<_ACEOF
-#define NEED_MALLOC_H 1
-_ACEOF
+printf "%s\n" "#define NEED_MALLOC_H 1" >>confdefs.h
 
         ;;
     esac
   fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for memory.h" >&5
-$as_echo_n "checking for memory.h... " >&6; }
-if ${curl_cv_header_memory_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for memory.h" >&5
+printf %s "checking for memory.h... " >&6; }
+if test ${curl_cv_header_memory_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -30714,25 +32318,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_memory_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_memory_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_memory_h" >&5
-$as_echo "$curl_cv_header_memory_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_memory_h" >&5
+printf "%s\n" "$curl_cv_header_memory_h" >&6; }
   if test "$curl_cv_header_memory_h" = "yes"; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MEMORY_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_MEMORY_H 1" >>confdefs.h
 
     #
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -30754,72 +32357,29 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_need_header_memory_h="no"
 
-else
+else $as_nop
 
       curl_cv_need_header_memory_h="yes"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     #
     case "$curl_cv_need_header_memory_h" in
       yes)
 
-cat >>confdefs.h <<_ACEOF
-#define NEED_MEMORY_H 1
-_ACEOF
+printf "%s\n" "#define NEED_MEMORY_H 1" >>confdefs.h
 
         ;;
     esac
   fi
 
 
-for ac_header in sys/types.h \
-        sys/time.h \
-        sys/select.h \
-        sys/socket.h \
-        sys/ioctl.h \
-        sys/uio.h \
-        assert.h \
-        unistd.h \
-        stdlib.h \
-        arpa/inet.h \
-        net/if.h \
-        netinet/in.h \
-	netinet/in6.h \
-        sys/un.h \
-        linux/tcp.h \
-        netinet/tcp.h \
-        netdb.h \
-        sys/sockio.h \
-        sys/stat.h \
-        sys/param.h \
-        termios.h \
-        termio.h \
-        fcntl.h \
-        alloca.h \
-        io.h \
-        pwd.h \
-        utime.h \
-        sys/utime.h \
-        sys/poll.h \
-        poll.h \
-        socket.h \
-        sys/resource.h \
-        libgen.h \
-        locale.h \
-        errno.h \
-        stdbool.h \
-        arpa/tftp.h \
-        sys/filio.h \
-        sys/wait.h \
-        setjmp.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "
+ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "
 #ifdef HAVE_SYS_TYPES_H
 #include <sys/types.h>
 #endif
@@ -30846,22 +32406,1268 @@
 
 
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_time_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TIME_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/select.h" "ac_cv_header_sys_select_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_select_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SELECT_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/ioctl.h" "ac_cv_header_sys_ioctl_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_ioctl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_IOCTL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/uio.h" "ac_cv_header_sys_uio_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_uio_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_UIO_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "assert.h" "ac_cv_header_assert_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_assert_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ASSERT_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_unistd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UNISTD_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_stdlib_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STDLIB_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "arpa/inet.h" "ac_cv_header_arpa_inet_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_arpa_inet_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ARPA_INET_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "net/if.h" "ac_cv_header_net_if_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_net_if_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NET_IF_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "netinet/in.h" "ac_cv_header_netinet_in_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_netinet_in_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NETINET_IN_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "netinet/in6.h" "ac_cv_header_netinet_in6_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_netinet_in6_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NETINET_IN6_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/un.h" "ac_cv_header_sys_un_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_un_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_UN_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "linux/tcp.h" "ac_cv_header_linux_tcp_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_linux_tcp_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LINUX_TCP_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "netinet/tcp.h" "ac_cv_header_netinet_tcp_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_netinet_tcp_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NETINET_TCP_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "netdb.h" "ac_cv_header_netdb_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_netdb_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NETDB_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/sockio.h" "ac_cv_header_sys_sockio_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_sockio_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKIO_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/stat.h" "ac_cv_header_sys_stat_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_stat_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_STAT_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/param.h" "ac_cv_header_sys_param_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_param_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_PARAM_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "termios.h" "ac_cv_header_termios_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_termios_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_TERMIOS_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "termio.h" "ac_cv_header_termio_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_termio_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_TERMIO_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "fcntl.h" "ac_cv_header_fcntl_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_fcntl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_FCNTL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "alloca.h" "ac_cv_header_alloca_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_alloca_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ALLOCA_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "io.h" "ac_cv_header_io_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_io_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_IO_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "pwd.h" "ac_cv_header_pwd_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_pwd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_PWD_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "utime.h" "ac_cv_header_utime_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_utime_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UTIME_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/utime.h" "ac_cv_header_sys_utime_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_utime_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_UTIME_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/poll.h" "ac_cv_header_sys_poll_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_poll_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_POLL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "poll.h" "ac_cv_header_poll_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_poll_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_POLL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "socket.h" "ac_cv_header_socket_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SOCKET_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/resource.h" "ac_cv_header_sys_resource_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_resource_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_RESOURCE_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_libgen_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBGEN_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "locale.h" "ac_cv_header_locale_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_locale_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LOCALE_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "errno.h" "ac_cv_header_errno_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_errno_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ERRNO_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "stdbool.h" "ac_cv_header_stdbool_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_stdbool_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STDBOOL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "arpa/tftp.h" "ac_cv_header_arpa_tftp_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_arpa_tftp_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ARPA_TFTP_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/filio.h" "ac_cv_header_sys_filio_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_filio_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_FILIO_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/wait.h" "ac_cv_header_sys_wait_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_sys_wait_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_WAIT_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "setjmp.h" "ac_cv_header_setjmp_h" "
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+#ifdef HAVE_SYS_TIME_H
+#include <sys/time.h>
+#endif
+#ifdef HAVE_SYS_SELECT_H
+#include <sys/select.h>
+#elif defined(HAVE_UNISTD_H)
+#include <unistd.h>
+#endif
+#ifdef HAVE_SYS_SOCKET_H
+#include <sys/socket.h>
+#endif
+#ifdef HAVE_NETINET_IN_H
+#include <netinet/in.h>
+#endif
+#ifdef HAVE_NETINET_IN6_H
+#include <netinet/in6.h>
+#endif
+#ifdef HAVE_SYS_UN_H
+#include <sys/un.h>
+#endif
+
+
+"
+if test "x$ac_cv_header_setjmp_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SETJMP_H 1" >>confdefs.h
 
 fi
 
-done
 
 
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
-$as_echo_n "checking for an ANSI C-conforming const... " >&6; }
-if ${ac_cv_c_const+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for an ANSI C-conforming const" >&5
+printf %s "checking for an ANSI C-conforming const... " >&6; }
+if test ${ac_cv_c_const+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -30878,7 +33684,7 @@
   /* NEC SVR4.0.2 mips cc rejects this.  */
   struct point {int x, y;};
   static struct point const zero = {0,0};
-  /* AIX XL C 1.02.0.0 rejects this.
+  /* IBM XL C 1.02.0.0 rejects this.
      It does not let you subtract one const X* pointer from another in
      an arm of an if-expression whose if-part is not a constant
      expression */
@@ -30906,7 +33712,7 @@
     iptr p = 0;
     ++p;
   }
-  { /* AIX XL C 1.02.0.0 rejects this sort of thing, saying
+  { /* IBM XL C 1.02.0.0 rejects this sort of thing, saying
        "k.c", line 2.27: 1506-025 (S) Operand must be a modifiable lvalue. */
     struct s { int j; const int *ap[3]; } bx;
     struct s *b = &bx; b->j = 5;
@@ -30922,27 +33728,29 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_c_const=yes
-else
+else $as_nop
   ac_cv_c_const=no
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
-$as_echo "$ac_cv_c_const" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_const" >&5
+printf "%s\n" "$ac_cv_c_const" >&6; }
 if test $ac_cv_c_const = no; then
 
-$as_echo "#define const /**/" >>confdefs.h
+printf "%s\n" "#define const /**/" >>confdefs.h
 
 fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler support of C99 variadic macro style" >&5
-$as_echo_n "checking for compiler support of C99 variadic macro style... " >&6; }
-if ${curl_cv_variadic_macros_c99+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for compiler support of C99 variadic macro style" >&5
+printf %s "checking for compiler support of C99 variadic macro style... " >&6; }
+if test ${curl_cv_variadic_macros_c99+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -30968,34 +33776,34 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_variadic_macros_c99="yes"
 
-else
+else $as_nop
 
       curl_cv_variadic_macros_c99="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_variadic_macros_c99" >&5
-$as_echo "$curl_cv_variadic_macros_c99" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_variadic_macros_c99" >&5
+printf "%s\n" "$curl_cv_variadic_macros_c99" >&6; }
   case "$curl_cv_variadic_macros_c99" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_VARIADIC_MACROS_C99 1
-_ACEOF
+printf "%s\n" "#define HAVE_VARIADIC_MACROS_C99 1" >>confdefs.h
 
       ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for compiler support of old gcc variadic macro style" >&5
-$as_echo_n "checking for compiler support of old gcc variadic macro style... " >&6; }
-if ${curl_cv_variadic_macros_gcc+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for compiler support of old gcc variadic macro style" >&5
+printf %s "checking for compiler support of old gcc variadic macro style... " >&6; }
+if test ${curl_cv_variadic_macros_gcc+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31021,61 +33829,66 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_variadic_macros_gcc="yes"
 
-else
+else $as_nop
 
       curl_cv_variadic_macros_gcc="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_variadic_macros_gcc" >&5
-$as_echo "$curl_cv_variadic_macros_gcc" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_variadic_macros_gcc" >&5
+printf "%s\n" "$curl_cv_variadic_macros_gcc" >&6; }
   case "$curl_cv_variadic_macros_gcc" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_VARIADIC_MACROS_GCC 1
-_ACEOF
+printf "%s\n" "#define HAVE_VARIADIC_MACROS_GCC 1" >>confdefs.h
 
       ;;
   esac
 
 ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default"
-if test "x$ac_cv_type_size_t" = xyes; then :
+if test "x$ac_cv_type_size_t" = xyes
+then :
 
-else
+else $as_nop
 
-cat >>confdefs.h <<_ACEOF
-#define size_t unsigned int
-_ACEOF
+printf "%s\n" "#define size_t unsigned int" >>confdefs.h
 
 fi
 
 
 
-      for ac_header in sys/types.h sys/time.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+    ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_time_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TIME_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
 fi
 
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
-$as_echo_n "checking for struct timeval... " >&6; }
-if ${curl_cv_struct_timeval+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for struct timeval" >&5
+printf %s "checking for struct timeval... " >&6; }
+if test ${curl_cv_struct_timeval+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31089,10 +33902,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #endif
 #ifdef HAVE_SYS_TYPES_H
@@ -31118,26 +33927,25 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_struct_timeval="yes"
 
-else
+else $as_nop
 
       curl_cv_struct_timeval="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_struct_timeval" >&5
-$as_echo "$curl_cv_struct_timeval" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_struct_timeval" >&5
+printf "%s\n" "$curl_cv_struct_timeval" >&6; }
   case "$curl_cv_struct_timeval" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRUCT_TIMEVAL 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRUCT_TIMEVAL 1" >>confdefs.h
 
       ;;
   esac
@@ -31146,18 +33954,19 @@
 
     if test "x$cross_compiling" != xyes; then
 
-            { $as_echo "$as_me:${as_lineno-$LINENO}: checking run-time libs availability" >&5
-$as_echo_n "checking run-time libs availability... " >&6; }
+            { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking run-time libs availability" >&5
+printf %s "checking run-time libs availability... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -31167,12 +33976,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: fine" >&5
-$as_echo "fine" >&6; }
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: fine" >&5
+printf "%s\n" "fine" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5
+printf "%s\n" "failed" >&6; }
     as_fn_error $? "one or more libs available at link-time are not available run-time. Libs used at link-time: $LIBS" "$LINENO" 5
 
 fi
@@ -31186,11 +33996,12 @@
       fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5
-$as_echo_n "checking size of size_t... " >&6; }
-if ${ac_cv_sizeof_size_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of size_t" >&5
+printf %s "checking size of size_t... " >&6; }
+if test ${ac_cv_sizeof_size_t+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31205,10 +34016,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_size_t=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_size_t != x ; then break; fi
 done
 
@@ -31217,19 +34029,18 @@
 if test x$ac_cv_sizeof_size_t = x ; then
   as_fn_error $? "cannot determine a size for size_t" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5
-$as_echo "$ac_cv_sizeof_size_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_size_t" >&5
+printf "%s\n" "$ac_cv_sizeof_size_t" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t
-_ACEOF
+printf "%s\n" "#define SIZEOF_SIZE_T $ac_cv_sizeof_size_t" >>confdefs.h
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
-$as_echo_n "checking size of long... " >&6; }
-if ${ac_cv_sizeof_long+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of long" >&5
+printf %s "checking size of long... " >&6; }
+if test ${ac_cv_sizeof_long+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31244,10 +34055,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_long=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_long != x ; then break; fi
 done
 
@@ -31256,19 +34068,18 @@
 if test x$ac_cv_sizeof_long = x ; then
   as_fn_error $? "cannot determine a size for long" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
-$as_echo "$ac_cv_sizeof_long" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_long" >&5
+printf "%s\n" "$ac_cv_sizeof_long" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_LONG $ac_cv_sizeof_long
-_ACEOF
+printf "%s\n" "#define SIZEOF_LONG $ac_cv_sizeof_long" >>confdefs.h
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
-$as_echo_n "checking size of int... " >&6; }
-if ${ac_cv_sizeof_int+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of int" >&5
+printf %s "checking size of int... " >&6; }
+if test ${ac_cv_sizeof_int+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31283,10 +34094,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_int=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_int != x ; then break; fi
 done
 
@@ -31295,19 +34107,18 @@
 if test x$ac_cv_sizeof_int = x ; then
   as_fn_error $? "cannot determine a size for int" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
-$as_echo "$ac_cv_sizeof_int" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_int" >&5
+printf "%s\n" "$ac_cv_sizeof_int" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_INT $ac_cv_sizeof_int
-_ACEOF
+printf "%s\n" "#define SIZEOF_INT $ac_cv_sizeof_int" >>confdefs.h
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
-$as_echo_n "checking size of short... " >&6; }
-if ${ac_cv_sizeof_short+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of short" >&5
+printf %s "checking size of short... " >&6; }
+if test ${ac_cv_sizeof_short+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31322,10 +34133,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_short=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_short != x ; then break; fi
 done
 
@@ -31334,19 +34146,18 @@
 if test x$ac_cv_sizeof_short = x ; then
   as_fn_error $? "cannot determine a size for short" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
-$as_echo "$ac_cv_sizeof_short" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_short" >&5
+printf "%s\n" "$ac_cv_sizeof_short" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_SHORT $ac_cv_sizeof_short
-_ACEOF
+printf "%s\n" "#define SIZEOF_SHORT $ac_cv_sizeof_short" >>confdefs.h
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of time_t" >&5
-$as_echo_n "checking size of time_t... " >&6; }
-if ${ac_cv_sizeof_time_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of time_t" >&5
+printf %s "checking size of time_t... " >&6; }
+if test ${ac_cv_sizeof_time_t+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31361,10 +34172,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_time_t=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_time_t != x ; then break; fi
 done
 
@@ -31373,19 +34185,18 @@
 if test x$ac_cv_sizeof_time_t = x ; then
   as_fn_error $? "cannot determine a size for time_t" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_time_t" >&5
-$as_echo "$ac_cv_sizeof_time_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_time_t" >&5
+printf "%s\n" "$ac_cv_sizeof_time_t" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_TIME_T $ac_cv_sizeof_time_t
-_ACEOF
+printf "%s\n" "#define SIZEOF_TIME_T $ac_cv_sizeof_time_t" >>confdefs.h
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of off_t" >&5
-$as_echo_n "checking size of off_t... " >&6; }
-if ${ac_cv_sizeof_off_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of off_t" >&5
+printf %s "checking size of off_t... " >&6; }
+if test ${ac_cv_sizeof_off_t+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31400,10 +34211,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_off_t=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_off_t != x ; then break; fi
 done
 
@@ -31412,22 +34224,21 @@
 if test x$ac_cv_sizeof_off_t = x ; then
   as_fn_error $? "cannot determine a size for off_t" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_off_t" >&5
-$as_echo "$ac_cv_sizeof_off_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_off_t" >&5
+printf "%s\n" "$ac_cv_sizeof_off_t" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_OFF_T $ac_cv_sizeof_off_t
-_ACEOF
+printf "%s\n" "#define SIZEOF_OFF_T $ac_cv_sizeof_off_t" >>confdefs.h
 
 
 
 o=$CPPFLAGS
 CPPFLAGS="-I$srcdir/include $CPPFLAGS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking size of curl_off_t" >&5
-$as_echo_n "checking size of curl_off_t... " >&6; }
-if ${ac_cv_sizeof_curl_off_t+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking size of curl_off_t" >&5
+printf %s "checking size of curl_off_t... " >&6; }
+if test ${ac_cv_sizeof_curl_off_t+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   for ac_size in 4 8 1 2 16  ; do # List sizes in rough order of prevalence.
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -31444,10 +34255,11 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
   ac_cv_sizeof_curl_off_t=$ac_size
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test x$ac_cv_sizeof_curl_off_t != x ; then break; fi
 done
 
@@ -31456,20 +34268,19 @@
 if test x$ac_cv_sizeof_curl_off_t = x ; then
   as_fn_error $? "cannot determine a size for curl_off_t" "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_curl_off_t" >&5
-$as_echo "$ac_cv_sizeof_curl_off_t" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_sizeof_curl_off_t" >&5
+printf "%s\n" "$ac_cv_sizeof_curl_off_t" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define SIZEOF_CURL_OFF_T $ac_cv_sizeof_curl_off_t
-_ACEOF
+printf "%s\n" "#define SIZEOF_CURL_OFF_T $ac_cv_sizeof_curl_off_t" >>confdefs.h
 
 
 CPPFLAGS=$o
 
 ac_fn_c_check_type "$LINENO" "long long" "ac_cv_type_long_long" "$ac_includes_default"
-if test "x$ac_cv_type_long_long" = xyes; then :
+if test "x$ac_cv_type_long_long" = xyes
+then :
 
-$as_echo "#define HAVE_LONGLONG 1" >>confdefs.h
+printf "%s\n" "#define HAVE_LONGLONG 1" >>confdefs.h
 
    longlong="yes"
 
@@ -31477,8 +34288,8 @@
 
 
 if test "xyes" = "x$longlong"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if numberLL works" >&5
-$as_echo_n "checking if numberLL works... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if numberLL works" >&5
+printf %s "checking if numberLL works... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -31494,31 +34305,33 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define HAVE_LL 1" >>confdefs.h
+printf "%s\n" "#define HAVE_LL 1" >>confdefs.h
 
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 fi
 
 
 # check for ssize_t
 ac_fn_c_check_type "$LINENO" "ssize_t" "ac_cv_type_ssize_t" "$ac_includes_default"
-if test "x$ac_cv_type_ssize_t" = xyes; then :
+if test "x$ac_cv_type_ssize_t" = xyes
+then :
 
-else
+else $as_nop
 
-$as_echo "#define ssize_t int" >>confdefs.h
+printf "%s\n" "#define ssize_t int" >>confdefs.h
 
 fi
 
@@ -31533,10 +34346,11 @@
 #endif
 
 "
-if test "x$ac_cv_type_bool" = xyes; then :
+if test "x$ac_cv_type_bool" = xyes
+then :
 
 
-$as_echo "#define HAVE_BOOL_T 1" >>confdefs.h
+printf "%s\n" "#define HAVE_BOOL_T 1" >>confdefs.h
 
 
 fi
@@ -31549,11 +34363,12 @@
 #endif
 
 "
-if test "x$ac_cv_type_sa_family_t" = xyes; then :
+if test "x$ac_cv_type_sa_family_t" = xyes
+then :
 
-$as_echo "#define CURL_SA_FAMILY_T sa_family_t" >>confdefs.h
+printf "%s\n" "#define CURL_SA_FAMILY_T sa_family_t" >>confdefs.h
 
-else
+else $as_nop
 
    # The windows name?
    ac_fn_c_check_type "$LINENO" "ADDRESS_FAMILY" "ac_cv_type_ADDRESS_FAMILY" "
@@ -31562,13 +34377,14 @@
 #endif
 
 "
-if test "x$ac_cv_type_ADDRESS_FAMILY" = xyes; then :
+if test "x$ac_cv_type_ADDRESS_FAMILY" = xyes
+then :
 
-$as_echo "#define CURL_SA_FAMILY_T ADDRESS_FAMILY" >>confdefs.h
+printf "%s\n" "#define CURL_SA_FAMILY_T ADDRESS_FAMILY" >>confdefs.h
 
-else
+else $as_nop
 
-$as_echo "#define CURL_SA_FAMILY_T unsigned short" >>confdefs.h
+printf "%s\n" "#define CURL_SA_FAMILY_T unsigned short" >>confdefs.h
 
 fi
 
@@ -31586,26 +34402,28 @@
 #endif
 
 "
-if test "x$ac_cv_type_suseconds_t" = xyes; then :
+if test "x$ac_cv_type_suseconds_t" = xyes
+then :
 
 
-$as_echo "#define HAVE_SUSECONDS_T 1" >>confdefs.h
+printf "%s\n" "#define HAVE_SUSECONDS_T 1" >>confdefs.h
 
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking if time_t is unsigned" >&5
-$as_echo_n "checking if time_t is unsigned... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if time_t is unsigned" >&5
+printf %s "checking if time_t is unsigned... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+   if test "$cross_compiling" = yes
+then :
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -31615,16 +34433,17 @@
   return (t > 0);
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define HAVE_TIME_T_UNSIGNED 1" >>confdefs.h
+printf "%s\n" "#define HAVE_TIME_T_UNSIGNED 1" >>confdefs.h
 
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
 rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
@@ -31647,19 +34466,27 @@
 #  include <sys/poll.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h poll.h sys/poll.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_poll
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_poll
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "poll.h" "ac_cv_header_poll_h" "$curl_includes_poll
+"
+if test "x$ac_cv_header_poll_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_POLL_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/poll.h" "ac_cv_header_sys_poll_h" "$curl_includes_poll
+"
+if test "x$ac_cv_header_sys_poll_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_POLL_H 1" >>confdefs.h
+
+fi
 
 
 
@@ -31686,16 +34513,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
     tst_poll_events_macro_defined="yes"
 
-else
+else $as_nop
 
     tst_poll_events_macro_defined="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   #
   if test "$tst_poll_events_macro_defined" = "yes"; then
     if test "x$ac_cv_header_sys_poll_h" = "xyes"; then
@@ -31719,10 +34547,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_SYS_TYPES_H
@@ -31740,15 +34564,17 @@
 #endif
 
 "
-if test "x$ac_cv_type_in_addr_t" = xyes; then :
+if test "x$ac_cv_type_in_addr_t" = xyes
+then :
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for in_addr_t equivalent" >&5
-$as_echo_n "checking for in_addr_t equivalent... " >&6; }
-if ${curl_cv_in_addr_t_equiv+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for in_addr_t equivalent" >&5
+printf %s "checking for in_addr_t equivalent... " >&6; }
+if test ${curl_cv_in_addr_t_equiv+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
       curl_cv_in_addr_t_equiv="unknown"
       for t in "unsigned long" int size_t unsigned long; do
@@ -31765,10 +34591,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_SYS_TYPES_H
@@ -31795,28 +34617,27 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
             curl_cv_in_addr_t_equiv="$t"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
         fi
       done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_in_addr_t_equiv" >&5
-$as_echo "$curl_cv_in_addr_t_equiv" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_in_addr_t_equiv" >&5
+printf "%s\n" "$curl_cv_in_addr_t_equiv" >&6; }
     case "$curl_cv_in_addr_t_equiv" in
       unknown)
         as_fn_error $? "Cannot find a type to use in place of in_addr_t" "$LINENO" 5
         ;;
       *)
 
-cat >>confdefs.h <<_ACEOF
-#define in_addr_t $curl_cv_in_addr_t_equiv
-_ACEOF
+printf "%s\n" "#define in_addr_t $curl_cv_in_addr_t_equiv" >>confdefs.h
 
         ;;
     esac
@@ -31852,106 +34673,32 @@
 #endif
 
 "
-if test "x$ac_cv_type_struct_sockaddr_storage" = xyes; then :
+if test "x$ac_cv_type_struct_sockaddr_storage" = xyes
+then :
 
-$as_echo "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h
+printf "%s\n" "#define HAVE_STRUCT_SOCKADDR_STORAGE 1" >>confdefs.h
 
 fi
 
 
 
 
-  for ac_header in signal.h
-do :
-  ac_fn_c_check_header_mongrel "$LINENO" "signal.h" "ac_cv_header_signal_h" "$ac_includes_default"
-if test "x$ac_cv_header_signal_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGNAL_H 1
-_ACEOF
+    ac_fn_c_check_header_compile "$LINENO" "sys/select.h" "ac_cv_header_sys_select_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_select_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SELECT_H 1" >>confdefs.h
 
 fi
-
-done
-
-  ac_fn_c_check_type "$LINENO" "sig_atomic_t" "ac_cv_type_sig_atomic_t" "
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-"
-if test "x$ac_cv_type_sig_atomic_t" = xyes; then :
-
-
-$as_echo "#define HAVE_SIG_ATOMIC_T 1" >>confdefs.h
-
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
 fi
 
-  case "$ac_cv_type_sig_atomic_t" in
-    yes)
-      #
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sig_atomic_t is already defined as volatile" >&5
-$as_echo_n "checking if sig_atomic_t is already defined as volatile... " >&6; }
-      cat confdefs.h - <<_ACEOF >conftest.$ac_ext
-/* end confdefs.h.  */
-
-
-#ifdef HAVE_SIGNAL_H
-#include <signal.h>
-#endif
-
-int main (void)
-{
-
-          static volatile sig_atomic_t dummy = 0;
-
- ;
- return 0;
-}
-
-_ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-        curl_cv_sig_atomic_t_volatile="no"
-
-else
-
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
-        curl_cv_sig_atomic_t_volatile="yes"
-
-fi
-rm -f core conftest.err conftest.$ac_objext \
-    conftest$ac_exeext conftest.$ac_ext
-      #
-      if test "$curl_cv_sig_atomic_t_volatile" = "yes"; then
-
-$as_echo "#define HAVE_SIG_ATOMIC_T_VOLATILE 1" >>confdefs.h
-
-      fi
-      ;;
-  esac
-
-
-
-    for ac_header in sys/select.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
-
-fi
-
-done
-
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for select" >&5
-$as_echo_n "checking for select... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for select" >&5
+printf %s "checking for select... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -31964,10 +34711,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #endif
 #ifdef HAVE_SYS_TYPES_H
@@ -32003,28 +34746,30 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     curl_cv_select="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_select="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$curl_cv_select" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for select" >&5
-$as_echo_n "checking types of args and return type for select... " >&6; }
-if ${curl_cv_func_select_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking types of args and return type for select" >&5
+printf %s "checking types of args and return type for select... " >&6; }
+if test ${curl_cv_func_select_args+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
       curl_cv_func_select_args="unknown"
       for sel_retv in 'int' 'ssize_t'; do
@@ -32044,10 +34789,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #define SELECTCALLCONV PASCAL
 #endif
@@ -32103,12 +34844,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
                   curl_cv_func_select_args="$sel_arg1,$sel_arg234,$sel_arg5,$sel_retv"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
               fi
             done
           done
@@ -32116,13 +34858,13 @@
       done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_select_args" >&5
-$as_echo "$curl_cv_func_select_args" >&6; } # AC-CACHE-CHECK
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_select_args" >&5
+printf "%s\n" "$curl_cv_func_select_args" >&6; } # AC-CACHE-CHECK
     if test "$curl_cv_func_select_args" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find proper types to use for select args" >&5
-$as_echo "$as_me: WARNING: Cannot find proper types to use for select args" >&2;}
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_SELECT will not be defined" >&5
-$as_echo "$as_me: WARNING: HAVE_SELECT will not be defined" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Cannot find proper types to use for select args" >&5
+printf "%s\n" "$as_me: WARNING: Cannot find proper types to use for select args" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: HAVE_SELECT will not be defined" >&5
+printf "%s\n" "$as_me: WARNING: HAVE_SELECT will not be defined" >&2;}
     else
       select_prev_IFS=$IFS; IFS=','
       set dummy `echo "$curl_cv_func_select_args" | sed 's/\*/\*/g'`
@@ -32132,19 +34874,13 @@
       sel_qual_type_arg5=$3
       #
 
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_ARG1 $1
-_ACEOF
+printf "%s\n" "#define SELECT_TYPE_ARG1 $1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_ARG234 $2
-_ACEOF
+printf "%s\n" "#define SELECT_TYPE_ARG234 $2" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_RETV $4
-_ACEOF
+printf "%s\n" "#define SELECT_TYPE_RETV $4" >>confdefs.h
 
       #
       prev_sh_opts=$-
@@ -32169,14 +34905,10 @@
       esac
       #
 
-cat >>confdefs.h <<_ACEOF
-#define SELECT_QUAL_ARG5 $sel_qual_arg5
-_ACEOF
+printf "%s\n" "#define SELECT_QUAL_ARG5 $sel_qual_arg5" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define SELECT_TYPE_ARG5 $sel_type_arg5
-_ACEOF
+printf "%s\n" "#define SELECT_TYPE_ARG5 $sel_type_arg5" >>confdefs.h
 
       #
       case $prev_sh_opts in
@@ -32188,9 +34920,7 @@
       esac
       #
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SELECT 1
-_ACEOF
+printf "%s\n" "#define HAVE_SELECT 1" >>confdefs.h
 
       curl_cv_func_select="yes"
     fi
@@ -32198,22 +34928,22 @@
 
 
 
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+    ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
 fi
 
-done
-
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for recv" >&5
-$as_echo_n "checking for recv... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for recv" >&5
+printf %s "checking for recv... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -32226,10 +34956,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_PROTO_BSDSOCKET_H
@@ -32254,28 +34980,30 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     curl_cv_recv="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_recv="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$curl_cv_recv" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for recv" >&5
-$as_echo_n "checking types of args and return type for recv... " >&6; }
-if ${curl_cv_func_recv_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking types of args and return type for recv" >&5
+printf %s "checking types of args and return type for recv... " >&6; }
+if test ${curl_cv_func_recv_args+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
       curl_cv_func_recv_args="unknown"
       for recv_retv in 'int' 'ssize_t'; do
@@ -32296,10 +35024,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #define RECVCALLCONV PASCAL
 #else
@@ -32334,12 +35058,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
                     curl_cv_func_recv_args="$recv_arg1,$recv_arg2,$recv_arg3,$recv_arg4,$recv_retv"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
                 fi
               done
             done
@@ -32348,8 +35073,8 @@
       done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_recv_args" >&5
-$as_echo "$curl_cv_func_recv_args" >&6; } # AC-CACHE-CHECK
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_recv_args" >&5
+printf "%s\n" "$curl_cv_func_recv_args" >&6; } # AC-CACHE-CHECK
     if test "$curl_cv_func_recv_args" = "unknown"; then
       as_fn_error $? "Cannot find proper types to use for recv args" "$LINENO" 5
     else
@@ -32359,35 +35084,23 @@
       shift
       #
 
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG1 $1
-_ACEOF
+printf "%s\n" "#define RECV_TYPE_ARG1 $1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG2 $2
-_ACEOF
+printf "%s\n" "#define RECV_TYPE_ARG2 $2" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG3 $3
-_ACEOF
+printf "%s\n" "#define RECV_TYPE_ARG3 $3" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_ARG4 $4
-_ACEOF
+printf "%s\n" "#define RECV_TYPE_ARG4 $4" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define RECV_TYPE_RETV $5
-_ACEOF
+printf "%s\n" "#define RECV_TYPE_RETV $5" >>confdefs.h
 
       #
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_RECV 1
-_ACEOF
+printf "%s\n" "#define HAVE_RECV 1" >>confdefs.h
 
       curl_cv_func_recv="yes"
     fi
@@ -32396,22 +35109,22 @@
   fi
 
 
-      for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+    ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
 fi
 
-done
-
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for send" >&5
-$as_echo_n "checking for send... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for send" >&5
+printf %s "checking for send... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -32424,10 +35137,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_PROTO_BSDSOCKET_H
@@ -32452,28 +35161,30 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     curl_cv_send="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_send="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$curl_cv_send" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking types of args and return type for send" >&5
-$as_echo_n "checking types of args and return type for send... " >&6; }
-if ${curl_cv_func_send_args+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking types of args and return type for send" >&5
+printf %s "checking types of args and return type for send... " >&6; }
+if test ${curl_cv_func_send_args+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
       curl_cv_func_send_args="unknown"
       for send_retv in 'int' 'ssize_t'; do
@@ -32494,10 +35205,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #define SENDCALLCONV PASCAL
 #else
@@ -32531,12 +35238,13 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
                     curl_cv_func_send_args="$send_arg1,$send_arg2,$send_arg3,$send_arg4,$send_retv"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
                 fi
               done
             done
@@ -32545,8 +35253,8 @@
       done
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_send_args" >&5
-$as_echo "$curl_cv_func_send_args" >&6; } # AC-CACHE-CHECK
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_func_send_args" >&5
+printf "%s\n" "$curl_cv_func_send_args" >&6; } # AC-CACHE-CHECK
     if test "$curl_cv_func_send_args" = "unknown"; then
       as_fn_error $? "Cannot find proper types to use for send args" "$LINENO" 5
     else
@@ -32558,24 +35266,16 @@
       send_qual_type_arg2=$2
       #
 
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG1 $1
-_ACEOF
+printf "%s\n" "#define SEND_TYPE_ARG1 $1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG3 $3
-_ACEOF
+printf "%s\n" "#define SEND_TYPE_ARG3 $3" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG4 $4
-_ACEOF
+printf "%s\n" "#define SEND_TYPE_ARG4 $4" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_RETV $5
-_ACEOF
+printf "%s\n" "#define SEND_TYPE_RETV $5" >>confdefs.h
 
       #
       prev_sh_opts=$-
@@ -32600,14 +35300,10 @@
       esac
       #
 
-cat >>confdefs.h <<_ACEOF
-#define SEND_QUAL_ARG2 $send_qual_arg2
-_ACEOF
+printf "%s\n" "#define SEND_QUAL_ARG2 $send_qual_arg2" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define SEND_TYPE_ARG2 $send_type_arg2
-_ACEOF
+printf "%s\n" "#define SEND_TYPE_ARG2 $send_type_arg2" >>confdefs.h
 
       #
       case $prev_sh_opts in
@@ -32619,9 +35315,7 @@
       esac
       #
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SEND 1
-_ACEOF
+printf "%s\n" "#define HAVE_SEND 1" >>confdefs.h
 
       curl_cv_func_send="yes"
     fi
@@ -32630,24 +35324,25 @@
   fi
 
 
-  for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_mongrel "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default"
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$ac_includes_default"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
 fi
 
-done
-
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for MSG_NOSIGNAL" >&5
-$as_echo_n "checking for MSG_NOSIGNAL... " >&6; }
-if ${curl_cv_msg_nosignal+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for MSG_NOSIGNAL" >&5
+printf %s "checking for MSG_NOSIGNAL... " >&6; }
+if test ${curl_cv_msg_nosignal+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -32661,10 +35356,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #else
 #ifdef HAVE_PROTO_BSDSOCKET_H
@@ -32689,26 +35380,25 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_msg_nosignal="yes"
 
-else
+else $as_nop
 
       curl_cv_msg_nosignal="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_msg_nosignal" >&5
-$as_echo "$curl_cv_msg_nosignal" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_msg_nosignal" >&5
+printf "%s\n" "$curl_cv_msg_nosignal" >&6; }
   case "$curl_cv_msg_nosignal" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MSG_NOSIGNAL 1
-_ACEOF
+printf "%s\n" "#define HAVE_MSG_NOSIGNAL 1" >>confdefs.h
 
       ;;
   esac
@@ -32724,19 +35414,20 @@
 #  include <unistd.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h unistd.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_unistd
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_unistd
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "$curl_includes_unistd
+"
+if test "x$ac_cv_header_unistd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UNISTD_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -32746,8 +35437,8 @@
   tst_compi_alarm="unknown"
   tst_allow_alarm="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm can be linked" >&5
-$as_echo_n "checking if alarm can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if alarm can be linked" >&5
+printf %s "checking if alarm can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -32775,25 +35466,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_alarm="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_alarm="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm is prototyped" >&5
-$as_echo_n "checking if alarm is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if alarm is prototyped" >&5
+printf %s "checking if alarm is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -32801,26 +35493,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "alarm" >/dev/null 2>&1; then :
+  $EGREP "alarm" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_alarm="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_alarm="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm is compilable" >&5
-$as_echo_n "checking if alarm is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if alarm is compilable" >&5
+printf %s "checking if alarm is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -32838,53 +35531,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_alarm="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_alarm="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm usage allowed" >&5
-$as_echo_n "checking if alarm usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if alarm usage allowed" >&5
+printf %s "checking if alarm usage allowed... " >&6; }
     if test "x$curl_disallow_alarm" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_alarm="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_alarm="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if alarm might be used" >&5
-$as_echo_n "checking if alarm might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if alarm might be used" >&5
+printf %s "checking if alarm might be used... " >&6; }
   if test "$tst_links_alarm" = "yes" &&
      test "$tst_proto_alarm" = "yes" &&
      test "$tst_compi_alarm" = "yes" &&
      test "$tst_allow_alarm" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_ALARM 1
-_ACEOF
+printf "%s\n" "#define HAVE_ALARM 1" >>confdefs.h
 
     curl_cv_func_alarm="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_alarm="no"
   fi
 
@@ -32901,19 +35593,27 @@
 #  include <strings.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h string.h strings.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_string
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_string
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "string.h" "ac_cv_header_string_h" "$curl_includes_string
+"
+if test "x$ac_cv_header_string_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRING_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "strings.h" "ac_cv_header_strings_h" "$curl_includes_string
+"
+if test "x$ac_cv_header_strings_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STRINGS_H 1" >>confdefs.h
+
+fi
 
 
 
@@ -32926,19 +35626,20 @@
 #  include <libgen.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h libgen.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_libgen
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_libgen
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "libgen.h" "ac_cv_header_libgen_h" "$curl_includes_libgen
+"
+if test "x$ac_cv_header_libgen_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_LIBGEN_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -32948,8 +35649,8 @@
   tst_compi_basename="unknown"
   tst_allow_basename="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename can be linked" >&5
-$as_echo_n "checking if basename can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if basename can be linked" >&5
+printf %s "checking if basename can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -32977,25 +35678,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_basename="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_basename="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename is prototyped" >&5
-$as_echo_n "checking if basename is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if basename is prototyped" >&5
+printf %s "checking if basename is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33005,26 +35707,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "basename" >/dev/null 2>&1; then :
+  $EGREP "basename" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_basename="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_basename="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename is compilable" >&5
-$as_echo_n "checking if basename is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if basename is compilable" >&5
+printf %s "checking if basename is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33044,53 +35747,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_basename="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_basename="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename usage allowed" >&5
-$as_echo_n "checking if basename usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if basename usage allowed" >&5
+printf %s "checking if basename usage allowed... " >&6; }
     if test "x$curl_disallow_basename" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_basename="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_basename="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if basename might be used" >&5
-$as_echo_n "checking if basename might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if basename might be used" >&5
+printf %s "checking if basename might be used... " >&6; }
   if test "$tst_links_basename" = "yes" &&
      test "$tst_proto_basename" = "yes" &&
      test "$tst_compi_basename" = "yes" &&
      test "$tst_allow_basename" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_BASENAME 1
-_ACEOF
+printf "%s\n" "#define HAVE_BASENAME 1" >>confdefs.h
 
     curl_cv_func_basename="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_basename="no"
   fi
 
@@ -33104,19 +35806,20 @@
 #  include <socket.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_socket
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_socket
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "socket.h" "ac_cv_header_socket_h" "$curl_includes_socket
+"
+if test "x$ac_cv_header_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SOCKET_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -33126,8 +35829,8 @@
   tst_compi_closesocket="unknown"
   tst_allow_closesocket="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket can be linked" >&5
-$as_echo_n "checking if closesocket can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if closesocket can be linked" >&5
+printf %s "checking if closesocket can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33147,25 +35850,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_closesocket="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_closesocket="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket is prototyped" >&5
-$as_echo_n "checking if closesocket is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if closesocket is prototyped" >&5
+printf %s "checking if closesocket is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33175,26 +35879,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "closesocket" >/dev/null 2>&1; then :
+  $EGREP "closesocket" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_closesocket="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_closesocket="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket is compilable" >&5
-$as_echo_n "checking if closesocket is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if closesocket is compilable" >&5
+printf %s "checking if closesocket is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33214,53 +35919,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_closesocket="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_closesocket="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket usage allowed" >&5
-$as_echo_n "checking if closesocket usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if closesocket usage allowed" >&5
+printf %s "checking if closesocket usage allowed... " >&6; }
     if test "x$curl_disallow_closesocket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_closesocket="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_closesocket="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if closesocket might be used" >&5
-$as_echo_n "checking if closesocket might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if closesocket might be used" >&5
+printf %s "checking if closesocket might be used... " >&6; }
   if test "$tst_links_closesocket" = "yes" &&
      test "$tst_proto_closesocket" = "yes" &&
      test "$tst_compi_closesocket" = "yes" &&
      test "$tst_allow_closesocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOSESOCKET 1
-_ACEOF
+printf "%s\n" "#define HAVE_CLOSESOCKET 1" >>confdefs.h
 
     curl_cv_func_closesocket="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_closesocket="no"
   fi
 
@@ -33274,19 +35978,20 @@
 #  include <sys/socket.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h sys/socket.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_sys_socket
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_sys_socket
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$curl_includes_sys_socket
+"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -33296,8 +36001,8 @@
   tst_compi_closesocket_camel="unknown"
   tst_allow_closesocket_camel="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket can be linked" >&5
-$as_echo_n "checking if CloseSocket can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if CloseSocket can be linked" >&5
+printf %s "checking if CloseSocket can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33315,25 +36020,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_closesocket_camel="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_closesocket_camel="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is prototyped" >&5
-$as_echo_n "checking if CloseSocket is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is prototyped" >&5
+printf %s "checking if CloseSocket is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33341,26 +36047,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "CloseSocket" >/dev/null 2>&1; then :
+  $EGREP "CloseSocket" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_closesocket_camel="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_closesocket_camel="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is compilable" >&5
-$as_echo_n "checking if CloseSocket is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if CloseSocket is compilable" >&5
+printf %s "checking if CloseSocket is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33378,53 +36085,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_closesocket_camel="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_closesocket_camel="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket usage allowed" >&5
-$as_echo_n "checking if CloseSocket usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if CloseSocket usage allowed" >&5
+printf %s "checking if CloseSocket usage allowed... " >&6; }
     if test "x$curl_disallow_closesocket_camel" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_closesocket_camel="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_closesocket_camel="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if CloseSocket might be used" >&5
-$as_echo_n "checking if CloseSocket might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if CloseSocket might be used" >&5
+printf %s "checking if CloseSocket might be used... " >&6; }
   if test "$tst_links_closesocket_camel" = "yes" &&
      test "$tst_proto_closesocket_camel" = "yes" &&
      test "$tst_compi_closesocket_camel" = "yes" &&
      test "$tst_allow_closesocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CLOSESOCKET_CAMEL 1
-_ACEOF
+printf "%s\n" "#define HAVE_CLOSESOCKET_CAMEL 1" >>confdefs.h
 
     curl_cv_func_closesocket_camel="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_closesocket_camel="no"
   fi
 
@@ -33435,8 +36141,8 @@
   tst_compi_connect="unknown"
   tst_allow_connect="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect can be linked" >&5
-$as_echo_n "checking if connect can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if connect can be linked" >&5
+printf %s "checking if connect can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33457,25 +36163,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_connect="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_connect="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect is prototyped" >&5
-$as_echo_n "checking if connect is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if connect is prototyped" >&5
+printf %s "checking if connect is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33486,26 +36193,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "connect" >/dev/null 2>&1; then :
+  $EGREP "connect" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_connect="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_connect="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect is compilable" >&5
-$as_echo_n "checking if connect is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if connect is compilable" >&5
+printf %s "checking if connect is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33526,53 +36234,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_connect="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_connect="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect usage allowed" >&5
-$as_echo_n "checking if connect usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if connect usage allowed" >&5
+printf %s "checking if connect usage allowed... " >&6; }
     if test "x$curl_disallow_connect" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_connect="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_connect="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if connect might be used" >&5
-$as_echo_n "checking if connect might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if connect might be used" >&5
+printf %s "checking if connect might be used... " >&6; }
   if test "$tst_links_connect" = "yes" &&
      test "$tst_proto_connect" = "yes" &&
      test "$tst_compi_connect" = "yes" &&
      test "$tst_allow_connect" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_CONNECT 1
-_ACEOF
+printf "%s\n" "#define HAVE_CONNECT 1" >>confdefs.h
 
     curl_cv_func_connect="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_connect="no"
   fi
 
@@ -33589,19 +36296,27 @@
 #  include <fcntl.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h unistd.h fcntl.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_fcntl
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_fcntl
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "$curl_includes_fcntl
+"
+if test "x$ac_cv_header_unistd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UNISTD_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "fcntl.h" "ac_cv_header_fcntl_h" "$curl_includes_fcntl
+"
+if test "x$ac_cv_header_fcntl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_FCNTL_H 1" >>confdefs.h
+
+fi
 
 
 
@@ -33611,8 +36326,8 @@
   tst_compi_fcntl="unknown"
   tst_allow_fcntl="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl can be linked" >&5
-$as_echo_n "checking if fcntl can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl can be linked" >&5
+printf %s "checking if fcntl can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33640,25 +36355,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_fcntl="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_fcntl="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl is prototyped" >&5
-$as_echo_n "checking if fcntl is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl is prototyped" >&5
+printf %s "checking if fcntl is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33666,26 +36382,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "fcntl" >/dev/null 2>&1; then :
+  $EGREP "fcntl" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_fcntl="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_fcntl="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl is compilable" >&5
-$as_echo_n "checking if fcntl is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl is compilable" >&5
+printf %s "checking if fcntl is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33703,48 +36420,47 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_fcntl="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_fcntl="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl usage allowed" >&5
-$as_echo_n "checking if fcntl usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl usage allowed" >&5
+printf %s "checking if fcntl usage allowed... " >&6; }
     if test "x$curl_disallow_fcntl" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_fcntl="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_fcntl="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl might be used" >&5
-$as_echo_n "checking if fcntl might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl might be used" >&5
+printf %s "checking if fcntl might be used... " >&6; }
   if test "$tst_links_fcntl" = "yes" &&
      test "$tst_proto_fcntl" = "yes" &&
      test "$tst_compi_fcntl" = "yes" &&
      test "$tst_allow_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FCNTL 1
-_ACEOF
+printf "%s\n" "#define HAVE_FCNTL 1" >>confdefs.h
 
     curl_cv_func_fcntl="yes"
 
@@ -33759,8 +36475,8 @@
   esac
   #
   if test "$curl_cv_func_fcntl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK is compilable" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK is compilable" >&5
+printf %s "checking if fcntl O_NONBLOCK is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -33779,57 +36495,56 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_fcntl_o_nonblock="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_fcntl_o_nonblock="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_fcntl_o_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK usage allowed" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK usage allowed" >&5
+printf %s "checking if fcntl O_NONBLOCK usage allowed... " >&6; }
     if test "x$curl_disallow_fcntl_o_nonblock" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_fcntl_o_nonblock="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_fcntl_o_nonblock="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK might be used" >&5
-$as_echo_n "checking if fcntl O_NONBLOCK might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fcntl O_NONBLOCK might be used" >&5
+printf %s "checking if fcntl O_NONBLOCK might be used... " >&6; }
   if test "$tst_compi_fcntl_o_nonblock" = "yes" &&
      test "$tst_allow_fcntl_o_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FCNTL_O_NONBLOCK 1
-_ACEOF
+printf "%s\n" "#define HAVE_FCNTL_O_NONBLOCK 1" >>confdefs.h
 
     curl_cv_func_fcntl_o_nonblock="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_fcntl_o_nonblock="no"
   fi
 
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_fcntl="no"
   fi
 
@@ -33850,11 +36565,12 @@
 #endif
 /* includes end */"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
-$as_echo_n "checking for windows.h... " >&6; }
-if ${curl_cv_header_windows_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for windows.h" >&5
+printf %s "checking for windows.h... " >&6; }
+if test ${curl_cv_header_windows_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -33880,36 +36596,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_windows_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_windows_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_windows_h" >&5
-$as_echo "$curl_cv_header_windows_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_windows_h" >&5
+printf "%s\n" "$curl_cv_header_windows_h" >&6; }
   case "$curl_cv_header_windows_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINDOWS_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINDOWS_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
-$as_echo_n "checking for winsock2.h... " >&6; }
-if ${curl_cv_header_winsock2_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for winsock2.h" >&5
+printf %s "checking for winsock2.h... " >&6; }
+if test ${curl_cv_header_winsock2_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -33936,36 +36652,36 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_winsock2_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_winsock2_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock2_h" >&5
-$as_echo "$curl_cv_header_winsock2_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_winsock2_h" >&5
+printf "%s\n" "$curl_cv_header_winsock2_h" >&6; }
   case "$curl_cv_header_winsock2_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WINSOCK2_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WINSOCK2_H 1" >>confdefs.h
 
       ;;
   esac
 
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
-$as_echo_n "checking for ws2tcpip.h... " >&6; }
-if ${curl_cv_header_ws2tcpip_h+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for ws2tcpip.h" >&5
+printf %s "checking for ws2tcpip.h... " >&6; }
+if test ${curl_cv_header_ws2tcpip_h+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
 
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
@@ -33993,26 +36709,25 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
       curl_cv_header_ws2tcpip_h="yes"
 
-else
+else $as_nop
 
       curl_cv_header_ws2tcpip_h="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
 
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ws2tcpip_h" >&5
-$as_echo "$curl_cv_header_ws2tcpip_h" >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $curl_cv_header_ws2tcpip_h" >&5
+printf "%s\n" "$curl_cv_header_ws2tcpip_h" >&6; }
   case "$curl_cv_header_ws2tcpip_h" in
     yes)
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WS2TCPIP_H 1
-_ACEOF
+printf "%s\n" "#define HAVE_WS2TCPIP_H 1" >>confdefs.h
 
       ;;
   esac
@@ -34028,19 +36743,20 @@
 #  include <netdb.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h netdb.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_netdb
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_netdb
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "netdb.h" "ac_cv_header_netdb_h" "$curl_includes_netdb
+"
+if test "x$ac_cv_header_netdb_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NETDB_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -34050,8 +36766,8 @@
   tst_compi_freeaddrinfo="unknown"
   tst_allow_freeaddrinfo="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo can be linked" >&5
-$as_echo_n "checking if freeaddrinfo can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo can be linked" >&5
+printf %s "checking if freeaddrinfo can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34070,25 +36786,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_freeaddrinfo="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_freeaddrinfo="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is prototyped" >&5
-$as_echo_n "checking if freeaddrinfo is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is prototyped" >&5
+printf %s "checking if freeaddrinfo is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34098,26 +36815,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "freeaddrinfo" >/dev/null 2>&1; then :
+  $EGREP "freeaddrinfo" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_freeaddrinfo="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_freeaddrinfo="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is compilable" >&5
-$as_echo_n "checking if freeaddrinfo is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo is compilable" >&5
+printf %s "checking if freeaddrinfo is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34136,53 +36854,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_freeaddrinfo="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_freeaddrinfo="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo usage allowed" >&5
-$as_echo_n "checking if freeaddrinfo usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo usage allowed" >&5
+printf %s "checking if freeaddrinfo usage allowed... " >&6; }
     if test "x$curl_disallow_freeaddrinfo" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_freeaddrinfo="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_freeaddrinfo="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo might be used" >&5
-$as_echo_n "checking if freeaddrinfo might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if freeaddrinfo might be used" >&5
+printf %s "checking if freeaddrinfo might be used... " >&6; }
   if test "$tst_links_freeaddrinfo" = "yes" &&
      test "$tst_proto_freeaddrinfo" = "yes" &&
      test "$tst_compi_freeaddrinfo" = "yes" &&
      test "$tst_allow_freeaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FREEADDRINFO 1
-_ACEOF
+printf "%s\n" "#define HAVE_FREEADDRINFO 1" >>confdefs.h
 
     curl_cv_func_freeaddrinfo="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_freeaddrinfo="no"
   fi
 
@@ -34196,19 +36913,20 @@
 #  include <sys/xattr.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h sys/xattr.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_sys_xattr
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_sys_xattr
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/xattr.h" "ac_cv_header_sys_xattr_h" "$curl_includes_sys_xattr
+"
+if test "x$ac_cv_header_sys_xattr_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_XATTR_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -34219,8 +36937,8 @@
   tst_allow_fsetxattr="unknown"
   tst_nargs_fsetxattr="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsetxattr can be linked" >&5
-$as_echo_n "checking if fsetxattr can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fsetxattr can be linked" >&5
+printf %s "checking if fsetxattr can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34248,25 +36966,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_fsetxattr="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_fsetxattr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_fsetxattr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsetxattr is prototyped" >&5
-$as_echo_n "checking if fsetxattr is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fsetxattr is prototyped" >&5
+printf %s "checking if fsetxattr is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34274,27 +36993,28 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "fsetxattr" >/dev/null 2>&1; then :
+  $EGREP "fsetxattr" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_fsetxattr="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_fsetxattr="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_fsetxattr" = "yes"; then
     if test "$tst_nargs_fsetxattr" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsetxattr takes 5 args." >&5
-$as_echo_n "checking if fsetxattr takes 5 args.... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fsetxattr takes 5 args." >&5
+printf %s "checking if fsetxattr takes 5 args.... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34312,25 +37032,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         tst_compi_fsetxattr="yes"
         tst_nargs_fsetxattr="5"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         tst_compi_fsetxattr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
     if test "$tst_nargs_fsetxattr" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsetxattr takes 6 args." >&5
-$as_echo_n "checking if fsetxattr takes 6 args.... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fsetxattr takes 6 args." >&5
+printf %s "checking if fsetxattr takes 6 args.... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34348,75 +37069,74 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         tst_compi_fsetxattr="yes"
         tst_nargs_fsetxattr="6"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         tst_compi_fsetxattr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsetxattr is compilable" >&5
-$as_echo_n "checking if fsetxattr is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fsetxattr is compilable" >&5
+printf %s "checking if fsetxattr is compilable... " >&6; }
     if test "$tst_compi_fsetxattr" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     fi
   fi
   #
   if test "$tst_compi_fsetxattr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsetxattr usage allowed" >&5
-$as_echo_n "checking if fsetxattr usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fsetxattr usage allowed" >&5
+printf %s "checking if fsetxattr usage allowed... " >&6; }
     if test "x$curl_disallow_fsetxattr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_fsetxattr="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_fsetxattr="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if fsetxattr might be used" >&5
-$as_echo_n "checking if fsetxattr might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if fsetxattr might be used" >&5
+printf %s "checking if fsetxattr might be used... " >&6; }
   if test "$tst_links_fsetxattr" = "yes" &&
      test "$tst_proto_fsetxattr" = "yes" &&
      test "$tst_compi_fsetxattr" = "yes" &&
      test "$tst_allow_fsetxattr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FSETXATTR 1
-_ACEOF
+printf "%s\n" "#define HAVE_FSETXATTR 1" >>confdefs.h
 
             #
     if test "$tst_nargs_fsetxattr" -eq "5"; then
 
-$as_echo "#define HAVE_FSETXATTR_5 1" >>confdefs.h
+printf "%s\n" "#define HAVE_FSETXATTR_5 1" >>confdefs.h
 
     elif test "$tst_nargs_fsetxattr" -eq "6"; then
 
-$as_echo "#define HAVE_FSETXATTR_6 1" >>confdefs.h
+printf "%s\n" "#define HAVE_FSETXATTR_6 1" >>confdefs.h
 
     fi
     #
     curl_cv_func_fsetxattr="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_fsetxattr="no"
   fi
 
@@ -34427,8 +37147,8 @@
   tst_compi_ftruncate="unknown"
   tst_allow_ftruncate="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate can be linked" >&5
-$as_echo_n "checking if ftruncate can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ftruncate can be linked" >&5
+printf %s "checking if ftruncate can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34456,25 +37176,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_ftruncate="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_ftruncate="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate is prototyped" >&5
-$as_echo_n "checking if ftruncate is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ftruncate is prototyped" >&5
+printf %s "checking if ftruncate is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34482,26 +37203,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ftruncate" >/dev/null 2>&1; then :
+  $EGREP "ftruncate" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_ftruncate="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_ftruncate="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate is compilable" >&5
-$as_echo_n "checking if ftruncate is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ftruncate is compilable" >&5
+printf %s "checking if ftruncate is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34519,53 +37241,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ftruncate="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ftruncate="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate usage allowed" >&5
-$as_echo_n "checking if ftruncate usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ftruncate usage allowed" >&5
+printf %s "checking if ftruncate usage allowed... " >&6; }
     if test "x$curl_disallow_ftruncate" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ftruncate="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ftruncate="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ftruncate might be used" >&5
-$as_echo_n "checking if ftruncate might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ftruncate might be used" >&5
+printf %s "checking if ftruncate might be used... " >&6; }
   if test "$tst_links_ftruncate" = "yes" &&
      test "$tst_proto_ftruncate" = "yes" &&
      test "$tst_compi_ftruncate" = "yes" &&
      test "$tst_allow_ftruncate" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_FTRUNCATE 1
-_ACEOF
+printf "%s\n" "#define HAVE_FTRUNCATE 1" >>confdefs.h
 
     curl_cv_func_ftruncate="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ftruncate="no"
   fi
 
@@ -34579,19 +37300,20 @@
 #  include <stdlib.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h stdlib.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_stdlib
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_stdlib
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "stdlib.h" "ac_cv_header_stdlib_h" "$curl_includes_stdlib
+"
+if test "x$ac_cv_header_stdlib_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STDLIB_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -34603,8 +37325,8 @@
   tst_allow_getaddrinfo="unknown"
   tst_tsafe_getaddrinfo="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo can be linked" >&5
-$as_echo_n "checking if getaddrinfo can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo can be linked" >&5
+printf %s "checking if getaddrinfo can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34624,25 +37346,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_getaddrinfo="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_getaddrinfo="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is prototyped" >&5
-$as_echo_n "checking if getaddrinfo is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is prototyped" >&5
+printf %s "checking if getaddrinfo is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34652,26 +37375,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getaddrinfo" >/dev/null 2>&1; then :
+  $EGREP "getaddrinfo" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_getaddrinfo="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_getaddrinfo="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is compilable" >&5
-$as_echo_n "checking if getaddrinfo is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is compilable" >&5
+printf %s "checking if getaddrinfo is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34691,36 +37415,38 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_getaddrinfo="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_getaddrinfo="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5
-$as_echo_n "checking if getaddrinfo seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo seems to work" >&5
+printf %s "checking if getaddrinfo seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34759,14 +37485,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_getaddrinfo="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_getaddrinfo="no"
 
 fi
@@ -34780,44 +37507,42 @@
   #
   if test "$tst_compi_getaddrinfo" = "yes" &&
     test "$tst_works_getaddrinfo" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo usage allowed" >&5
-$as_echo_n "checking if getaddrinfo usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo usage allowed" >&5
+printf %s "checking if getaddrinfo usage allowed... " >&6; }
     if test "x$curl_disallow_getaddrinfo" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_getaddrinfo="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_getaddrinfo="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo might be used" >&5
-$as_echo_n "checking if getaddrinfo might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo might be used" >&5
+printf %s "checking if getaddrinfo might be used... " >&6; }
   if test "$tst_links_getaddrinfo" = "yes" &&
      test "$tst_proto_getaddrinfo" = "yes" &&
      test "$tst_compi_getaddrinfo" = "yes" &&
      test "$tst_allow_getaddrinfo" = "yes" &&
      test "$tst_works_getaddrinfo" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETADDRINFO 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETADDRINFO 1" >>confdefs.h
 
     curl_cv_func_getaddrinfo="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_getaddrinfo="no"
     curl_cv_func_getaddrinfo_threadsafe="no"
   fi
   #
   if test "$curl_cv_func_getaddrinfo" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is threadsafe" >&5
-$as_echo_n "checking if getaddrinfo is threadsafe... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getaddrinfo is threadsafe" >&5
+printf %s "checking if getaddrinfo is threadsafe... " >&6; }
     case $host_os in
       aix[1234].* | aix5.[01].*)
                 tst_tsafe_getaddrinfo="no"
@@ -34843,6 +37568,9 @@
       hpux*)
                 tst_tsafe_getaddrinfo="yes"
         ;;
+      midnightbsd*)
+                tst_tsafe_getaddrinfo="yes"
+        ;;
       netbsd[123].*)
                 tst_tsafe_getaddrinfo="no"
         ;;
@@ -34881,16 +37609,17 @@
 
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
     tst_symbol_defined="yes"
 
-else
+else $as_nop
 
     tst_symbol_defined="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   if test "$tst_symbol_defined" = "yes"; then
     curl_cv_have_def_h_errno=yes
 
@@ -34923,16 +37652,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
         tst_h_errno_modifiable_lvalue="yes"
 
-else
+else $as_nop
 
         tst_h_errno_modifiable_lvalue="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -34954,16 +37684,17 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
         tst_h_errno_sbs_issue_7="yes"
 
-else
+else $as_nop
 
         tst_h_errno_sbs_issue_7="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
       if test "$tst_h_errno_macro" = "no" &&
          test "$tst_h_errno_modifiable_lvalue" = "no" &&
          test "$tst_h_errno_sbs_issue_7" = "no"; then
@@ -34972,13 +37703,11 @@
         tst_tsafe_getaddrinfo="yes"
       fi
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_tsafe_getaddrinfo" >&5
-$as_echo "$tst_tsafe_getaddrinfo" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_tsafe_getaddrinfo" >&5
+printf "%s\n" "$tst_tsafe_getaddrinfo" >&6; }
     if test "$tst_tsafe_getaddrinfo" = "yes"; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETADDRINFO_THREADSAFE 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETADDRINFO_THREADSAFE 1" >>confdefs.h
 
       curl_cv_func_getaddrinfo_threadsafe="yes"
     else
@@ -34993,8 +37722,8 @@
   tst_compi_gethostbyname="unknown"
   tst_allow_gethostbyname="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname can be linked" >&5
-$as_echo_n "checking if gethostbyname can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname can be linked" >&5
+printf %s "checking if gethostbyname can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35014,25 +37743,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_gethostbyname="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_gethostbyname="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is prototyped" >&5
-$as_echo_n "checking if gethostbyname is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is prototyped" >&5
+printf %s "checking if gethostbyname is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35042,26 +37772,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname" >/dev/null 2>&1; then :
+  $EGREP "gethostbyname" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_gethostbyname="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_gethostbyname="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is compilable" >&5
-$as_echo_n "checking if gethostbyname is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname is compilable" >&5
+printf %s "checking if gethostbyname is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35081,53 +37812,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_gethostbyname="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_gethostbyname="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname usage allowed" >&5
-$as_echo_n "checking if gethostbyname usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname usage allowed" >&5
+printf %s "checking if gethostbyname usage allowed... " >&6; }
     if test "x$curl_disallow_gethostbyname" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_gethostbyname="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_gethostbyname="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname might be used" >&5
-$as_echo_n "checking if gethostbyname might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname might be used" >&5
+printf %s "checking if gethostbyname might be used... " >&6; }
   if test "$tst_links_gethostbyname" = "yes" &&
      test "$tst_proto_gethostbyname" = "yes" &&
      test "$tst_compi_gethostbyname" = "yes" &&
      test "$tst_allow_gethostbyname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYNAME 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETHOSTBYNAME 1" >>confdefs.h
 
     curl_cv_func_gethostbyname="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_gethostbyname="no"
   fi
 
@@ -35139,8 +37869,8 @@
   tst_allow_gethostbyname_r="unknown"
   tst_nargs_gethostbyname_r="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r can be linked" >&5
-$as_echo_n "checking if gethostbyname_r can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r can be linked" >&5
+printf %s "checking if gethostbyname_r can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35168,25 +37898,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_gethostbyname_r="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_gethostbyname_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_gethostbyname_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r is prototyped" >&5
-$as_echo_n "checking if gethostbyname_r is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r is prototyped" >&5
+printf %s "checking if gethostbyname_r is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35194,27 +37925,28 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostbyname_r" >/dev/null 2>&1; then :
+  $EGREP "gethostbyname_r" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_gethostbyname_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_gethostbyname_r="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_gethostbyname_r" = "yes"; then
     if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 3 args." >&5
-$as_echo_n "checking if gethostbyname_r takes 3 args.... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 3 args." >&5
+printf %s "checking if gethostbyname_r takes 3 args.... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35232,25 +37964,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         tst_compi_gethostbyname_r="yes"
         tst_nargs_gethostbyname_r="3"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         tst_compi_gethostbyname_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
     if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 5 args." >&5
-$as_echo_n "checking if gethostbyname_r takes 5 args.... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 5 args." >&5
+printf %s "checking if gethostbyname_r takes 5 args.... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35268,25 +38001,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         tst_compi_gethostbyname_r="yes"
         tst_nargs_gethostbyname_r="5"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         tst_compi_gethostbyname_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
     if test "$tst_nargs_gethostbyname_r" = "unknown"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 6 args." >&5
-$as_echo_n "checking if gethostbyname_r takes 6 args.... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r takes 6 args." >&5
+printf %s "checking if gethostbyname_r takes 6 args.... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35304,79 +38038,78 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         tst_compi_gethostbyname_r="yes"
         tst_nargs_gethostbyname_r="6"
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         tst_compi_gethostbyname_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
     fi
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r is compilable" >&5
-$as_echo_n "checking if gethostbyname_r is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r is compilable" >&5
+printf %s "checking if gethostbyname_r is compilable... " >&6; }
     if test "$tst_compi_gethostbyname_r" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     fi
   fi
   #
   if test "$tst_compi_gethostbyname_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r usage allowed" >&5
-$as_echo_n "checking if gethostbyname_r usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r usage allowed" >&5
+printf %s "checking if gethostbyname_r usage allowed... " >&6; }
     if test "x$curl_disallow_gethostbyname_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_gethostbyname_r="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_gethostbyname_r="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r might be used" >&5
-$as_echo_n "checking if gethostbyname_r might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostbyname_r might be used" >&5
+printf %s "checking if gethostbyname_r might be used... " >&6; }
   if test "$tst_links_gethostbyname_r" = "yes" &&
      test "$tst_proto_gethostbyname_r" = "yes" &&
      test "$tst_compi_gethostbyname_r" = "yes" &&
      test "$tst_allow_gethostbyname_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTBYNAME_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETHOSTBYNAME_R 1" >>confdefs.h
 
             #
     if test "$tst_nargs_gethostbyname_r" -eq "3"; then
 
-$as_echo "#define HAVE_GETHOSTBYNAME_R_3 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GETHOSTBYNAME_R_3 1" >>confdefs.h
 
     elif test "$tst_nargs_gethostbyname_r" -eq "5"; then
 
-$as_echo "#define HAVE_GETHOSTBYNAME_R_5 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GETHOSTBYNAME_R_5 1" >>confdefs.h
 
     elif test "$tst_nargs_gethostbyname_r" -eq "6"; then
 
-$as_echo "#define HAVE_GETHOSTBYNAME_R_6 1" >>confdefs.h
+printf "%s\n" "#define HAVE_GETHOSTBYNAME_R_6 1" >>confdefs.h
 
     fi
     #
     curl_cv_func_gethostbyname_r="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_gethostbyname_r="no"
   fi
 
@@ -35397,8 +38130,8 @@
   tst_compi_gethostname="unknown"
   tst_allow_gethostname="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname can be linked" >&5
-$as_echo_n "checking if gethostname can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostname can be linked" >&5
+printf %s "checking if gethostname can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35418,25 +38151,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_gethostname="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_gethostname="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname is prototyped" >&5
-$as_echo_n "checking if gethostname is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostname is prototyped" >&5
+printf %s "checking if gethostname is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35446,26 +38180,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gethostname" >/dev/null 2>&1; then :
+  $EGREP "gethostname" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_gethostname="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_gethostname="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname is compilable" >&5
-$as_echo_n "checking if gethostname is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostname is compilable" >&5
+printf %s "checking if gethostname is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35485,25 +38220,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_gethostname="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_gethostname="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for gethostname arg 2 data type" >&5
-$as_echo_n "checking for gethostname arg 2 data type... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for gethostname arg 2 data type" >&5
+printf %s "checking for gethostname arg 2 data type... " >&6; }
     tst_gethostname_type_arg2="unknown"
     for tst_arg1 in 'char *' 'unsigned char *' 'void *'; do
       for tst_arg2 in 'int' 'unsigned int' 'size_t'; do
@@ -35529,57 +38265,54 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
             tst_gethostname_type_arg2="$tst_arg2"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
         fi
       done
     done
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_gethostname_type_arg2" >&5
-$as_echo "$tst_gethostname_type_arg2" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_gethostname_type_arg2" >&5
+printf "%s\n" "$tst_gethostname_type_arg2" >&6; }
     if test "$tst_gethostname_type_arg2" != "unknown"; then
 
-cat >>confdefs.h <<_ACEOF
-#define GETHOSTNAME_TYPE_ARG2 $tst_gethostname_type_arg2
-_ACEOF
+printf "%s\n" "#define GETHOSTNAME_TYPE_ARG2 $tst_gethostname_type_arg2" >>confdefs.h
 
     fi
   fi
   #
   if test "$tst_compi_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname usage allowed" >&5
-$as_echo_n "checking if gethostname usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostname usage allowed" >&5
+printf %s "checking if gethostname usage allowed... " >&6; }
     if test "x$curl_disallow_gethostname" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_gethostname="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_gethostname="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gethostname might be used" >&5
-$as_echo_n "checking if gethostname might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gethostname might be used" >&5
+printf %s "checking if gethostname might be used... " >&6; }
   if test "$tst_links_gethostname" = "yes" &&
      test "$tst_proto_gethostname" = "yes" &&
      test "$tst_compi_gethostname" = "yes" &&
      test "$tst_allow_gethostname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETHOSTNAME 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETHOSTNAME 1" >>confdefs.h
 
     curl_cv_func_gethostname="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_gethostname="no"
   fi
 
@@ -35590,8 +38323,8 @@
   tst_compi_getpeername="unknown"
   tst_allow_getpeername="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getpeername can be linked" >&5
-$as_echo_n "checking if getpeername can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getpeername can be linked" >&5
+printf %s "checking if getpeername can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35611,25 +38344,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_getpeername="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_getpeername="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_getpeername" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getpeername is prototyped" >&5
-$as_echo_n "checking if getpeername is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getpeername is prototyped" >&5
+printf %s "checking if getpeername is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35639,26 +38373,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getpeername" >/dev/null 2>&1; then :
+  $EGREP "getpeername" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_getpeername="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_getpeername="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_getpeername" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getpeername is compilable" >&5
-$as_echo_n "checking if getpeername is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getpeername is compilable" >&5
+printf %s "checking if getpeername is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35678,53 +38413,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_getpeername="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_getpeername="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_getpeername" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getpeername usage allowed" >&5
-$as_echo_n "checking if getpeername usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getpeername usage allowed" >&5
+printf %s "checking if getpeername usage allowed... " >&6; }
     if test "x$curl_disallow_getpeername" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_getpeername="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_getpeername="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getpeername might be used" >&5
-$as_echo_n "checking if getpeername might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getpeername might be used" >&5
+printf %s "checking if getpeername might be used... " >&6; }
   if test "$tst_links_getpeername" = "yes" &&
      test "$tst_proto_getpeername" = "yes" &&
      test "$tst_compi_getpeername" = "yes" &&
      test "$tst_allow_getpeername" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETPEERNAME 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETPEERNAME 1" >>confdefs.h
 
     curl_cv_func_getpeername="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_getpeername="no"
   fi
 
@@ -35735,8 +38469,8 @@
   tst_compi_getsockname="unknown"
   tst_allow_getsockname="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getsockname can be linked" >&5
-$as_echo_n "checking if getsockname can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getsockname can be linked" >&5
+printf %s "checking if getsockname can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35756,25 +38490,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_getsockname="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_getsockname="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_getsockname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getsockname is prototyped" >&5
-$as_echo_n "checking if getsockname is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getsockname is prototyped" >&5
+printf %s "checking if getsockname is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35784,26 +38519,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getsockname" >/dev/null 2>&1; then :
+  $EGREP "getsockname" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_getsockname="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_getsockname="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_getsockname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getsockname is compilable" >&5
-$as_echo_n "checking if getsockname is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getsockname is compilable" >&5
+printf %s "checking if getsockname is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35823,53 +38559,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_getsockname="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_getsockname="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_getsockname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getsockname usage allowed" >&5
-$as_echo_n "checking if getsockname usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getsockname usage allowed" >&5
+printf %s "checking if getsockname usage allowed... " >&6; }
     if test "x$curl_disallow_getsockname" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_getsockname="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_getsockname="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getsockname might be used" >&5
-$as_echo_n "checking if getsockname might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getsockname might be used" >&5
+printf %s "checking if getsockname might be used... " >&6; }
   if test "$tst_links_getsockname" = "yes" &&
      test "$tst_proto_getsockname" = "yes" &&
      test "$tst_compi_getsockname" = "yes" &&
      test "$tst_allow_getsockname" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETSOCKNAME 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETSOCKNAME 1" >>confdefs.h
 
     curl_cv_func_getsockname="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_getsockname="no"
   fi
 
@@ -35880,19 +38615,14 @@
 #  include <net/if.h>
 #endif
 /* includes end */"
-  for ac_header in net/if.h
-do :
   ac_fn_c_check_header_compile "$LINENO" "net/if.h" "ac_cv_header_net_if_h" "$curl_includes_netif
 "
-if test "x$ac_cv_header_net_if_h" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_NET_IF_H 1
-_ACEOF
+if test "x$ac_cv_header_net_if_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NET_IF_H 1" >>confdefs.h
 
 fi
 
-done
-
 
 
         #
@@ -35901,8 +38631,8 @@
   tst_compi_if_nametoindex="unknown"
   tst_allow_if_nametoindex="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex can be linked" >&5
-$as_echo_n "checking if if_nametoindex can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex can be linked" >&5
+printf %s "checking if if_nametoindex can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35922,25 +38652,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_if_nametoindex="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_if_nametoindex="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_if_nametoindex" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex is prototyped" >&5
-$as_echo_n "checking if if_nametoindex is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex is prototyped" >&5
+printf %s "checking if if_nametoindex is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35949,26 +38680,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "if_nametoindex" >/dev/null 2>&1; then :
+  $EGREP "if_nametoindex" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_if_nametoindex="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_if_nametoindex="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_if_nametoindex" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex is compilable" >&5
-$as_echo_n "checking if if_nametoindex is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex is compilable" >&5
+printf %s "checking if if_nametoindex is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -35987,53 +38719,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_if_nametoindex="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_if_nametoindex="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_if_nametoindex" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex usage allowed" >&5
-$as_echo_n "checking if if_nametoindex usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex usage allowed" >&5
+printf %s "checking if if_nametoindex usage allowed... " >&6; }
     if test "x$curl_disallow_if_nametoindex" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_if_nametoindex="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_if_nametoindex="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex might be used" >&5
-$as_echo_n "checking if if_nametoindex might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if if_nametoindex might be used" >&5
+printf %s "checking if if_nametoindex might be used... " >&6; }
   if test "$tst_links_if_nametoindex" = "yes" &&
      test "$tst_proto_if_nametoindex" = "yes" &&
      test "$tst_compi_if_nametoindex" = "yes" &&
      test "$tst_allow_if_nametoindex" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IF_NAMETOINDEX 1
-_ACEOF
+printf "%s\n" "#define HAVE_IF_NAMETOINDEX 1" >>confdefs.h
 
     curl_cv_func_if_nametoindex="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_if_nametoindex="no"
   fi
 
@@ -36053,19 +38784,34 @@
 #  include <ifaddrs.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h sys/socket.h netinet/in.h ifaddrs.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_ifaddrs
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_ifaddrs
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$curl_includes_ifaddrs
+"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "netinet/in.h" "ac_cv_header_netinet_in_h" "$curl_includes_ifaddrs
+"
+if test "x$ac_cv_header_netinet_in_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NETINET_IN_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "ifaddrs.h" "ac_cv_header_ifaddrs_h" "$curl_includes_ifaddrs
+"
+if test "x$ac_cv_header_ifaddrs_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_IFADDRS_H 1" >>confdefs.h
+
+fi
 
 
 
@@ -36076,8 +38822,8 @@
   tst_works_getifaddrs="unknown"
   tst_allow_getifaddrs="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs can be linked" >&5
-$as_echo_n "checking if getifaddrs can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getifaddrs can be linked" >&5
+printf %s "checking if getifaddrs can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36105,25 +38851,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_getifaddrs="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_getifaddrs="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_getifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs is prototyped" >&5
-$as_echo_n "checking if getifaddrs is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getifaddrs is prototyped" >&5
+printf %s "checking if getifaddrs is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36131,26 +38878,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "getifaddrs" >/dev/null 2>&1; then :
+  $EGREP "getifaddrs" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_getifaddrs="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_getifaddrs="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_getifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs is compilable" >&5
-$as_echo_n "checking if getifaddrs is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getifaddrs is compilable" >&5
+printf %s "checking if getifaddrs is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36168,36 +38916,38 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_getifaddrs="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_getifaddrs="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_getifaddrs" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs seems to work" >&5
-$as_echo_n "checking if getifaddrs seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getifaddrs seems to work" >&5
+printf %s "checking if getifaddrs seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36222,14 +38972,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_getifaddrs="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_getifaddrs="no"
 
 fi
@@ -36243,37 +38994,35 @@
   #
   if test "$tst_compi_getifaddrs" = "yes" &&
     test "$tst_works_getifaddrs" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs usage allowed" >&5
-$as_echo_n "checking if getifaddrs usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getifaddrs usage allowed" >&5
+printf %s "checking if getifaddrs usage allowed... " >&6; }
     if test "x$curl_disallow_getifaddrs" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_getifaddrs="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_getifaddrs="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if getifaddrs might be used" >&5
-$as_echo_n "checking if getifaddrs might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if getifaddrs might be used" >&5
+printf %s "checking if getifaddrs might be used... " >&6; }
   if test "$tst_links_getifaddrs" = "yes" &&
      test "$tst_proto_getifaddrs" = "yes" &&
      test "$tst_compi_getifaddrs" = "yes" &&
      test "$tst_allow_getifaddrs" = "yes" &&
      test "$tst_works_getifaddrs" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GETIFADDRS 1
-_ACEOF
+printf "%s\n" "#define HAVE_GETIFADDRS 1" >>confdefs.h
 
     curl_cv_func_getifaddrs="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_getifaddrs="no"
   fi
 
@@ -36288,19 +39037,20 @@
 #endif
 #include <time.h>
 /* includes end */"
-  for ac_header in sys/types.h sys/time.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_time
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_time
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/time.h" "ac_cv_header_sys_time_h" "$curl_includes_time
+"
+if test "x$ac_cv_header_sys_time_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TIME_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -36311,8 +39061,8 @@
   tst_works_gmtime_r="unknown"
   tst_allow_gmtime_r="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r can be linked" >&5
-$as_echo_n "checking if gmtime_r can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gmtime_r can be linked" >&5
+printf %s "checking if gmtime_r can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36340,25 +39090,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_gmtime_r="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_gmtime_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_gmtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r is prototyped" >&5
-$as_echo_n "checking if gmtime_r is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gmtime_r is prototyped" >&5
+printf %s "checking if gmtime_r is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36366,26 +39117,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "gmtime_r" >/dev/null 2>&1; then :
+  $EGREP "gmtime_r" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_gmtime_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_gmtime_r="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_gmtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r is compilable" >&5
-$as_echo_n "checking if gmtime_r is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gmtime_r is compilable" >&5
+printf %s "checking if gmtime_r is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36403,36 +39155,38 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_gmtime_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_gmtime_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_gmtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r seems to work" >&5
-$as_echo_n "checking if gmtime_r seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gmtime_r seems to work" >&5
+printf %s "checking if gmtime_r seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36457,14 +39211,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_gmtime_r="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_gmtime_r="no"
 
 fi
@@ -36478,37 +39233,35 @@
   #
   if test "$tst_compi_gmtime_r" = "yes" &&
     test "$tst_works_gmtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r usage allowed" >&5
-$as_echo_n "checking if gmtime_r usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gmtime_r usage allowed" >&5
+printf %s "checking if gmtime_r usage allowed... " >&6; }
     if test "x$curl_disallow_gmtime_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_gmtime_r="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_gmtime_r="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if gmtime_r might be used" >&5
-$as_echo_n "checking if gmtime_r might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if gmtime_r might be used" >&5
+printf %s "checking if gmtime_r might be used... " >&6; }
   if test "$tst_links_gmtime_r" = "yes" &&
      test "$tst_proto_gmtime_r" = "yes" &&
      test "$tst_compi_gmtime_r" = "yes" &&
      test "$tst_allow_gmtime_r" = "yes" &&
      test "$tst_works_gmtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GMTIME_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_GMTIME_R 1" >>confdefs.h
 
     curl_cv_func_gmtime_r="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_gmtime_r="no"
   fi
 
@@ -36532,19 +39285,34 @@
 #include <ws2tcpip.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h sys/socket.h netinet/in.h arpa/inet.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_arpa_inet
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_arpa_inet
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$curl_includes_arpa_inet
+"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "netinet/in.h" "ac_cv_header_netinet_in_h" "$curl_includes_arpa_inet
+"
+if test "x$ac_cv_header_netinet_in_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_NETINET_IN_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "arpa/inet.h" "ac_cv_header_arpa_inet_h" "$curl_includes_arpa_inet
+"
+if test "x$ac_cv_header_arpa_inet_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_ARPA_INET_H 1" >>confdefs.h
+
+fi
 
 
 
@@ -36555,8 +39323,8 @@
   tst_works_inet_ntop="unknown"
   tst_allow_inet_ntop="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop can be linked" >&5
-$as_echo_n "checking if inet_ntop can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_ntop can be linked" >&5
+printf %s "checking if inet_ntop can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36584,25 +39352,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_inet_ntop="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_inet_ntop="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is prototyped" >&5
-$as_echo_n "checking if inet_ntop is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is prototyped" >&5
+printf %s "checking if inet_ntop is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36610,26 +39379,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_ntop" >/dev/null 2>&1; then :
+  $EGREP "inet_ntop" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_inet_ntop="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_inet_ntop="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is compilable" >&5
-$as_echo_n "checking if inet_ntop is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_ntop is compilable" >&5
+printf %s "checking if inet_ntop is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36647,36 +39417,38 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_inet_ntop="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_inet_ntop="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_inet_ntop" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop seems to work" >&5
-$as_echo_n "checking if inet_ntop seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_ntop seems to work" >&5
+printf %s "checking if inet_ntop seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36743,14 +39515,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_inet_ntop="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_inet_ntop="no"
 
 fi
@@ -36764,37 +39537,35 @@
   #
   if test "$tst_compi_inet_ntop" = "yes" &&
     test "$tst_works_inet_ntop" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop usage allowed" >&5
-$as_echo_n "checking if inet_ntop usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_ntop usage allowed" >&5
+printf %s "checking if inet_ntop usage allowed... " >&6; }
     if test "x$curl_disallow_inet_ntop" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_inet_ntop="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_inet_ntop="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_ntop might be used" >&5
-$as_echo_n "checking if inet_ntop might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_ntop might be used" >&5
+printf %s "checking if inet_ntop might be used... " >&6; }
   if test "$tst_links_inet_ntop" = "yes" &&
      test "$tst_proto_inet_ntop" = "yes" &&
      test "$tst_compi_inet_ntop" = "yes" &&
      test "$tst_allow_inet_ntop" = "yes" &&
      test "$tst_works_inet_ntop" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_NTOP 1
-_ACEOF
+printf "%s\n" "#define HAVE_INET_NTOP 1" >>confdefs.h
 
     curl_cv_func_inet_ntop="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_inet_ntop="no"
   fi
 
@@ -36806,8 +39577,8 @@
   tst_works_inet_pton="unknown"
   tst_allow_inet_pton="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton can be linked" >&5
-$as_echo_n "checking if inet_pton can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_pton can be linked" >&5
+printf %s "checking if inet_pton can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36835,25 +39606,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_inet_pton="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_inet_pton="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton is prototyped" >&5
-$as_echo_n "checking if inet_pton is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_pton is prototyped" >&5
+printf %s "checking if inet_pton is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36861,26 +39633,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "inet_pton" >/dev/null 2>&1; then :
+  $EGREP "inet_pton" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_inet_pton="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_inet_pton="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton is compilable" >&5
-$as_echo_n "checking if inet_pton is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_pton is compilable" >&5
+printf %s "checking if inet_pton is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36898,36 +39671,38 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_inet_pton="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_inet_pton="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_inet_pton" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton seems to work" >&5
-$as_echo_n "checking if inet_pton seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_pton seems to work" >&5
+printf %s "checking if inet_pton seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -36987,14 +39762,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_inet_pton="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_inet_pton="no"
 
 fi
@@ -37008,37 +39784,35 @@
   #
   if test "$tst_compi_inet_pton" = "yes" &&
     test "$tst_works_inet_pton" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton usage allowed" >&5
-$as_echo_n "checking if inet_pton usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_pton usage allowed" >&5
+printf %s "checking if inet_pton usage allowed... " >&6; }
     if test "x$curl_disallow_inet_pton" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_inet_pton="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_inet_pton="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if inet_pton might be used" >&5
-$as_echo_n "checking if inet_pton might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if inet_pton might be used" >&5
+printf %s "checking if inet_pton might be used... " >&6; }
   if test "$tst_links_inet_pton" = "yes" &&
      test "$tst_proto_inet_pton" = "yes" &&
      test "$tst_compi_inet_pton" = "yes" &&
      test "$tst_allow_inet_pton" = "yes" &&
      test "$tst_works_inet_pton" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_INET_PTON 1
-_ACEOF
+printf "%s\n" "#define HAVE_INET_PTON 1" >>confdefs.h
 
     curl_cv_func_inet_pton="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_inet_pton="no"
   fi
 
@@ -37061,19 +39835,41 @@
 #  include <stropts.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h unistd.h sys/socket.h sys/ioctl.h stropts.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_stropts
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_stropts
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "unistd.h" "ac_cv_header_unistd_h" "$curl_includes_stropts
+"
+if test "x$ac_cv_header_unistd_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_UNISTD_H 1" >>confdefs.h
 
-done
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/socket.h" "ac_cv_header_sys_socket_h" "$curl_includes_stropts
+"
+if test "x$ac_cv_header_sys_socket_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_SOCKET_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "sys/ioctl.h" "ac_cv_header_sys_ioctl_h" "$curl_includes_stropts
+"
+if test "x$ac_cv_header_sys_ioctl_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_IOCTL_H 1" >>confdefs.h
+
+fi
+ac_fn_c_check_header_compile "$LINENO" "stropts.h" "ac_cv_header_stropts_h" "$curl_includes_stropts
+"
+if test "x$ac_cv_header_stropts_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_STROPTS_H 1" >>confdefs.h
+
+fi
 
 
 
@@ -37083,8 +39879,8 @@
   tst_compi_ioctl="unknown"
   tst_allow_ioctl="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl can be linked" >&5
-$as_echo_n "checking if ioctl can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl can be linked" >&5
+printf %s "checking if ioctl can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37112,25 +39908,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_ioctl="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_ioctl="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl is prototyped" >&5
-$as_echo_n "checking if ioctl is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl is prototyped" >&5
+printf %s "checking if ioctl is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37138,26 +39935,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ioctl" >/dev/null 2>&1; then :
+  $EGREP "ioctl" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_ioctl="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_ioctl="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl is compilable" >&5
-$as_echo_n "checking if ioctl is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl is compilable" >&5
+printf %s "checking if ioctl is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37175,48 +39973,47 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ioctl="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ioctl="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl usage allowed" >&5
-$as_echo_n "checking if ioctl usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl usage allowed" >&5
+printf %s "checking if ioctl usage allowed... " >&6; }
     if test "x$curl_disallow_ioctl" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ioctl="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ioctl="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl might be used" >&5
-$as_echo_n "checking if ioctl might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl might be used" >&5
+printf %s "checking if ioctl might be used... " >&6; }
   if test "$tst_links_ioctl" = "yes" &&
      test "$tst_proto_ioctl" = "yes" &&
      test "$tst_compi_ioctl" = "yes" &&
      test "$tst_allow_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL 1
-_ACEOF
+printf "%s\n" "#define HAVE_IOCTL 1" >>confdefs.h
 
     curl_cv_func_ioctl="yes"
 
@@ -37225,8 +40022,8 @@
   tst_allow_ioctl_fionbio="unknown"
   #
   if test "$curl_cv_func_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO is compilable" >&5
-$as_echo_n "checking if ioctl FIONBIO is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO is compilable" >&5
+printf %s "checking if ioctl FIONBIO is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37245,51 +40042,50 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ioctl_fionbio="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ioctl_fionbio="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ioctl_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO usage allowed" >&5
-$as_echo_n "checking if ioctl FIONBIO usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO usage allowed" >&5
+printf %s "checking if ioctl FIONBIO usage allowed... " >&6; }
     if test "x$curl_disallow_ioctl_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ioctl_fionbio="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ioctl_fionbio="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO might be used" >&5
-$as_echo_n "checking if ioctl FIONBIO might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl FIONBIO might be used" >&5
+printf %s "checking if ioctl FIONBIO might be used... " >&6; }
   if test "$tst_compi_ioctl_fionbio" = "yes" &&
      test "$tst_allow_ioctl_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL_FIONBIO 1
-_ACEOF
+printf "%s\n" "#define HAVE_IOCTL_FIONBIO 1" >>confdefs.h
 
     curl_cv_func_ioctl_fionbio="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ioctl_fionbio="no"
   fi
 
@@ -37299,8 +40095,8 @@
   tst_allow_ioctl_siocgifaddr="unknown"
   #
   if test "$curl_cv_func_ioctl" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR is compilable" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR is compilable" >&5
+printf %s "checking if ioctl SIOCGIFADDR is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37320,57 +40116,56 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ioctl_siocgifaddr="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ioctl_siocgifaddr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ioctl_siocgifaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR usage allowed" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR usage allowed" >&5
+printf %s "checking if ioctl SIOCGIFADDR usage allowed... " >&6; }
     if test "x$curl_disallow_ioctl_siocgifaddr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ioctl_siocgifaddr="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ioctl_siocgifaddr="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR might be used" >&5
-$as_echo_n "checking if ioctl SIOCGIFADDR might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctl SIOCGIFADDR might be used" >&5
+printf %s "checking if ioctl SIOCGIFADDR might be used... " >&6; }
   if test "$tst_compi_ioctl_siocgifaddr" = "yes" &&
      test "$tst_allow_ioctl_siocgifaddr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTL_SIOCGIFADDR 1
-_ACEOF
+printf "%s\n" "#define HAVE_IOCTL_SIOCGIFADDR 1" >>confdefs.h
 
     curl_cv_func_ioctl_siocgifaddr="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ioctl_siocgifaddr="no"
   fi
 
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ioctl="no"
   fi
 
@@ -37381,8 +40176,8 @@
   tst_compi_ioctlsocket="unknown"
   tst_allow_ioctlsocket="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket can be linked" >&5
-$as_echo_n "checking if ioctlsocket can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket can be linked" >&5
+printf %s "checking if ioctlsocket can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37401,25 +40196,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_ioctlsocket="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_ioctlsocket="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is prototyped" >&5
-$as_echo_n "checking if ioctlsocket is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is prototyped" >&5
+printf %s "checking if ioctlsocket is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37428,26 +40224,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "ioctlsocket" >/dev/null 2>&1; then :
+  $EGREP "ioctlsocket" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_ioctlsocket="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_ioctlsocket="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is compilable" >&5
-$as_echo_n "checking if ioctlsocket is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket is compilable" >&5
+printf %s "checking if ioctlsocket is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37466,48 +40263,47 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ioctlsocket="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ioctlsocket="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket usage allowed" >&5
-$as_echo_n "checking if ioctlsocket usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket usage allowed" >&5
+printf %s "checking if ioctlsocket usage allowed... " >&6; }
     if test "x$curl_disallow_ioctlsocket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ioctlsocket="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ioctlsocket="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket might be used" >&5
-$as_echo_n "checking if ioctlsocket might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket might be used" >&5
+printf %s "checking if ioctlsocket might be used... " >&6; }
   if test "$tst_links_ioctlsocket" = "yes" &&
      test "$tst_proto_ioctlsocket" = "yes" &&
      test "$tst_compi_ioctlsocket" = "yes" &&
      test "$tst_allow_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET 1
-_ACEOF
+printf "%s\n" "#define HAVE_IOCTLSOCKET 1" >>confdefs.h
 
     curl_cv_func_ioctlsocket="yes"
 
@@ -37516,8 +40312,8 @@
   tst_allow_ioctlsocket_fionbio="unknown"
   #
   if test "$curl_cv_func_ioctlsocket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO is compilable" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO is compilable" >&5
+printf %s "checking if ioctlsocket FIONBIO is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37537,57 +40333,56 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ioctlsocket_fionbio="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ioctlsocket_fionbio="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ioctlsocket_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO usage allowed" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO usage allowed" >&5
+printf %s "checking if ioctlsocket FIONBIO usage allowed... " >&6; }
     if test "x$curl_disallow_ioctlsocket_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ioctlsocket_fionbio="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ioctlsocket_fionbio="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO might be used" >&5
-$as_echo_n "checking if ioctlsocket FIONBIO might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if ioctlsocket FIONBIO might be used" >&5
+printf %s "checking if ioctlsocket FIONBIO might be used... " >&6; }
   if test "$tst_compi_ioctlsocket_fionbio" = "yes" &&
      test "$tst_allow_ioctlsocket_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_FIONBIO 1
-_ACEOF
+printf "%s\n" "#define HAVE_IOCTLSOCKET_FIONBIO 1" >>confdefs.h
 
     curl_cv_func_ioctlsocket_fionbio="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ioctlsocket_fionbio="no"
   fi
 
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ioctlsocket="no"
   fi
 
@@ -37598,8 +40393,8 @@
   tst_compi_ioctlsocket_camel="unknown"
   tst_allow_ioctlsocket_camel="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket can be linked" >&5
-$as_echo_n "checking if IoctlSocket can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket can be linked" >&5
+printf %s "checking if IoctlSocket can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37627,25 +40422,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_ioctlsocket_camel="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_ioctlsocket_camel="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is prototyped" >&5
-$as_echo_n "checking if IoctlSocket is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is prototyped" >&5
+printf %s "checking if IoctlSocket is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37653,26 +40449,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "IoctlSocket" >/dev/null 2>&1; then :
+  $EGREP "IoctlSocket" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_ioctlsocket_camel="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_ioctlsocket_camel="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is compilable" >&5
-$as_echo_n "checking if IoctlSocket is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket is compilable" >&5
+printf %s "checking if IoctlSocket is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37690,48 +40487,47 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ioctlsocket_camel="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ioctlsocket_camel="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket usage allowed" >&5
-$as_echo_n "checking if IoctlSocket usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket usage allowed" >&5
+printf %s "checking if IoctlSocket usage allowed... " >&6; }
     if test "x$curl_disallow_ioctlsocket_camel" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ioctlsocket_camel="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ioctlsocket_camel="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket might be used" >&5
-$as_echo_n "checking if IoctlSocket might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket might be used" >&5
+printf %s "checking if IoctlSocket might be used... " >&6; }
   if test "$tst_links_ioctlsocket_camel" = "yes" &&
      test "$tst_proto_ioctlsocket_camel" = "yes" &&
      test "$tst_compi_ioctlsocket_camel" = "yes" &&
      test "$tst_allow_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_CAMEL 1
-_ACEOF
+printf "%s\n" "#define HAVE_IOCTLSOCKET_CAMEL 1" >>confdefs.h
 
     curl_cv_func_ioctlsocket_camel="yes"
 
@@ -37740,8 +40536,8 @@
   tst_allow_ioctlsocket_camel_fionbio="unknown"
   #
   if test "$curl_cv_func_ioctlsocket_camel" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO is compilable" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO is compilable" >&5
+printf %s "checking if IoctlSocket FIONBIO is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37760,57 +40556,56 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_ioctlsocket_camel_fionbio="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_ioctlsocket_camel_fionbio="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO usage allowed" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO usage allowed" >&5
+printf %s "checking if IoctlSocket FIONBIO usage allowed... " >&6; }
     if test "x$curl_disallow_ioctlsocket_camel_fionbio" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_ioctlsocket_camel_fionbio="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_ioctlsocket_camel_fionbio="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO might be used" >&5
-$as_echo_n "checking if IoctlSocket FIONBIO might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if IoctlSocket FIONBIO might be used" >&5
+printf %s "checking if IoctlSocket FIONBIO might be used... " >&6; }
   if test "$tst_compi_ioctlsocket_camel_fionbio" = "yes" &&
      test "$tst_allow_ioctlsocket_camel_fionbio" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_IOCTLSOCKET_CAMEL_FIONBIO 1
-_ACEOF
+printf "%s\n" "#define HAVE_IOCTLSOCKET_CAMEL_FIONBIO 1" >>confdefs.h
 
     curl_cv_func_ioctlsocket_camel_fionbio="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ioctlsocket_camel_fionbio="no"
   fi
 
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_ioctlsocket_camel="no"
   fi
 
@@ -37822,8 +40617,8 @@
   tst_works_localtime_r="unknown"
   tst_allow_localtime_r="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r can be linked" >&5
-$as_echo_n "checking if localtime_r can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if localtime_r can be linked" >&5
+printf %s "checking if localtime_r can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37851,25 +40646,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_localtime_r="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_localtime_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_localtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r is prototyped" >&5
-$as_echo_n "checking if localtime_r is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if localtime_r is prototyped" >&5
+printf %s "checking if localtime_r is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37877,26 +40673,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "localtime_r" >/dev/null 2>&1; then :
+  $EGREP "localtime_r" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_localtime_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_localtime_r="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_localtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r is compilable" >&5
-$as_echo_n "checking if localtime_r is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if localtime_r is compilable" >&5
+printf %s "checking if localtime_r is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37914,36 +40711,38 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_localtime_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_localtime_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_localtime_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r seems to work" >&5
-$as_echo_n "checking if localtime_r seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if localtime_r seems to work" >&5
+printf %s "checking if localtime_r seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -37968,14 +40767,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_localtime_r="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_localtime_r="no"
 
 fi
@@ -37989,37 +40789,35 @@
   #
   if test "$tst_compi_localtime_r" = "yes" &&
     test "$tst_works_localtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r usage allowed" >&5
-$as_echo_n "checking if localtime_r usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if localtime_r usage allowed" >&5
+printf %s "checking if localtime_r usage allowed... " >&6; }
     if test "x$curl_disallow_localtime_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_localtime_r="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_localtime_r="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if localtime_r might be used" >&5
-$as_echo_n "checking if localtime_r might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if localtime_r might be used" >&5
+printf %s "checking if localtime_r might be used... " >&6; }
   if test "$tst_links_localtime_r" = "yes" &&
      test "$tst_proto_localtime_r" = "yes" &&
      test "$tst_compi_localtime_r" = "yes" &&
      test "$tst_allow_localtime_r" = "yes" &&
      test "$tst_works_localtime_r" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_LOCALTIME_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_LOCALTIME_R 1" >>confdefs.h
 
     curl_cv_func_localtime_r="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_localtime_r="no"
   fi
 
@@ -38031,8 +40829,8 @@
   tst_compi_memrchr="unknown"
   tst_allow_memrchr="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr can be linked" >&5
-$as_echo_n "checking if memrchr can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if memrchr can be linked" >&5
+printf %s "checking if memrchr can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38060,25 +40858,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_memrchr="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_memrchr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_memrchr" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr seems a macro" >&5
-$as_echo_n "checking if memrchr seems a macro... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if memrchr seems a macro" >&5
+printf %s "checking if memrchr seems a macro... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38096,26 +40895,27 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_macro_memrchr="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_macro_memrchr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   #
   if test "$tst_links_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr is prototyped" >&5
-$as_echo_n "checking if memrchr is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if memrchr is prototyped" >&5
+printf %s "checking if memrchr is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38123,27 +40923,28 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "memrchr" >/dev/null 2>&1; then :
+  $EGREP "memrchr" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_memrchr="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_memrchr="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_memrchr" = "yes" ||
      test "$tst_macro_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr is compilable" >&5
-$as_echo_n "checking if memrchr is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if memrchr is compilable" >&5
+printf %s "checking if memrchr is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38161,53 +40962,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_memrchr="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_memrchr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr usage allowed" >&5
-$as_echo_n "checking if memrchr usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if memrchr usage allowed" >&5
+printf %s "checking if memrchr usage allowed... " >&6; }
     if test "x$curl_disallow_memrchr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_memrchr="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_memrchr="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if memrchr might be used" >&5
-$as_echo_n "checking if memrchr might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if memrchr might be used" >&5
+printf %s "checking if memrchr might be used... " >&6; }
   if (test "$tst_proto_memrchr" = "yes" ||
       test "$tst_macro_memrchr" = "yes") &&
      test "$tst_compi_memrchr" = "yes" &&
      test "$tst_allow_memrchr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_MEMRCHR 1
-_ACEOF
+printf "%s\n" "#define HAVE_MEMRCHR 1" >>confdefs.h
 
     curl_cv_func_memrchr="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_memrchr="no"
   fi
 
@@ -38226,8 +41026,8 @@
       ;;
   esac
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll can be linked" >&5
-$as_echo_n "checking if poll can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if poll can be linked" >&5
+printf %s "checking if poll can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38245,25 +41045,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_poll="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_poll="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_poll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll is prototyped" >&5
-$as_echo_n "checking if poll is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if poll is prototyped" >&5
+printf %s "checking if poll is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38271,26 +41072,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "poll" >/dev/null 2>&1; then :
+  $EGREP "poll" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_poll="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_poll="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_poll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll is compilable" >&5
-$as_echo_n "checking if poll is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if poll is compilable" >&5
+printf %s "checking if poll is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38308,36 +41110,38 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_poll="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_poll="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_compi_poll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll seems to work" >&5
-$as_echo_n "checking if poll seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if poll seems to work" >&5
+printf %s "checking if poll seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38374,14 +41178,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_poll="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_poll="no"
 
 fi
@@ -38395,42 +41200,38 @@
   #
   if test "$tst_compi_poll" = "yes" &&
     test "$tst_works_poll" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll usage allowed" >&5
-$as_echo_n "checking if poll usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if poll usage allowed" >&5
+printf %s "checking if poll usage allowed... " >&6; }
     if test "x$curl_disallow_poll" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_poll="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_poll="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if poll might be used" >&5
-$as_echo_n "checking if poll might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if poll might be used" >&5
+printf %s "checking if poll might be used... " >&6; }
   if test "$tst_links_poll" = "yes" &&
      test "$tst_proto_poll" = "yes" &&
      test "$tst_compi_poll" = "yes" &&
      test "$tst_allow_poll" = "yes" &&
      test "$tst_works_poll" != "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_POLL 1
-_ACEOF
+printf "%s\n" "#define HAVE_POLL 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_POLL_FINE 1
-_ACEOF
+printf "%s\n" "#define HAVE_POLL_FINE 1" >>confdefs.h
 
     curl_cv_func_poll="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_poll="no"
   fi
 
@@ -38441,8 +41242,8 @@
   tst_compi_setsockopt="unknown"
   tst_allow_setsockopt="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt can be linked" >&5
-$as_echo_n "checking if setsockopt can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt can be linked" >&5
+printf %s "checking if setsockopt can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38462,25 +41263,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_setsockopt="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_setsockopt="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt is prototyped" >&5
-$as_echo_n "checking if setsockopt is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt is prototyped" >&5
+printf %s "checking if setsockopt is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38490,26 +41292,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "setsockopt" >/dev/null 2>&1; then :
+  $EGREP "setsockopt" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_setsockopt="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_setsockopt="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt is compilable" >&5
-$as_echo_n "checking if setsockopt is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt is compilable" >&5
+printf %s "checking if setsockopt is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38529,48 +41332,47 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_setsockopt="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_setsockopt="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt usage allowed" >&5
-$as_echo_n "checking if setsockopt usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt usage allowed" >&5
+printf %s "checking if setsockopt usage allowed... " >&6; }
     if test "x$curl_disallow_setsockopt" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_setsockopt="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_setsockopt="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt might be used" >&5
-$as_echo_n "checking if setsockopt might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt might be used" >&5
+printf %s "checking if setsockopt might be used... " >&6; }
   if test "$tst_links_setsockopt" = "yes" &&
      test "$tst_proto_setsockopt" = "yes" &&
      test "$tst_compi_setsockopt" = "yes" &&
      test "$tst_allow_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SETSOCKOPT 1
-_ACEOF
+printf "%s\n" "#define HAVE_SETSOCKOPT 1" >>confdefs.h
 
     curl_cv_func_setsockopt="yes"
 
@@ -38579,8 +41381,8 @@
   tst_allow_setsockopt_so_nonblock="unknown"
   #
   if test "$curl_cv_func_setsockopt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK is compilable" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK is compilable" >&5
+printf %s "checking if setsockopt SO_NONBLOCK is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38600,57 +41402,56 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_setsockopt_so_nonblock="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_setsockopt_so_nonblock="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_setsockopt_so_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK usage allowed" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK usage allowed" >&5
+printf %s "checking if setsockopt SO_NONBLOCK usage allowed... " >&6; }
     if test "x$curl_disallow_setsockopt_so_nonblock" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_setsockopt_so_nonblock="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_setsockopt_so_nonblock="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK might be used" >&5
-$as_echo_n "checking if setsockopt SO_NONBLOCK might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if setsockopt SO_NONBLOCK might be used" >&5
+printf %s "checking if setsockopt SO_NONBLOCK might be used... " >&6; }
   if test "$tst_compi_setsockopt_so_nonblock" = "yes" &&
      test "$tst_allow_setsockopt_so_nonblock" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SETSOCKOPT_SO_NONBLOCK 1
-_ACEOF
+printf "%s\n" "#define HAVE_SETSOCKOPT_SO_NONBLOCK 1" >>confdefs.h
 
     curl_cv_func_setsockopt_so_nonblock="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_setsockopt_so_nonblock="no"
   fi
 
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_setsockopt="no"
   fi
 
@@ -38664,19 +41465,20 @@
 #  include <signal.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h signal.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_signal
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_signal
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "signal.h" "ac_cv_header_signal_h" "$curl_includes_signal
+"
+if test "x$ac_cv_header_signal_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SIGNAL_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -38686,8 +41488,8 @@
   tst_compi_sigaction="unknown"
   tst_allow_sigaction="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction can be linked" >&5
-$as_echo_n "checking if sigaction can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigaction can be linked" >&5
+printf %s "checking if sigaction can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38715,25 +41517,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_sigaction="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_sigaction="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction is prototyped" >&5
-$as_echo_n "checking if sigaction is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigaction is prototyped" >&5
+printf %s "checking if sigaction is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38741,26 +41544,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigaction" >/dev/null 2>&1; then :
+  $EGREP "sigaction" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_sigaction="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_sigaction="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction is compilable" >&5
-$as_echo_n "checking if sigaction is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigaction is compilable" >&5
+printf %s "checking if sigaction is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38778,53 +41582,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_sigaction="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_sigaction="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction usage allowed" >&5
-$as_echo_n "checking if sigaction usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigaction usage allowed" >&5
+printf %s "checking if sigaction usage allowed... " >&6; }
     if test "x$curl_disallow_sigaction" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_sigaction="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_sigaction="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigaction might be used" >&5
-$as_echo_n "checking if sigaction might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigaction might be used" >&5
+printf %s "checking if sigaction might be used... " >&6; }
   if test "$tst_links_sigaction" = "yes" &&
      test "$tst_proto_sigaction" = "yes" &&
      test "$tst_compi_sigaction" = "yes" &&
      test "$tst_allow_sigaction" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGACTION 1
-_ACEOF
+printf "%s\n" "#define HAVE_SIGACTION 1" >>confdefs.h
 
     curl_cv_func_sigaction="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_sigaction="no"
   fi
 
@@ -38835,8 +41638,8 @@
   tst_compi_siginterrupt="unknown"
   tst_allow_siginterrupt="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt can be linked" >&5
-$as_echo_n "checking if siginterrupt can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if siginterrupt can be linked" >&5
+printf %s "checking if siginterrupt can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38864,25 +41667,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_siginterrupt="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_siginterrupt="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt is prototyped" >&5
-$as_echo_n "checking if siginterrupt is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if siginterrupt is prototyped" >&5
+printf %s "checking if siginterrupt is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38890,26 +41694,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "siginterrupt" >/dev/null 2>&1; then :
+  $EGREP "siginterrupt" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_siginterrupt="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_siginterrupt="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt is compilable" >&5
-$as_echo_n "checking if siginterrupt is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if siginterrupt is compilable" >&5
+printf %s "checking if siginterrupt is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -38927,53 +41732,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_siginterrupt="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_siginterrupt="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt usage allowed" >&5
-$as_echo_n "checking if siginterrupt usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if siginterrupt usage allowed" >&5
+printf %s "checking if siginterrupt usage allowed... " >&6; }
     if test "x$curl_disallow_siginterrupt" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_siginterrupt="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_siginterrupt="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if siginterrupt might be used" >&5
-$as_echo_n "checking if siginterrupt might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if siginterrupt might be used" >&5
+printf %s "checking if siginterrupt might be used... " >&6; }
   if test "$tst_links_siginterrupt" = "yes" &&
      test "$tst_proto_siginterrupt" = "yes" &&
      test "$tst_compi_siginterrupt" = "yes" &&
      test "$tst_allow_siginterrupt" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGINTERRUPT 1
-_ACEOF
+printf "%s\n" "#define HAVE_SIGINTERRUPT 1" >>confdefs.h
 
     curl_cv_func_siginterrupt="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_siginterrupt="no"
   fi
 
@@ -38984,8 +41788,8 @@
   tst_compi_signal="unknown"
   tst_allow_signal="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal can be linked" >&5
-$as_echo_n "checking if signal can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if signal can be linked" >&5
+printf %s "checking if signal can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39013,25 +41817,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_signal="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_signal="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal is prototyped" >&5
-$as_echo_n "checking if signal is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if signal is prototyped" >&5
+printf %s "checking if signal is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39039,26 +41844,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "signal" >/dev/null 2>&1; then :
+  $EGREP "signal" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_signal="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_signal="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal is compilable" >&5
-$as_echo_n "checking if signal is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if signal is compilable" >&5
+printf %s "checking if signal is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39076,53 +41882,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_signal="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_signal="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal usage allowed" >&5
-$as_echo_n "checking if signal usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if signal usage allowed" >&5
+printf %s "checking if signal usage allowed... " >&6; }
     if test "x$curl_disallow_signal" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_signal="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_signal="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if signal might be used" >&5
-$as_echo_n "checking if signal might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if signal might be used" >&5
+printf %s "checking if signal might be used... " >&6; }
   if test "$tst_links_signal" = "yes" &&
      test "$tst_proto_signal" = "yes" &&
      test "$tst_compi_signal" = "yes" &&
      test "$tst_allow_signal" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGNAL 1
-_ACEOF
+printf "%s\n" "#define HAVE_SIGNAL 1" >>confdefs.h
 
     curl_cv_func_signal="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_signal="no"
   fi
 
@@ -39136,19 +41941,20 @@
 #  include <setjmp.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h setjmp.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_setjmp
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_setjmp
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "setjmp.h" "ac_cv_header_setjmp_h" "$curl_includes_setjmp
+"
+if test "x$ac_cv_header_setjmp_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SETJMP_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -39159,8 +41965,8 @@
   tst_compi_sigsetjmp="unknown"
   tst_allow_sigsetjmp="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp can be linked" >&5
-$as_echo_n "checking if sigsetjmp can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp can be linked" >&5
+printf %s "checking if sigsetjmp can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39188,25 +41994,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_sigsetjmp="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_sigsetjmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_sigsetjmp" = "no"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp seems a macro" >&5
-$as_echo_n "checking if sigsetjmp seems a macro... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp seems a macro" >&5
+printf %s "checking if sigsetjmp seems a macro... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39225,26 +42032,27 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_macro_sigsetjmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_macro_sigsetjmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
   #
   if test "$tst_links_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp is prototyped" >&5
-$as_echo_n "checking if sigsetjmp is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp is prototyped" >&5
+printf %s "checking if sigsetjmp is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39252,27 +42060,28 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "sigsetjmp" >/dev/null 2>&1; then :
+  $EGREP "sigsetjmp" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_sigsetjmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_sigsetjmp="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_sigsetjmp" = "yes" ||
      test "$tst_macro_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp is compilable" >&5
-$as_echo_n "checking if sigsetjmp is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp is compilable" >&5
+printf %s "checking if sigsetjmp is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39291,53 +42100,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_sigsetjmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_sigsetjmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp usage allowed" >&5
-$as_echo_n "checking if sigsetjmp usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp usage allowed" >&5
+printf %s "checking if sigsetjmp usage allowed... " >&6; }
     if test "x$curl_disallow_sigsetjmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_sigsetjmp="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_sigsetjmp="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp might be used" >&5
-$as_echo_n "checking if sigsetjmp might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if sigsetjmp might be used" >&5
+printf %s "checking if sigsetjmp might be used... " >&6; }
   if (test "$tst_proto_sigsetjmp" = "yes" ||
       test "$tst_macro_sigsetjmp" = "yes") &&
      test "$tst_compi_sigsetjmp" = "yes" &&
      test "$tst_allow_sigsetjmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SIGSETJMP 1
-_ACEOF
+printf "%s\n" "#define HAVE_SIGSETJMP 1" >>confdefs.h
 
     curl_cv_func_sigsetjmp="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_sigsetjmp="no"
   fi
 
@@ -39348,8 +42156,8 @@
   tst_compi_socket="unknown"
   tst_allow_socket="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket can be linked" >&5
-$as_echo_n "checking if socket can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socket can be linked" >&5
+printf %s "checking if socket can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39370,25 +42178,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_socket="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_socket="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket is prototyped" >&5
-$as_echo_n "checking if socket is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socket is prototyped" >&5
+printf %s "checking if socket is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39399,26 +42208,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socket" >/dev/null 2>&1; then :
+  $EGREP "socket" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_socket="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_socket="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket is compilable" >&5
-$as_echo_n "checking if socket is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socket is compilable" >&5
+printf %s "checking if socket is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39439,53 +42249,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_socket="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_socket="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket usage allowed" >&5
-$as_echo_n "checking if socket usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socket usage allowed" >&5
+printf %s "checking if socket usage allowed... " >&6; }
     if test "x$curl_disallow_socket" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_socket="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_socket="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socket might be used" >&5
-$as_echo_n "checking if socket might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socket might be used" >&5
+printf %s "checking if socket might be used... " >&6; }
   if test "$tst_links_socket" = "yes" &&
      test "$tst_proto_socket" = "yes" &&
      test "$tst_compi_socket" = "yes" &&
      test "$tst_allow_socket" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SOCKET 1
-_ACEOF
+printf "%s\n" "#define HAVE_SOCKET 1" >>confdefs.h
 
     curl_cv_func_socket="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_socket="no"
   fi
 
@@ -39496,8 +42305,8 @@
   tst_compi_socketpair="unknown"
   tst_allow_socketpair="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socketpair can be linked" >&5
-$as_echo_n "checking if socketpair can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socketpair can be linked" >&5
+printf %s "checking if socketpair can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39525,25 +42334,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_socketpair="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_socketpair="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_socketpair" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socketpair is prototyped" >&5
-$as_echo_n "checking if socketpair is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socketpair is prototyped" >&5
+printf %s "checking if socketpair is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39552,26 +42362,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "socketpair" >/dev/null 2>&1; then :
+  $EGREP "socketpair" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_socketpair="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_socketpair="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_socketpair" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socketpair is compilable" >&5
-$as_echo_n "checking if socketpair is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socketpair is compilable" >&5
+printf %s "checking if socketpair is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39591,53 +42402,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_socketpair="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_socketpair="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_socketpair" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socketpair usage allowed" >&5
-$as_echo_n "checking if socketpair usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socketpair usage allowed" >&5
+printf %s "checking if socketpair usage allowed... " >&6; }
     if test "x$curl_disallow_socketpair" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_socketpair="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_socketpair="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if socketpair might be used" >&5
-$as_echo_n "checking if socketpair might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if socketpair might be used" >&5
+printf %s "checking if socketpair might be used... " >&6; }
   if test "$tst_links_socketpair" = "yes" &&
      test "$tst_proto_socketpair" = "yes" &&
      test "$tst_compi_socketpair" = "yes" &&
      test "$tst_allow_socketpair" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_SOCKETPAIR 1
-_ACEOF
+printf "%s\n" "#define HAVE_SOCKETPAIR 1" >>confdefs.h
 
     curl_cv_func_socketpair="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_socketpair="no"
   fi
 
@@ -39648,8 +42458,8 @@
   tst_compi_strcasecmp="unknown"
   tst_allow_strcasecmp="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp can be linked" >&5
-$as_echo_n "checking if strcasecmp can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcasecmp can be linked" >&5
+printf %s "checking if strcasecmp can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39677,25 +42487,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strcasecmp="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strcasecmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is prototyped" >&5
-$as_echo_n "checking if strcasecmp is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is prototyped" >&5
+printf %s "checking if strcasecmp is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39703,26 +42514,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strcasecmp" >/dev/null 2>&1; then :
+  $EGREP "strcasecmp" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strcasecmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strcasecmp="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is compilable" >&5
-$as_echo_n "checking if strcasecmp is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcasecmp is compilable" >&5
+printf %s "checking if strcasecmp is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39740,53 +42552,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strcasecmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strcasecmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp usage allowed" >&5
-$as_echo_n "checking if strcasecmp usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcasecmp usage allowed" >&5
+printf %s "checking if strcasecmp usage allowed... " >&6; }
     if test "x$curl_disallow_strcasecmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strcasecmp="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strcasecmp="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcasecmp might be used" >&5
-$as_echo_n "checking if strcasecmp might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcasecmp might be used" >&5
+printf %s "checking if strcasecmp might be used... " >&6; }
   if test "$tst_links_strcasecmp" = "yes" &&
      test "$tst_proto_strcasecmp" = "yes" &&
      test "$tst_compi_strcasecmp" = "yes" &&
      test "$tst_allow_strcasecmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCASECMP 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRCASECMP 1" >>confdefs.h
 
     curl_cv_func_strcasecmp="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strcasecmp="no"
   fi
 
@@ -39797,8 +42608,8 @@
   tst_compi_strcmpi="unknown"
   tst_allow_strcmpi="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi can be linked" >&5
-$as_echo_n "checking if strcmpi can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcmpi can be linked" >&5
+printf %s "checking if strcmpi can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39826,25 +42637,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strcmpi="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strcmpi="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi is prototyped" >&5
-$as_echo_n "checking if strcmpi is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcmpi is prototyped" >&5
+printf %s "checking if strcmpi is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39852,26 +42664,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strcmpi" >/dev/null 2>&1; then :
+  $EGREP "strcmpi" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strcmpi="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strcmpi="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi is compilable" >&5
-$as_echo_n "checking if strcmpi is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcmpi is compilable" >&5
+printf %s "checking if strcmpi is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39889,53 +42702,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strcmpi="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strcmpi="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi usage allowed" >&5
-$as_echo_n "checking if strcmpi usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcmpi usage allowed" >&5
+printf %s "checking if strcmpi usage allowed... " >&6; }
     if test "x$curl_disallow_strcmpi" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strcmpi="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strcmpi="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strcmpi might be used" >&5
-$as_echo_n "checking if strcmpi might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strcmpi might be used" >&5
+printf %s "checking if strcmpi might be used... " >&6; }
   if test "$tst_links_strcmpi" = "yes" &&
      test "$tst_proto_strcmpi" = "yes" &&
      test "$tst_compi_strcmpi" = "yes" &&
      test "$tst_allow_strcmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRCMPI 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRCMPI 1" >>confdefs.h
 
     curl_cv_func_strcmpi="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strcmpi="no"
   fi
 
@@ -39946,8 +42758,8 @@
   tst_compi_strdup="unknown"
   tst_allow_strdup="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup can be linked" >&5
-$as_echo_n "checking if strdup can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strdup can be linked" >&5
+printf %s "checking if strdup can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -39975,25 +42787,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strdup="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strdup="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup is prototyped" >&5
-$as_echo_n "checking if strdup is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strdup is prototyped" >&5
+printf %s "checking if strdup is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40001,26 +42814,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strdup" >/dev/null 2>&1; then :
+  $EGREP "strdup" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strdup="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strdup="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup is compilable" >&5
-$as_echo_n "checking if strdup is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strdup is compilable" >&5
+printf %s "checking if strdup is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40038,53 +42852,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strdup="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strdup="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup usage allowed" >&5
-$as_echo_n "checking if strdup usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strdup usage allowed" >&5
+printf %s "checking if strdup usage allowed... " >&6; }
     if test "x$curl_disallow_strdup" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strdup="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strdup="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strdup might be used" >&5
-$as_echo_n "checking if strdup might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strdup might be used" >&5
+printf %s "checking if strdup might be used... " >&6; }
   if test "$tst_links_strdup" = "yes" &&
      test "$tst_proto_strdup" = "yes" &&
      test "$tst_compi_strdup" = "yes" &&
      test "$tst_allow_strdup" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRDUP 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRDUP 1" >>confdefs.h
 
     curl_cv_func_strdup="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strdup="no"
   fi
 
@@ -40101,8 +42914,8 @@
   tst_glibc_strerror_r_type_arg3="unknown"
   tst_posix_strerror_r_type_arg3="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r can be linked" >&5
-$as_echo_n "checking if strerror_r can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r can be linked" >&5
+printf %s "checking if strerror_r can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40130,25 +42943,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strerror_r="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strerror_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is prototyped" >&5
-$as_echo_n "checking if strerror_r is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r is prototyped" >&5
+printf %s "checking if strerror_r is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40156,26 +42970,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strerror_r" >/dev/null 2>&1; then :
+  $EGREP "strerror_r" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strerror_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strerror_r="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is compilable" >&5
-$as_echo_n "checking if strerror_r is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r is compilable" >&5
+printf %s "checking if strerror_r is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40193,25 +43008,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strerror_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strerror_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is glibc like" >&5
-$as_echo_n "checking if strerror_r is glibc like... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r is glibc like" >&5
+printf %s "checking if strerror_r is glibc like... " >&6; }
     tst_glibc_strerror_r_type_arg3="unknown"
     for arg3 in 'size_t' 'int' 'unsigned int'; do
       if test "$tst_glibc_strerror_r_type_arg3" = "unknown"; then
@@ -40233,23 +43049,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
           tst_glibc_strerror_r_type_arg3="$arg3"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
       fi
     done
     case "$tst_glibc_strerror_r_type_arg3" in
       unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         tst_glibc_strerror_r="no"
         ;;
       *)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         tst_glibc_strerror_r="yes"
         ;;
     esac
@@ -40257,18 +43074,19 @@
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_glibc_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r seems to work" >&5
-$as_echo_n "checking if strerror_r seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r seems to work" >&5
+printf %s "checking if strerror_r seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40296,14 +43114,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_glibc_strerror_r="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_glibc_strerror_r="no"
 
 fi
@@ -40317,8 +43136,8 @@
   #
   if test "$tst_compi_strerror_r" = "yes" &&
     test "$tst_works_glibc_strerror_r" != "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r is POSIX like" >&5
-$as_echo_n "checking if strerror_r is POSIX like... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r is POSIX like" >&5
+printf %s "checking if strerror_r is POSIX like... " >&6; }
     tst_posix_strerror_r_type_arg3="unknown"
     for arg3 in 'size_t' 'int' 'unsigned int'; do
       if test "$tst_posix_strerror_r_type_arg3" = "unknown"; then
@@ -40340,23 +43159,24 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
           tst_posix_strerror_r_type_arg3="$arg3"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
       fi
     done
     case "$tst_posix_strerror_r_type_arg3" in
       unknown)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         tst_posix_strerror_r="no"
         ;;
       *)
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
         tst_posix_strerror_r="yes"
         ;;
     esac
@@ -40364,18 +43184,19 @@
   #
     if test "x$cross_compiling" != "xyes" &&
     test "$tst_posix_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r seems to work" >&5
-$as_echo_n "checking if strerror_r seems to work... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r seems to work" >&5
+printf %s "checking if strerror_r seems to work... " >&6; }
 
    old=$LD_LIBRARY_PATH
    LD_LIBRARY_PATH=$CURL_LIBRARY_PATH:$old
    export LD_LIBRARY_PATH
-   if test "$cross_compiling" = yes; then :
-  { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+   if test "$cross_compiling" = yes
+then :
+  { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "cannot run test program while cross compiling
 See \`config.log' for more details" "$LINENO" 5; }
-else
+else $as_nop
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40403,14 +43224,15 @@
 }
 
 _ACEOF
-if ac_fn_c_try_run "$LINENO"; then :
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+if ac_fn_c_try_run "$LINENO"
+then :
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_works_posix_strerror_r="yes"
 
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_works_posix_strerror_r="no"
 
 fi
@@ -40439,72 +43261,60 @@
     tst_allow_strerror_r="check"
   fi
   if test "$tst_allow_strerror_r" = "check"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r usage allowed" >&5
-$as_echo_n "checking if strerror_r usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r usage allowed" >&5
+printf %s "checking if strerror_r usage allowed... " >&6; }
     if test "x$curl_disallow_strerror_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strerror_r="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strerror_r="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strerror_r might be used" >&5
-$as_echo_n "checking if strerror_r might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strerror_r might be used" >&5
+printf %s "checking if strerror_r might be used... " >&6; }
   if test "$tst_links_strerror_r" = "yes" &&
      test "$tst_proto_strerror_r" = "yes" &&
      test "$tst_compi_strerror_r" = "yes" &&
      test "$tst_allow_strerror_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     if test "$tst_glibc_strerror_r" = "yes"; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRERROR_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRERROR_R 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_GLIBC_STRERROR_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_GLIBC_STRERROR_R 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define STRERROR_R_TYPE_ARG3 $tst_glibc_strerror_r_type_arg3
-_ACEOF
+printf "%s\n" "#define STRERROR_R_TYPE_ARG3 $tst_glibc_strerror_r_type_arg3" >>confdefs.h
 
     fi
     if test "$tst_posix_strerror_r" = "yes"; then
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRERROR_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRERROR_R 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_POSIX_STRERROR_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_POSIX_STRERROR_R 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define STRERROR_R_TYPE_ARG3 $tst_posix_strerror_r_type_arg3
-_ACEOF
+printf "%s\n" "#define STRERROR_R_TYPE_ARG3 $tst_posix_strerror_r_type_arg3" >>confdefs.h
 
     fi
     curl_cv_func_strerror_r="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strerror_r="no"
   fi
   #
   if test "$tst_compi_strerror_r" = "yes" &&
      test "$tst_allow_strerror_r" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine strerror_r() style: edit lib/curl_config.h manually." >&5
-$as_echo "$as_me: WARNING: cannot determine strerror_r() style: edit lib/curl_config.h manually." >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine strerror_r() style: edit lib/curl_config.h manually." >&5
+printf "%s\n" "$as_me: WARNING: cannot determine strerror_r() style: edit lib/curl_config.h manually." >&2;}
   fi
   #
 
@@ -40515,8 +43325,8 @@
   tst_compi_stricmp="unknown"
   tst_allow_stricmp="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp can be linked" >&5
-$as_echo_n "checking if stricmp can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if stricmp can be linked" >&5
+printf %s "checking if stricmp can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40544,25 +43354,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_stricmp="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_stricmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp is prototyped" >&5
-$as_echo_n "checking if stricmp is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if stricmp is prototyped" >&5
+printf %s "checking if stricmp is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40570,26 +43381,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "stricmp" >/dev/null 2>&1; then :
+  $EGREP "stricmp" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_stricmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_stricmp="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp is compilable" >&5
-$as_echo_n "checking if stricmp is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if stricmp is compilable" >&5
+printf %s "checking if stricmp is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40607,53 +43419,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_stricmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_stricmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp usage allowed" >&5
-$as_echo_n "checking if stricmp usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if stricmp usage allowed" >&5
+printf %s "checking if stricmp usage allowed... " >&6; }
     if test "x$curl_disallow_stricmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_stricmp="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_stricmp="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if stricmp might be used" >&5
-$as_echo_n "checking if stricmp might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if stricmp might be used" >&5
+printf %s "checking if stricmp might be used... " >&6; }
   if test "$tst_links_stricmp" = "yes" &&
      test "$tst_proto_stricmp" = "yes" &&
      test "$tst_compi_stricmp" = "yes" &&
      test "$tst_allow_stricmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRICMP 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRICMP 1" >>confdefs.h
 
     curl_cv_func_stricmp="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_stricmp="no"
   fi
 
@@ -40664,8 +43475,8 @@
   tst_compi_strncmpi="unknown"
   tst_allow_strncmpi="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi can be linked" >&5
-$as_echo_n "checking if strncmpi can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strncmpi can be linked" >&5
+printf %s "checking if strncmpi can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40693,25 +43504,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strncmpi="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strncmpi="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi is prototyped" >&5
-$as_echo_n "checking if strncmpi is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strncmpi is prototyped" >&5
+printf %s "checking if strncmpi is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40719,26 +43531,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strncmpi" >/dev/null 2>&1; then :
+  $EGREP "strncmpi" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strncmpi="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strncmpi="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi is compilable" >&5
-$as_echo_n "checking if strncmpi is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strncmpi is compilable" >&5
+printf %s "checking if strncmpi is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40756,53 +43569,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strncmpi="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strncmpi="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi usage allowed" >&5
-$as_echo_n "checking if strncmpi usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strncmpi usage allowed" >&5
+printf %s "checking if strncmpi usage allowed... " >&6; }
     if test "x$curl_disallow_strncmpi" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strncmpi="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strncmpi="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strncmpi might be used" >&5
-$as_echo_n "checking if strncmpi might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strncmpi might be used" >&5
+printf %s "checking if strncmpi might be used... " >&6; }
   if test "$tst_links_strncmpi" = "yes" &&
      test "$tst_proto_strncmpi" = "yes" &&
      test "$tst_compi_strncmpi" = "yes" &&
      test "$tst_allow_strncmpi" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNCMPI 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRNCMPI 1" >>confdefs.h
 
     curl_cv_func_strncmpi="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strncmpi="no"
   fi
 
@@ -40813,8 +43625,8 @@
   tst_compi_strnicmp="unknown"
   tst_allow_strnicmp="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp can be linked" >&5
-$as_echo_n "checking if strnicmp can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strnicmp can be linked" >&5
+printf %s "checking if strnicmp can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40842,25 +43654,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strnicmp="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strnicmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp is prototyped" >&5
-$as_echo_n "checking if strnicmp is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strnicmp is prototyped" >&5
+printf %s "checking if strnicmp is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40868,26 +43681,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strnicmp" >/dev/null 2>&1; then :
+  $EGREP "strnicmp" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strnicmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strnicmp="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp is compilable" >&5
-$as_echo_n "checking if strnicmp is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strnicmp is compilable" >&5
+printf %s "checking if strnicmp is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40905,53 +43719,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strnicmp="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strnicmp="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp usage allowed" >&5
-$as_echo_n "checking if strnicmp usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strnicmp usage allowed" >&5
+printf %s "checking if strnicmp usage allowed... " >&6; }
     if test "x$curl_disallow_strnicmp" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strnicmp="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strnicmp="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strnicmp might be used" >&5
-$as_echo_n "checking if strnicmp might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strnicmp might be used" >&5
+printf %s "checking if strnicmp might be used... " >&6; }
   if test "$tst_links_strnicmp" = "yes" &&
      test "$tst_proto_strnicmp" = "yes" &&
      test "$tst_compi_strnicmp" = "yes" &&
      test "$tst_allow_strnicmp" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRNICMP 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRNICMP 1" >>confdefs.h
 
     curl_cv_func_strnicmp="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strnicmp="no"
   fi
 
@@ -40962,8 +43775,8 @@
   tst_compi_strstr="unknown"
   tst_allow_strstr="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr can be linked" >&5
-$as_echo_n "checking if strstr can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strstr can be linked" >&5
+printf %s "checking if strstr can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -40991,25 +43804,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strstr="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strstr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr is prototyped" >&5
-$as_echo_n "checking if strstr is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strstr is prototyped" >&5
+printf %s "checking if strstr is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41017,26 +43831,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strstr" >/dev/null 2>&1; then :
+  $EGREP "strstr" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strstr="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strstr="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr is compilable" >&5
-$as_echo_n "checking if strstr is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strstr is compilable" >&5
+printf %s "checking if strstr is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41054,53 +43869,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strstr="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strstr="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr usage allowed" >&5
-$as_echo_n "checking if strstr usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strstr usage allowed" >&5
+printf %s "checking if strstr usage allowed... " >&6; }
     if test "x$curl_disallow_strstr" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strstr="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strstr="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strstr might be used" >&5
-$as_echo_n "checking if strstr might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strstr might be used" >&5
+printf %s "checking if strstr might be used... " >&6; }
   if test "$tst_links_strstr" = "yes" &&
      test "$tst_proto_strstr" = "yes" &&
      test "$tst_compi_strstr" = "yes" &&
      test "$tst_allow_strstr" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRSTR 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRSTR 1" >>confdefs.h
 
     curl_cv_func_strstr="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strstr="no"
   fi
 
@@ -41111,8 +43925,8 @@
   tst_compi_strtok_r="unknown"
   tst_allow_strtok_r="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r can be linked" >&5
-$as_echo_n "checking if strtok_r can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtok_r can be linked" >&5
+printf %s "checking if strtok_r can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41140,25 +43954,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strtok_r="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strtok_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r is prototyped" >&5
-$as_echo_n "checking if strtok_r is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtok_r is prototyped" >&5
+printf %s "checking if strtok_r is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41166,26 +43981,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtok_r" >/dev/null 2>&1; then :
+  $EGREP "strtok_r" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strtok_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strtok_r="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r is compilable" >&5
-$as_echo_n "checking if strtok_r is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtok_r is compilable" >&5
+printf %s "checking if strtok_r is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41203,53 +44019,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strtok_r="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strtok_r="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r usage allowed" >&5
-$as_echo_n "checking if strtok_r usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtok_r usage allowed" >&5
+printf %s "checking if strtok_r usage allowed... " >&6; }
     if test "x$curl_disallow_strtok_r" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strtok_r="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strtok_r="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtok_r might be used" >&5
-$as_echo_n "checking if strtok_r might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtok_r might be used" >&5
+printf %s "checking if strtok_r might be used... " >&6; }
   if test "$tst_links_strtok_r" = "yes" &&
      test "$tst_proto_strtok_r" = "yes" &&
      test "$tst_compi_strtok_r" = "yes" &&
      test "$tst_allow_strtok_r" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRTOK_R 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRTOK_R 1" >>confdefs.h
 
     curl_cv_func_strtok_r="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strtok_r="no"
   fi
 
@@ -41260,8 +44075,8 @@
   tst_compi_strtoll="unknown"
   tst_allow_strtoll="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll can be linked" >&5
-$as_echo_n "checking if strtoll can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtoll can be linked" >&5
+printf %s "checking if strtoll can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41289,25 +44104,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_strtoll="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_strtoll="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll is prototyped" >&5
-$as_echo_n "checking if strtoll is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtoll is prototyped" >&5
+printf %s "checking if strtoll is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41315,26 +44131,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "strtoll" >/dev/null 2>&1; then :
+  $EGREP "strtoll" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_strtoll="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_strtoll="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll is compilable" >&5
-$as_echo_n "checking if strtoll is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtoll is compilable" >&5
+printf %s "checking if strtoll is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41352,53 +44169,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_strtoll="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_strtoll="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll usage allowed" >&5
-$as_echo_n "checking if strtoll usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtoll usage allowed" >&5
+printf %s "checking if strtoll usage allowed... " >&6; }
     if test "x$curl_disallow_strtoll" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_strtoll="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_strtoll="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if strtoll might be used" >&5
-$as_echo_n "checking if strtoll might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if strtoll might be used" >&5
+printf %s "checking if strtoll might be used... " >&6; }
   if test "$tst_links_strtoll" = "yes" &&
      test "$tst_proto_strtoll" = "yes" &&
      test "$tst_compi_strtoll" = "yes" &&
      test "$tst_allow_strtoll" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_STRTOLL 1
-_ACEOF
+printf "%s\n" "#define HAVE_STRTOLL 1" >>confdefs.h
 
     curl_cv_func_strtoll="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_strtoll="no"
   fi
 
@@ -41412,19 +44228,20 @@
 #  include <sys/uio.h>
 #endif
 /* includes end */"
-  for ac_header in sys/types.h sys/uio.h
-do :
-  as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh`
-ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$curl_includes_sys_uio
+  ac_fn_c_check_header_compile "$LINENO" "sys/types.h" "ac_cv_header_sys_types_h" "$curl_includes_sys_uio
 "
-if eval test \"x\$"$as_ac_Header"\" = x"yes"; then :
-  cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1
-_ACEOF
+if test "x$ac_cv_header_sys_types_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_TYPES_H 1" >>confdefs.h
 
 fi
+ac_fn_c_check_header_compile "$LINENO" "sys/uio.h" "ac_cv_header_sys_uio_h" "$curl_includes_sys_uio
+"
+if test "x$ac_cv_header_sys_uio_h" = xyes
+then :
+  printf "%s\n" "#define HAVE_SYS_UIO_H 1" >>confdefs.h
 
-done
+fi
 
 
 
@@ -41434,8 +44251,8 @@
   tst_compi_writev="unknown"
   tst_allow_writev="unknown"
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev can be linked" >&5
-$as_echo_n "checking if writev can be linked... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if writev can be linked" >&5
+printf %s "checking if writev can be linked... " >&6; }
   cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41463,25 +44280,26 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tst_links_writev="yes"
 
-else
+else $as_nop
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     tst_links_writev="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   #
   if test "$tst_links_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev is prototyped" >&5
-$as_echo_n "checking if writev is prototyped... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if writev is prototyped" >&5
+printf %s "checking if writev is prototyped... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41489,26 +44307,27 @@
 
 _ACEOF
 if (eval "$ac_cpp conftest.$ac_ext") 2>&5 |
-  $EGREP "writev" >/dev/null 2>&1; then :
+  $EGREP "writev" >/dev/null 2>&1
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_proto_writev="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_proto_writev="no"
 
 fi
-rm -f conftest*
+rm -rf conftest*
 
   fi
   #
   if test "$tst_proto_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev is compilable" >&5
-$as_echo_n "checking if writev is compilable... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if writev is compilable" >&5
+printf %s "checking if writev is compilable... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41526,53 +44345,52 @@
 }
 
 _ACEOF
-if ac_fn_c_try_compile "$LINENO"; then :
+if ac_fn_c_try_compile "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_compi_writev="yes"
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_compi_writev="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
   fi
   #
   if test "$tst_compi_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev usage allowed" >&5
-$as_echo_n "checking if writev usage allowed... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if writev usage allowed" >&5
+printf %s "checking if writev usage allowed... " >&6; }
     if test "x$curl_disallow_writev" != "xyes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       tst_allow_writev="yes"
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       tst_allow_writev="no"
     fi
   fi
   #
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking if writev might be used" >&5
-$as_echo_n "checking if writev might be used... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking if writev might be used" >&5
+printf %s "checking if writev might be used... " >&6; }
   if test "$tst_links_writev" = "yes" &&
      test "$tst_proto_writev" = "yes" &&
      test "$tst_compi_writev" = "yes" &&
      test "$tst_allow_writev" = "yes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_WRITEV 1
-_ACEOF
+printf "%s\n" "#define HAVE_WRITEV 1" >>confdefs.h
 
     curl_cv_func_writev="yes"
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
     curl_cv_func_writev="no"
   fi
 
@@ -41581,67 +44399,129 @@
   *msdosdjgpp)
      ac_cv_func_pipe=no
      skipcheck_pipe=yes
-     { $as_echo "$as_me:${as_lineno-$LINENO}: skip check for pipe on msdosdjgpp" >&5
-$as_echo "$as_me: skip check for pipe on msdosdjgpp" >&6;}
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: skip check for pipe on msdosdjgpp" >&5
+printf "%s\n" "$as_me: skip check for pipe on msdosdjgpp" >&6;}
     ;;
 esac
 
-ac_fn_c_check_decl "$LINENO" "getpwuid_r" "ac_cv_have_decl_getpwuid_r" "#include <pwd.h>
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $CC options needed to detect all undeclared functions" >&5
+printf %s "checking for $CC options needed to detect all undeclared functions... " >&6; }
+if test ${ac_cv_c_undeclared_builtin_options+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
+  ac_save_CFLAGS=$CFLAGS
+   ac_cv_c_undeclared_builtin_options='cannot detect'
+   for ac_arg in '' -fno-builtin; do
+     CFLAGS="$ac_save_CFLAGS $ac_arg"
+     # This test program should *not* compile successfully.
+     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+
+int main (void)
+{
+(void) strchr;
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+
+else $as_nop
+  # This test program should compile successfully.
+        # No library function is consistently available on
+        # freestanding implementations, so test against a dummy
+        # declaration.  Include always-available headers on the
+        # off chance that they somehow elicit warnings.
+        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <float.h>
+#include <limits.h>
+#include <stdarg.h>
+#include <stddef.h>
+extern void ac_decl (int, char *);
+
+int main (void)
+{
+(void) ac_decl (0, (char *) 0);
+  (void) ac_decl;
+
+ ;
+ return 0;
+}
+_ACEOF
+if ac_fn_c_try_compile "$LINENO"
+then :
+  if test x"$ac_arg" = x
+then :
+  ac_cv_c_undeclared_builtin_options='none needed'
+else $as_nop
+  ac_cv_c_undeclared_builtin_options=$ac_arg
+fi
+          break
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+rm -f core conftest.err conftest.$ac_objext conftest.beam conftest.$ac_ext
+    done
+    CFLAGS=$ac_save_CFLAGS
+
+fi
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_undeclared_builtin_options" >&5
+printf "%s\n" "$ac_cv_c_undeclared_builtin_options" >&6; }
+  case $ac_cv_c_undeclared_builtin_options in #(
+  'cannot detect') :
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "cannot make $CC report undeclared builtins
+See \`config.log' for more details" "$LINENO" 5; } ;; #(
+  'none needed') :
+    ac_c_undeclared_builtin_options='' ;; #(
+  *) :
+    ac_c_undeclared_builtin_options=$ac_cv_c_undeclared_builtin_options ;;
+esac
+
+ac_fn_check_decl "$LINENO" "getpwuid_r" "ac_cv_have_decl_getpwuid_r" "#include <pwd.h>
           #include <sys/types.h>
-"
-if test "x$ac_cv_have_decl_getpwuid_r" = xyes; then :
+" "$ac_c_undeclared_builtin_options" "CFLAGS"
+if test "x$ac_cv_have_decl_getpwuid_r" = xyes
+then :
   ac_have_decl=1
-else
+else $as_nop
   ac_have_decl=0
 fi
+printf "%s\n" "#define HAVE_DECL_GETPWUID_R $ac_have_decl" >>confdefs.h
+if test $ac_have_decl = 1
+then :
 
-cat >>confdefs.h <<_ACEOF
-#define HAVE_DECL_GETPWUID_R $ac_have_decl
-_ACEOF
-if test $ac_have_decl = 1; then :
+else $as_nop
 
-else
-
-$as_echo "#define HAVE_DECL_GETPWUID_R_MISSING 1" >>confdefs.h
+printf "%s\n" "#define HAVE_DECL_GETPWUID_R_MISSING 1" >>confdefs.h
 
 fi
 
 
 
-for ac_func in fnmatch \
-  geteuid \
-  getpass_r \
-  getppid \
-  getpwuid \
-  getpwuid_r \
-  getrlimit \
-  gettimeofday \
-  if_nametoindex \
-  mach_absolute_time \
-  pipe \
-  setlocale \
-  setmode \
-  setrlimit \
-  usleep \
-  utime \
-  utimes
 
+  for ac_func in fnmatch geteuid getpass_r getppid getpwuid getpwuid_r getrlimit gettimeofday if_nametoindex mach_absolute_time pipe setlocale setmode setrlimit usleep utime utimes
 do :
-  as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh`
+  as_ac_var=`printf "%s\n" "ac_cv_func_$ac_func" | $as_tr_sh`
 ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var"
-if eval test \"x\$"$as_ac_var"\" = x"yes"; then :
+if eval test \"x\$"$as_ac_var"\" = x"yes"
+then :
   cat >>confdefs.h <<_ACEOF
-#define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1
+#define `printf "%s\n" "HAVE_$ac_func" | $as_tr_cpp` 1
 _ACEOF
 
 
-else
+else $as_nop
 
   func="$ac_func"
   eval skipcheck=\$skipcheck_$func
   if test "x$skipcheck" != "xyes"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: checking deeper for $func" >&5
-$as_echo_n "checking deeper for $func... " >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking deeper for $func" >&5
+printf %s "checking deeper for $func... " >&6; }
     cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -41657,10 +44537,11 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
       eval "ac_cv_func_$func=yes"
 
 cat >>confdefs.h <<_ACEOF
@@ -41668,26 +44549,26 @@
 _ACEOF
 
 
-else
+else $as_nop
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
-$as_echo "but still no" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: but still no" >&5
+printf "%s\n" "but still no" >&6; }
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
   fi
 
 fi
-done
 
+done
 
 
             #
   tst_method="unknown"
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to set a socket into non-blocking mode" >&5
-$as_echo_n "checking how to set a socket into non-blocking mode... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to set a socket into non-blocking mode" >&5
+printf %s "checking how to set a socket into non-blocking mode... " >&6; }
   if test "x$curl_cv_func_fcntl_o_nonblock" = "xyes"; then
     tst_method="fcntl O_NONBLOCK"
   elif test "x$curl_cv_func_ioctl_fionbio" = "xyes"; then
@@ -41699,22 +44580,23 @@
   elif test "x$curl_cv_func_setsockopt_so_nonblock" = "xyes"; then
     tst_method="setsockopt SO_NONBLOCK"
   fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $tst_method" >&5
-$as_echo "$tst_method" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $tst_method" >&5
+printf "%s\n" "$tst_method" >&6; }
   if test "$tst_method" = "unknown"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine non-blocking socket method." >&5
-$as_echo "$as_me: WARNING: cannot determine non-blocking socket method." >&2;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cannot determine non-blocking socket method." >&5
+printf "%s\n" "$as_me: WARNING: cannot determine non-blocking socket method." >&2;}
   fi
 
 
 
 # Extract the first word of "perl", so it can be a program name with args.
 set dummy perl; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PERL+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PERL+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PERL in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PERL="$PERL" # Let the user override the test with a path.
@@ -41725,11 +44607,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PERL="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PERL="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -41741,11 +44627,11 @@
 fi
 PERL=$ac_cv_path_PERL
 if test -n "$PERL"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
-$as_echo "$PERL" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PERL" >&5
+printf "%s\n" "$PERL" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -41755,11 +44641,12 @@
 do
   # Extract the first word of "$ac_prog", so it can be a program name with args.
 set dummy $ac_prog; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_NROFF+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_NROFF+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $NROFF in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_NROFF="$NROFF" # Let the user override the test with a path.
@@ -41770,11 +44657,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_NROFF="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_NROFF="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -41786,11 +44677,11 @@
 fi
 NROFF=$ac_cv_path_NROFF
 if test -n "$NROFF"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5
-$as_echo "$NROFF" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $NROFF" >&5
+printf "%s\n" "$NROFF" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -41801,8 +44692,8 @@
 
 if test -n "$NROFF"; then
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking how to use *nroff to get plain text from man pages" >&5
-$as_echo_n "checking how to use *nroff to get plain text from man pages... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking how to use *nroff to get plain text from man pages" >&5
+printf %s "checking how to use *nroff to get plain text from man pages... " >&6; }
   MANOPT="-man"
   mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
   if test -z "$mancheck"; then
@@ -41810,32 +44701,32 @@
    mancheck=`echo foo | $NROFF $MANOPT 2>/dev/null`
     if test -z "$mancheck"; then
       MANOPT=""
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: failed" >&5
-$as_echo "failed" >&6; }
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: found no *nroff option to get plaintext from man pages" >&5
-$as_echo "$as_me: WARNING: found no *nroff option to get plaintext from man pages" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: failed" >&5
+printf "%s\n" "failed" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: found no *nroff option to get plaintext from man pages" >&5
+printf "%s\n" "$as_me: WARNING: found no *nroff option to get plaintext from man pages" >&2;}
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANOPT" >&5
-$as_echo "$MANOPT" >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANOPT" >&5
+printf "%s\n" "$MANOPT" >&6; }
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MANOPT" >&5
-$as_echo "$MANOPT" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $MANOPT" >&5
+printf "%s\n" "$MANOPT" >&6; }
   fi
 
 fi
 
 if test -z "$MANOPT"
 then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: disabling built-in manual" >&5
-$as_echo "$as_me: WARNING: disabling built-in manual" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: disabling built-in manual" >&5
+printf "%s\n" "$as_me: WARNING: disabling built-in manual" >&2;}
   USE_MANUAL="no";
 fi
 
 
 if test "$USE_MANUAL" = "1"; then
 
-$as_echo "#define USE_MANUAL 1" >>confdefs.h
+printf "%s\n" "#define USE_MANUAL 1" >>confdefs.h
 
   curl_manual_msg="enabled"
 fi
@@ -41869,11 +44760,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -41884,11 +44776,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -41900,11 +44796,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -41913,11 +44809,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -41928,11 +44825,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -41944,11 +44845,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -41956,8 +44857,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -41969,8 +44870,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libcares options with pkg-config" >&5
-$as_echo_n "checking for libcares options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libcares options with pkg-config" >&5
+printf %s "checking for libcares options with pkg-config... " >&6; }
             itexists=`
     if test -n "$ARES_PCDIR"; then
       PKG_CONFIG_LIBDIR="$ARES_PCDIR"
@@ -41980,11 +44881,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -42010,12 +44911,12 @@
     fi
 
           $PKGCONFIG --cflags-only-I libcares`
-        { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: ares LIBS: \"$ares_LIBS\"" >&5
-$as_echo "$as_me: pkg-config: ares LIBS: \"$ares_LIBS\"" >&6;}
-        { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: ares LDFLAGS: \"$ares_LDFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: ares LDFLAGS: \"$ares_LDFLAGS\"" >&6;}
-        { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: ares CPPFLAGS: \"$ares_CPPFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: ares CPPFLAGS: \"$ares_CPPFLAGS\"" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: ares LIBS: \"$ares_LIBS\"" >&5
+printf "%s\n" "$as_me: pkg-config: ares LIBS: \"$ares_LIBS\"" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: ares LDFLAGS: \"$ares_LDFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: ares LDFLAGS: \"$ares_LDFLAGS\"" >&6;}
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: ares CPPFLAGS: \"$ares_CPPFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: ares CPPFLAGS: \"$ares_CPPFLAGS\"" >&6;}
       else
                 ares_CPPFLAGS="-I$want_ares_path/include"
         ares_LDFLAGS="-L$want_ares_path/lib"
@@ -42037,11 +44938,12 @@
       if test -n "$ac_tool_prefix"; then
   # Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
 set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_PKGCONFIG="$PKGCONFIG" # Let the user override the test with a path.
@@ -42052,11 +44954,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -42068,11 +44974,11 @@
 fi
 PKGCONFIG=$ac_cv_path_PKGCONFIG
 if test -n "$PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
-$as_echo "$PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $PKGCONFIG" >&5
+printf "%s\n" "$PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
 
@@ -42081,11 +44987,12 @@
   ac_pt_PKGCONFIG=$PKGCONFIG
   # Extract the first word of "pkg-config", so it can be a program name with args.
 set dummy pkg-config; ac_word=$2
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
-$as_echo_n "checking for $ac_word... " >&6; }
-if ${ac_cv_path_ac_pt_PKGCONFIG+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5
+printf %s "checking for $ac_word... " >&6; }
+if test ${ac_cv_path_ac_pt_PKGCONFIG+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   case $ac_pt_PKGCONFIG in
   [\\/]* | ?:[\\/]*)
   ac_cv_path_ac_pt_PKGCONFIG="$ac_pt_PKGCONFIG" # Let the user override the test with a path.
@@ -42096,11 +45003,15 @@
 for as_dir in $as_dummy
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
     for ac_exec_ext in '' $ac_executable_extensions; do
-  if as_fn_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
-    ac_cv_path_ac_pt_PKGCONFIG="$as_dir/$ac_word$ac_exec_ext"
-    $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5
+  if as_fn_executable_p "$as_dir$ac_word$ac_exec_ext"; then
+    ac_cv_path_ac_pt_PKGCONFIG="$as_dir$ac_word$ac_exec_ext"
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: found $as_dir$ac_word$ac_exec_ext" >&5
     break 2
   fi
 done
@@ -42112,11 +45023,11 @@
 fi
 ac_pt_PKGCONFIG=$ac_cv_path_ac_pt_PKGCONFIG
 if test -n "$ac_pt_PKGCONFIG"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
-$as_echo "$ac_pt_PKGCONFIG" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_pt_PKGCONFIG" >&5
+printf "%s\n" "$ac_pt_PKGCONFIG" >&6; }
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 fi
 
   if test "x$ac_pt_PKGCONFIG" = x; then
@@ -42124,8 +45035,8 @@
   else
     case $cross_compiling:$ac_tool_warned in
 yes:)
-{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
-$as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5
+printf "%s\n" "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;}
 ac_tool_warned=yes ;;
 esac
     PKGCONFIG=$ac_pt_PKGCONFIG
@@ -42137,8 +45048,8 @@
     fi
 
     if test "x$PKGCONFIG" != "xno"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for libcares options with pkg-config" >&5
-$as_echo_n "checking for libcares options with pkg-config... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for libcares options with pkg-config" >&5
+printf %s "checking for libcares options with pkg-config... " >&6; }
             itexists=`
     if test -n ""; then
       PKG_CONFIG_LIBDIR=""
@@ -42148,11 +45059,11 @@
 
       if test -z "$itexists"; then
                         PKGCONFIG="no"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
       else
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: found" >&5
-$as_echo "found" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: found" >&5
+printf "%s\n" "found" >&6; }
       fi
     fi
 
@@ -42160,12 +45071,12 @@
           ares_LIBS=`$PKGCONFIG --libs-only-l libcares`
           ares_LDFLAGS=`$PKGCONFIG --libs-only-L libcares`
           ares_CPPFLAGS=`$PKGCONFIG --cflags-only-I libcares`
-          { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: ares_LIBS: \"$ares_LIBS\"" >&5
-$as_echo "$as_me: pkg-config: ares_LIBS: \"$ares_LIBS\"" >&6;}
-          { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: ares_LDFLAGS: \"$ares_LDFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: ares_LDFLAGS: \"$ares_LDFLAGS\"" >&6;}
-          { $as_echo "$as_me:${as_lineno-$LINENO}: pkg-config: ares_CPPFLAGS: \"$ares_CPPFLAGS\"" >&5
-$as_echo "$as_me: pkg-config: ares_CPPFLAGS: \"$ares_CPPFLAGS\"" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: ares_LIBS: \"$ares_LIBS\"" >&5
+printf "%s\n" "$as_me: pkg-config: ares_LIBS: \"$ares_LIBS\"" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: ares_LDFLAGS: \"$ares_LDFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: ares_LDFLAGS: \"$ares_LDFLAGS\"" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: pkg-config: ares_CPPFLAGS: \"$ares_CPPFLAGS\"" >&5
+printf "%s\n" "$as_me: pkg-config: ares_CPPFLAGS: \"$ares_CPPFLAGS\"" >&6;}
         else
           ares_CPPFLAGS=""
           ares_LDFLAGS=""
@@ -42179,8 +45090,8 @@
     LIBS="$ares_LIBS $clean_LIBS"
     #
     if test "$embedded_ares" != "yes"; then
-                  { $as_echo "$as_me:${as_lineno-$LINENO}: checking that c-ares is good and recent enough" >&5
-$as_echo_n "checking that c-ares is good and recent enough... " >&6; }
+                  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that c-ares is good and recent enough" >&5
+printf %s "checking that c-ares is good and recent enough... " >&6; }
       cat confdefs.h - <<_ACEOF >conftest.$ac_ext
 /* end confdefs.h.  */
 
@@ -42206,15 +45117,16 @@
 }
 
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-else
+else $as_nop
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
         as_fn_error $? "c-ares library defective or too old" "$LINENO" 5
                 CPPFLAGS="$clean_CPPFLAGS"
         LDFLAGS="$clean_LDFLAGS"
@@ -42223,12 +45135,12 @@
         want_ares="no"
 
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
     fi
     if test "$want_ares" = "yes"; then
 
-$as_echo "#define USE_ARES 1" >>confdefs.h
+printf "%s\n" "#define USE_ARES 1" >>confdefs.h
 
       USE_ARES=1
 
@@ -42262,11 +45174,12 @@
 
 if test "x$want_ares" != xyes; then
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable the threaded resolver" >&5
-$as_echo_n "checking whether to enable the threaded resolver... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable the threaded resolver" >&5
+printf %s "checking whether to enable the threaded resolver... " >&6; }
   OPT_THRES="default"
   # Check whether --enable-threaded_resolver was given.
-if test "${enable_threaded_resolver+set}" = set; then :
+if test ${enable_threaded_resolver+y}
+then :
   enableval=$enable_threaded_resolver; OPT_THRES=$enableval
 fi
 
@@ -42278,29 +45191,30 @@
             want_thres="yes"
       ;;
   esac
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_thres" >&5
-$as_echo "$want_thres" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $want_thres" >&5
+printf "%s\n" "$want_thres" >&6; }
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to use POSIX threads for threaded resolver" >&5
-$as_echo_n "checking whether to use POSIX threads for threaded resolver... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to use POSIX threads for threaded resolver" >&5
+printf %s "checking whether to use POSIX threads for threaded resolver... " >&6; }
 # Check whether --enable-pthreads was given.
-if test "${enable_pthreads+set}" = set; then :
+if test ${enable_pthreads+y}
+then :
   enableval=$enable_pthreads;  case "$enableval" in
-  no)  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  no)  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        want_pthreads=no
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        want_pthreads=yes
        ;;
   esac
-else
+else $as_nop
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: auto" >&5
-$as_echo "auto" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: auto" >&5
+printf "%s\n" "auto" >&6; }
        want_pthreads=auto
 
 
@@ -42313,8 +45227,8 @@
   fi
   if test "$dontwant_rt" != "no"; then
         if test "$want_pthreads" = "yes"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-pthreads Ignored since librt is disabled." >&5
-$as_echo "$as_me: WARNING: --enable-pthreads Ignored since librt is disabled." >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: --enable-pthreads Ignored since librt is disabled." >&5
+printf "%s\n" "$as_me: WARNING: --enable-pthreads Ignored since librt is disabled." >&2;}
     fi
     want_pthreads=no
   fi
@@ -42325,17 +45239,19 @@
 fi
 
 if test "$want_pthreads" != "no"; then
-  ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
-if test "x$ac_cv_header_pthread_h" = xyes; then :
+  ac_fn_c_check_header_compile "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default"
+if test "x$ac_cv_header_pthread_h" = xyes
+then :
 
-$as_echo "#define HAVE_PTHREAD_H 1" >>confdefs.h
+printf "%s\n" "#define HAVE_PTHREAD_H 1" >>confdefs.h
 
       save_CFLAGS="$CFLAGS"
                                     save_LIBS="$LIBS"
 
       LIBS=
             ac_fn_c_check_func "$LINENO" "pthread_create" "ac_cv_func_pthread_create"
-if test "x$ac_cv_func_pthread_create" = xyes; then :
+if test "x$ac_cv_func_pthread_create" = xyes
+then :
   USE_THREADS_POSIX=1
 fi
 
@@ -42354,11 +45270,12 @@
         CFLAGS="$CFLAGS -pthread"
         # assign PTHREAD for pkg-config use
         PTHREAD=" -pthread"
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_create in -lpthread" >&5
-$as_echo_n "checking for pthread_create in -lpthread... " >&6; }
-if ${ac_cv_lib_pthread_pthread_create+:} false; then :
-  $as_echo_n "(cached) " >&6
-else
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking for pthread_create in -lpthread" >&5
+printf %s "checking for pthread_create in -lpthread... " >&6; }
+if test ${ac_cv_lib_pthread_pthread_create+y}
+then :
+  printf %s "(cached) " >&6
+else $as_nop
   ac_check_lib_save_LIBS=$LIBS
 LIBS="-lpthread  $LIBS"
 cat confdefs.h - <<_ACEOF >conftest.$ac_ext
@@ -42376,20 +45293,22 @@
  return 0;
 }
 _ACEOF
-if ac_fn_c_try_link "$LINENO"; then :
+if ac_fn_c_try_link "$LINENO"
+then :
   ac_cv_lib_pthread_pthread_create=yes
-else
+else $as_nop
   ac_cv_lib_pthread_pthread_create=no
 fi
-rm -f core conftest.err conftest.$ac_objext \
+rm -f core conftest.err conftest.$ac_objext conftest.beam \
     conftest$ac_exeext conftest.$ac_ext
 LIBS=$ac_check_lib_save_LIBS
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_create" >&5
-$as_echo "$ac_cv_lib_pthread_pthread_create" >&6; }
-if test "x$ac_cv_lib_pthread_pthread_create" = xyes; then :
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_create" >&5
+printf "%s\n" "$ac_cv_lib_pthread_pthread_create" >&6; }
+if test "x$ac_cv_lib_pthread_pthread_create" = xyes
+then :
   USE_THREADS_POSIX=1
-else
+else $as_nop
    CFLAGS="$save_CFLAGS"
 fi
 
@@ -42398,14 +45317,13 @@
       if test "x$USE_THREADS_POSIX" = "x1"
       then
 
-$as_echo "#define USE_THREADS_POSIX 1" >>confdefs.h
+printf "%s\n" "#define USE_THREADS_POSIX 1" >>confdefs.h
 
         curl_res_msg="POSIX threaded"
       fi
 
 fi
 
-
 fi
 
 if test "$want_thres" = "yes" && test "x$USE_THREADS_POSIX" != "x1"; then
@@ -42415,7 +45333,7 @@
     if test "$curl_cv_native_windows" = "yes"; then
     USE_THREADS_WIN32=1
 
-$as_echo "#define USE_THREADS_WIN32 1" >>confdefs.h
+printf "%s\n" "#define USE_THREADS_WIN32 1" >>confdefs.h
 
     curl_res_msg="Win32 threaded"
   else
@@ -42424,12 +45342,12 @@
 fi
 
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking convert -I options to -isystem" >&5
-$as_echo_n "checking convert -I options to -isystem... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking convert -I options to -isystem" >&5
+printf %s "checking convert -I options to -isystem... " >&6; }
   if test "$compiler_id" = "GNU_C" ||
     test "$compiler_id" = "CLANG"; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
     tmp_has_include="no"
     tmp_chg_FLAGS="$CFLAGS"
     for word1 in $tmp_chg_FLAGS; do
@@ -42461,125 +45379,129 @@
       squeeze CPPFLAGS
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable verbose strings" >&5
-$as_echo_n "checking whether to enable verbose strings... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable verbose strings" >&5
+printf %s "checking whether to enable verbose strings... " >&6; }
 # Check whether --enable-verbose was given.
-if test "${enable_verbose+set}" = set; then :
+if test ${enable_verbose+y}
+then :
   enableval=$enable_verbose;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_VERBOSE_STRINGS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_VERBOSE_STRINGS 1" >>confdefs.h
 
        curl_verbose_msg="no"
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable SSPI support (Windows native builds only)" >&5
-$as_echo_n "checking whether to enable SSPI support (Windows native builds only)... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable SSPI support (Windows native builds only)" >&5
+printf %s "checking whether to enable SSPI support (Windows native builds only)... " >&6; }
 # Check whether --enable-sspi was given.
-if test "${enable_sspi+set}" = set; then :
+if test ${enable_sspi+y}
+then :
   enableval=$enable_sspi;  case "$enableval" in
   yes)
        if test "$curl_cv_native_windows" = "yes"; then
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
-$as_echo "#define USE_WINDOWS_SSPI 1" >>confdefs.h
+printf "%s\n" "#define USE_WINDOWS_SSPI 1" >>confdefs.h
 
          USE_WINDOWS_SSPI=1
 
          curl_sspi_msg="enabled"
        else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-         { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: --enable-sspi Ignored. Only supported on native Windows builds." >&5
-$as_echo "$as_me: WARNING: --enable-sspi Ignored. Only supported on native Windows builds." >&2;}
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: --enable-sspi Ignored. Only supported on native Windows builds." >&5
+printf "%s\n" "$as_me: WARNING: --enable-sspi Ignored. Only supported on native Windows builds." >&2;}
        fi
        ;;
   *)
        if test "x$SCHANNEL_ENABLED" = "x1"; then
          # --with-schannel implies --enable-sspi
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        fi
        ;;
   esac
-else
+else $as_nop
   if test "x$SCHANNEL_ENABLED" = "x1"; then
          # --with-schannel implies --enable-sspi
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        else
-         { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+         { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        fi
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable cryptographic authentication methods" >&5
-$as_echo_n "checking whether to enable cryptographic authentication methods... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable cryptographic authentication methods" >&5
+printf %s "checking whether to enable cryptographic authentication methods... " >&6; }
 # Check whether --enable-crypto-auth was given.
-if test "${enable_crypto_auth+set}" = set; then :
+if test ${enable_crypto_auth+y}
+then :
   enableval=$enable_crypto_auth;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_CRYPTO_AUTH 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_CRYPTO_AUTH 1" >>confdefs.h
 
        CURL_DISABLE_CRYPTO_AUTH=1
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support NTLM" >&5
-$as_echo_n "checking whether to support NTLM... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support NTLM" >&5
+printf %s "checking whether to support NTLM... " >&6; }
 # Check whether --enable-ntlm was given.
-if test "${enable_ntlm+set}" = set; then :
+if test ${enable_ntlm+y}
+then :
   enableval=$enable_ntlm;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_NTLM 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_NTLM 1" >>confdefs.h
 
        CURL_DISABLE_NTLM=1
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
@@ -42587,7 +45509,8 @@
 
     OPT_NTLM_WB="default"
   # Check whether --enable-ntlm-wb was given.
-if test "${enable_ntlm_wb+set}" = set; then :
+if test ${enable_ntlm_wb+y}
+then :
   enableval=$enable_ntlm_wb; OPT_NTLM_WB=$enableval
 fi
 
@@ -42609,46 +45532,45 @@
 
 
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable NTLM delegation to winbind's helper" >&5
-$as_echo_n "checking whether to enable NTLM delegation to winbind's helper... " >&6; }
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable NTLM delegation to winbind's helper" >&5
+printf %s "checking whether to enable NTLM delegation to winbind's helper... " >&6; }
   if test "$curl_cv_native_windows" = "yes" ||
     test "x$SSL_ENABLED" = "x"; then
     want_ntlm_wb_file=""
     want_ntlm_wb="no"
   fi
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $want_ntlm_wb" >&5
-$as_echo "$want_ntlm_wb" >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $want_ntlm_wb" >&5
+printf "%s\n" "$want_ntlm_wb" >&6; }
   if test "$want_ntlm_wb" = "yes"; then
 
-$as_echo "#define NTLM_WB_ENABLED 1" >>confdefs.h
+printf "%s\n" "#define NTLM_WB_ENABLED 1" >>confdefs.h
 
 
-cat >>confdefs.h <<_ACEOF
-#define NTLM_WB_FILE "$want_ntlm_wb_file"
-_ACEOF
+printf "%s\n" "#define NTLM_WB_FILE \"$want_ntlm_wb_file\"" >>confdefs.h
 
     NTLM_WB_ENABLED=1
   fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable TLS-SRP authentication" >&5
-$as_echo_n "checking whether to enable TLS-SRP authentication... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable TLS-SRP authentication" >&5
+printf %s "checking whether to enable TLS-SRP authentication... " >&6; }
 # Check whether --enable-tls-srp was given.
-if test "${enable_tls_srp+set}" = set; then :
+if test ${enable_tls_srp+y}
+then :
   enableval=$enable_tls_srp;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        want_tls_srp=no
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        want_tls_srp=yes
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        want_tls_srp=yes
 
 fi
@@ -42656,30 +45578,31 @@
 
 if test "$want_tls_srp" = "yes" && ( test "x$HAVE_GNUTLS_SRP" = "x1" || test "x$HAVE_OPENSSL_SRP" = "x1") ; then
 
-$as_echo "#define USE_TLS_SRP 1" >>confdefs.h
+printf "%s\n" "#define USE_TLS_SRP 1" >>confdefs.h
 
    USE_TLS_SRP=1
    curl_tls_srp_msg="enabled"
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to enable Unix domain sockets" >&5
-$as_echo_n "checking whether to enable Unix domain sockets... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to enable Unix domain sockets" >&5
+printf %s "checking whether to enable Unix domain sockets... " >&6; }
 # Check whether --enable-unix-sockets was given.
-if test "${enable_unix_sockets+set}" = set; then :
+if test ${enable_unix_sockets+y}
+then :
   enableval=$enable_unix_sockets;  case "$enableval" in
-  no)  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+  no)  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
        want_unix_sockets=no
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        want_unix_sockets=yes
        ;;
   esac
-else
+else $as_nop
 
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: auto" >&5
-$as_echo "auto" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: auto" >&5
+printf "%s\n" "auto" >&6; }
        want_unix_sockets=auto
 
 
@@ -42690,16 +45613,17 @@
     #include <sys/un.h>
 
 "
-if test "x$ac_cv_member_struct_sockaddr_un_sun_path" = xyes; then :
+if test "x$ac_cv_member_struct_sockaddr_un_sun_path" = xyes
+then :
 
 
-$as_echo "#define USE_UNIX_SOCKETS 1" >>confdefs.h
+printf "%s\n" "#define USE_UNIX_SOCKETS 1" >>confdefs.h
 
     USE_UNIX_SOCKETS=1
 
     curl_unix_sockets_msg="enabled"
 
-else
+else $as_nop
 
     if test "x$want_unix_sockets" = "xyes"; then
       as_fn_error $? "--enable-unix-sockets is not available on this platform!" "$LINENO" 5
@@ -42709,325 +45633,337 @@
 
 fi
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support cookies" >&5
-$as_echo_n "checking whether to support cookies... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support cookies" >&5
+printf %s "checking whether to support cookies... " >&6; }
 # Check whether --enable-cookies was given.
-if test "${enable_cookies+set}" = set; then :
+if test ${enable_cookies+y}
+then :
   enableval=$enable_cookies;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_COOKIES 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_COOKIES 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support socketpair" >&5
-$as_echo_n "checking whether to support socketpair... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support socketpair" >&5
+printf %s "checking whether to support socketpair... " >&6; }
 # Check whether --enable-socketpair was given.
-if test "${enable_socketpair+set}" = set; then :
+if test ${enable_socketpair+y}
+then :
   enableval=$enable_socketpair;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_SOCKETPAIR 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_SOCKETPAIR 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support HTTP authentication" >&5
-$as_echo_n "checking whether to support HTTP authentication... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support HTTP authentication" >&5
+printf %s "checking whether to support HTTP authentication... " >&6; }
 # Check whether --enable-http-auth was given.
-if test "${enable_http_auth+set}" = set; then :
+if test ${enable_http_auth+y}
+then :
   enableval=$enable_http_auth;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_HTTP_AUTH 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_HTTP_AUTH 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support DoH" >&5
-$as_echo_n "checking whether to support DoH... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support DoH" >&5
+printf %s "checking whether to support DoH... " >&6; }
 # Check whether --enable-doh was given.
-if test "${enable_doh+set}" = set; then :
+if test ${enable_doh+y}
+then :
   enableval=$enable_doh;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_DOH 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_DOH 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support the MIME API" >&5
-$as_echo_n "checking whether to support the MIME API... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support the MIME API" >&5
+printf %s "checking whether to support the MIME API... " >&6; }
 # Check whether --enable-mime was given.
-if test "${enable_mime+set}" = set; then :
+if test ${enable_mime+y}
+then :
   enableval=$enable_mime;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_MIME 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_MIME 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support date parsing" >&5
-$as_echo_n "checking whether to support date parsing... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support date parsing" >&5
+printf %s "checking whether to support date parsing... " >&6; }
 # Check whether --enable-dateparse was given.
-if test "${enable_dateparse+set}" = set; then :
+if test ${enable_dateparse+y}
+then :
   enableval=$enable_dateparse;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_PARSEDATE 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_PARSEDATE 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support netrc parsing" >&5
-$as_echo_n "checking whether to support netrc parsing... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support netrc parsing" >&5
+printf %s "checking whether to support netrc parsing... " >&6; }
 # Check whether --enable-netrc was given.
-if test "${enable_netrc+set}" = set; then :
+if test ${enable_netrc+y}
+then :
   enableval=$enable_netrc;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_NETRC 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_NETRC 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support progress-meter" >&5
-$as_echo_n "checking whether to support progress-meter... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support progress-meter" >&5
+printf %s "checking whether to support progress-meter... " >&6; }
 # Check whether --enable-progress-meter was given.
-if test "${enable_progress_meter+set}" = set; then :
+if test ${enable_progress_meter+y}
+then :
   enableval=$enable_progress_meter;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_PROGRESS_METER 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_PROGRESS_METER 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support DNS shuffling" >&5
-$as_echo_n "checking whether to support DNS shuffling... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support DNS shuffling" >&5
+printf %s "checking whether to support DNS shuffling... " >&6; }
 # Check whether --enable-dnsshuffle was given.
-if test "${enable_dnsshuffle+set}" = set; then :
+if test ${enable_dnsshuffle+y}
+then :
   enableval=$enable_dnsshuffle;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_SHUFFLE_DNS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_SHUFFLE_DNS 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support curl_easy_option*" >&5
-$as_echo_n "checking whether to support curl_easy_option*... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support curl_easy_option*" >&5
+printf %s "checking whether to support curl_easy_option*... " >&6; }
 # Check whether --enable-get-easy-options was given.
-if test "${enable_get_easy_options+set}" = set; then :
+if test ${enable_get_easy_options+y}
+then :
   enableval=$enable_get_easy_options;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_GETOPTIONS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_GETOPTIONS 1" >>confdefs.h
 
        ;;
-  *)   { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *)   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
 
 fi
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support alt-svc" >&5
-$as_echo_n "checking whether to support alt-svc... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support alt-svc" >&5
+printf %s "checking whether to support alt-svc... " >&6; }
 # Check whether --enable-alt-svc was given.
-if test "${enable_alt_svc+set}" = set; then :
+if test ${enable_alt_svc+y}
+then :
   enableval=$enable_alt_svc;  case "$enableval" in
   no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
-$as_echo "#define CURL_DISABLE_ALTSVC 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_ALTSVC 1" >>confdefs.h
 
        curl_altsvc_msg="no";
        enable_altsvc="no"
        ;;
-  *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+  *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
   esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
 
 fi
 
 
 if test -n "$SSL_ENABLED"; then
 
-        { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether to support HSTS" >&5
-$as_echo_n "checking whether to support HSTS... " >&6; }
+        { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether to support HSTS" >&5
+printf %s "checking whether to support HSTS... " >&6; }
   # Check whether --enable-hsts was given.
-if test "${enable_hsts+set}" = set; then :
+if test ${enable_hsts+y}
+then :
   enableval=$enable_hsts;  case "$enableval" in
     no)
-       { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
-       enable_hsts="no"
+       { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
+       hsts="no"
        ;;
-    *) { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    *) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
        ;;
     esac
-else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+else $as_nop
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $hsts" >&5
+printf "%s\n" "$hsts" >&6; }
 
 fi
 
 else
-  { $as_echo "$as_me:${as_lineno-$LINENO}: disables HSTS due to lack of SSL" >&5
-$as_echo "$as_me: disables HSTS due to lack of SSL" >&6;}
-  enable_hsts="no"
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: disables HSTS due to lack of SSL" >&5
+printf "%s\n" "$as_me: disables HSTS due to lack of SSL" >&6;}
+  hsts="no"
 fi
 
-if test "x$enable_hsts" != "xyes"; then
+if test "x$hsts" != "xyes"; then
   curl_hsts_msg="no      (--enable-hsts)";
 
-$as_echo "#define CURL_DISABLE_HSTS 1" >>confdefs.h
+printf "%s\n" "#define CURL_DISABLE_HSTS 1" >>confdefs.h
 
 fi
 
 if test "x$want_ech" != "xno"; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ECH support is available" >&5
-$as_echo_n "checking whether ECH support is available... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether ECH support is available" >&5
+printf %s "checking whether ECH support is available... " >&6; }
 
     ECH_ENABLED=0
   ECH_SUPPORT=''
 
       if test "x$OPENSSL_ENABLED" = "x1"; then
-    for ac_func in SSL_get_ech_status
+
+  for ac_func in SSL_get_ech_status
 do :
   ac_fn_c_check_func "$LINENO" "SSL_get_ech_status" "ac_cv_func_SSL_get_ech_status"
-if test "x$ac_cv_func_SSL_get_ech_status" = xyes; then :
-  cat >>confdefs.h <<_ACEOF
-#define HAVE_SSL_GET_ECH_STATUS 1
-_ACEOF
+if test "x$ac_cv_func_SSL_get_ech_status" = xyes
+then :
+  printf "%s\n" "#define HAVE_SSL_GET_ECH_STATUS 1" >>confdefs.h
  ECH_SUPPORT="ECH support available (OpenSSL with SSL_get_ech_status)"
       ECH_ENABLED=1
 fi
-done
 
+done
 
     fi
 
     if test "x$ECH_ENABLED" = "x1"; then
 
-$as_echo "#define USE_ECH 1" >>confdefs.h
+printf "%s\n" "#define USE_ECH 1" >>confdefs.h
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ECH_SUPPORT" >&5
-$as_echo "$ECH_SUPPORT" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: $ECH_SUPPORT" >&5
+printf "%s\n" "$ECH_SUPPORT" >&6; }
     experimental="$experimental ECH"
   else
     as_fn_error $? "--enable-ech ignored: No ECH support found" "$LINENO" 5
@@ -43035,8 +45971,8 @@
 fi
 
 
-  { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether hiding of library internal symbols will actually happen" >&5
-$as_echo_n "checking whether hiding of library internal symbols will actually happen... " >&6; }
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking whether hiding of library internal symbols will actually happen" >&5
+printf %s "checking whether hiding of library internal symbols will actually happen... " >&6; }
   CFLAG_CURL_SYMBOL_HIDING=""
   doing_symbol_hiding="no"
   if test x"$curl_cv_native_windows" != "xyes" &&
@@ -43045,15 +45981,13 @@
     doing_symbol_hiding="yes"
     CFLAG_CURL_SYMBOL_HIDING="$symbol_hiding_CFLAGS"
 
-cat >>confdefs.h <<_ACEOF
-#define CURL_EXTERN_SYMBOL $symbol_hiding_EXTERN
-_ACEOF
+printf "%s\n" "#define CURL_EXTERN_SYMBOL $symbol_hiding_EXTERN" >>confdefs.h
 
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5
-$as_echo "yes" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: yes" >&5
+printf "%s\n" "yes" >&6; }
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5
-$as_echo "no" >&6; }
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: no" >&5
+printf "%s\n" "no" >&6; }
   fi
    if test x$doing_symbol_hiding = xyes; then
   DOING_CURL_SYMBOL_HIDING_TRUE=
@@ -43144,7 +46078,7 @@
 if test "x$enable_altsvc" = "xyes"; then
   SUPPORT_FEATURES="$SUPPORT_FEATURES alt-svc"
 fi
-if test "x$enable_hsts" = "xyes"; then
+if test "x$hsts" = "xyes"; then
   SUPPORT_FEATURES="$SUPPORT_FEATURES HSTS"
 fi
 
@@ -43335,10 +46269,10 @@
     esac
   done
   if test $xc_bad_var_libs = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using LIBS: $LIBS" >&5
-$as_echo "$as_me: using LIBS: $LIBS" >&6;}
-    { $as_echo "$as_me:${as_lineno-$LINENO}: LIBS note: LIBS should only be used to specify libraries (-lname)." >&5
-$as_echo "$as_me: LIBS note: LIBS should only be used to specify libraries (-lname)." >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using LIBS: $LIBS" >&5
+printf "%s\n" "$as_me: using LIBS: $LIBS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: LIBS note: LIBS should only be used to specify libraries (-lname)." >&5
+printf "%s\n" "$as_me: LIBS note: LIBS should only be used to specify libraries (-lname)." >&6;}
   fi
 
 
@@ -43360,26 +46294,26 @@
     esac
   done
   if test $xc_bad_var_ldflags = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using LDFLAGS: $LDFLAGS" >&5
-$as_echo "$as_me: using LDFLAGS: $LDFLAGS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using LDFLAGS: $LDFLAGS" >&5
+printf "%s\n" "$as_me: using LDFLAGS: $LDFLAGS" >&6;}
     xc_bad_var_msg="LDFLAGS note: LDFLAGS should only be used to specify linker flags, not"
     for xc_word in $LDFLAGS; do
       case "$xc_word" in
         -D*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -U*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -I*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -l* | --library=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
           ;;
       esac
     done
@@ -43401,22 +46335,22 @@
     esac
   done
   if test $xc_bad_var_cppflags = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using CPPFLAGS: $CPPFLAGS" >&5
-$as_echo "$as_me: using CPPFLAGS: $CPPFLAGS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using CPPFLAGS: $CPPFLAGS" >&5
+printf "%s\n" "$as_me: using CPPFLAGS: $CPPFLAGS" >&6;}
     xc_bad_var_msg="CPPFLAGS note: CPPFLAGS should only be used to specify C preprocessor flags, not"
     for xc_word in $CPPFLAGS; do
       case "$xc_word" in
         -rpath*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -L* | --library-path=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -l* | --library=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
           ;;
       esac
     done
@@ -43447,34 +46381,34 @@
     esac
   done
   if test $xc_bad_var_cflags = yes; then
-    { $as_echo "$as_me:${as_lineno-$LINENO}: using CFLAGS: $CFLAGS" >&5
-$as_echo "$as_me: using CFLAGS: $CFLAGS" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: using CFLAGS: $CFLAGS" >&5
+printf "%s\n" "$as_me: using CFLAGS: $CFLAGS" >&6;}
     xc_bad_var_msg="CFLAGS note: CFLAGS should only be used to specify C compiler flags, not"
     for xc_word in $CFLAGS; do
       case "$xc_word" in
         -D*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro definitions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -U*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg macro suppressions. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -I*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg include directories. Use CPPFLAGS for: $xc_word" >&6;}
           ;;
         -rpath*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library runtime directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -L* | --library-path=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg library directories. Use LDFLAGS for: $xc_word" >&6;}
           ;;
         -l* | --library=*)
-          { $as_echo "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
-$as_echo "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
+          { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&5
+printf "%s\n" "$as_me: $xc_bad_var_msg libraries. Use LIBS for: $xc_word" >&6;}
           ;;
       esac
     done
@@ -43484,8 +46418,8 @@
      test $xc_bad_var_cflags = yes ||
      test $xc_bad_var_ldflags = yes ||
      test $xc_bad_var_cppflags = yes; then
-     { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: Continuing even with errors mentioned immediately above this line." >&5
-$as_echo "$as_me: WARNING: Continuing even with errors mentioned immediately above this line." >&2;}
+     { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: Continuing even with errors mentioned immediately above this line." >&5
+printf "%s\n" "$as_me: WARNING: Continuing even with errors mentioned immediately above this line." >&2;}
   fi
 
 
@@ -43526,8 +46460,8 @@
     case $ac_val in #(
     *${as_nl}*)
       case $ac_var in #(
-      *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
-$as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
+      *_cv_*) { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5
+printf "%s\n" "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;;
       esac
       case $ac_var in #(
       _ | IFS | as_nl) ;; #(
@@ -43557,15 +46491,15 @@
      /^ac_cv_env_/b end
      t clear
      :clear
-     s/^\([^=]*\)=\(.*[{}].*\)$/test "${\1+set}" = set || &/
+     s/^\([^=]*\)=\(.*[{}].*\)$/test ${\1+y} || &/
      t end
      s/^\([^=]*\)=\(.*\)$/\1=${\1=\2}/
      :end' >>confcache
 if diff "$cache_file" confcache >/dev/null 2>&1; then :; else
   if test -w "$cache_file"; then
     if test "x$cache_file" != "x/dev/null"; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
-$as_echo "$as_me: updating cache $cache_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5
+printf "%s\n" "$as_me: updating cache $cache_file" >&6;}
       if test ! -f "$cache_file" || test -h "$cache_file"; then
 	cat confcache >"$cache_file"
       else
@@ -43579,8 +46513,8 @@
       fi
     fi
   else
-    { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
-$as_echo "$as_me: not updating unwritable cache $cache_file" >&6;}
+    { printf "%s\n" "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5
+printf "%s\n" "$as_me: not updating unwritable cache $cache_file" >&6;}
   fi
 fi
 rm -f confcache
@@ -43597,7 +46531,7 @@
 for ac_i in : $LIBOBJS; do test "x$ac_i" = x: && continue
   # 1. Remove the extension, and $U if already installed.
   ac_script='s/\$U\././;s/\.o$//;s/\.obj$//'
-  ac_i=`$as_echo "$ac_i" | sed "$ac_script"`
+  ac_i=`printf "%s\n" "$ac_i" | sed "$ac_script"`
   # 2. Prepend LIBOBJDIR.  When used with automake>=1.10 LIBOBJDIR
   #    will be set to the directory where LIBOBJS objects are built.
   as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext"
@@ -43612,14 +46546,14 @@
   as_fn_error $? "conditional \"MAINTAINER_MODE\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
 fi
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
-$as_echo_n "checking that generated files are newer than configure... " >&6; }
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: checking that generated files are newer than configure" >&5
+printf %s "checking that generated files are newer than configure... " >&6; }
    if test -n "$am_sleep_pid"; then
      # Hide warnings about reused PIDs.
      wait $am_sleep_pid 2>/dev/null
    fi
-   { $as_echo "$as_me:${as_lineno-$LINENO}: result: done" >&5
-$as_echo "done" >&6; }
+   { printf "%s\n" "$as_me:${as_lineno-$LINENO}: result: done" >&5
+printf "%s\n" "done" >&6; }
 if test -z "${AMDEP_TRUE}" && test -z "${AMDEP_FALSE}"; then
   as_fn_error $? "conditional \"AMDEP\" was never defined.
 Usually this means the macro was only invoked conditionally." "$LINENO" 5
@@ -43713,8 +46647,8 @@
 ac_write_fail=0
 ac_clean_files_save=$ac_clean_files
 ac_clean_files="$ac_clean_files $CONFIG_STATUS"
-{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
-$as_echo "$as_me: creating $CONFIG_STATUS" >&6;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5
+printf "%s\n" "$as_me: creating $CONFIG_STATUS" >&6;}
 as_write_fail=0
 cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1
 #! $SHELL
@@ -43737,14 +46671,16 @@
 
 # Be more Bourne compatible
 DUALCASE=1; export DUALCASE # for MKS sh
-if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then :
+as_nop=:
+if test ${ZSH_VERSION+y} && (emulate sh) >/dev/null 2>&1
+then :
   emulate sh
   NULLCMD=:
   # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which
   # is contrary to our usage.  Disable this feature.
   alias -g '${1+"$@"}'='"$@"'
   setopt NO_GLOB_SUBST
-else
+else $as_nop
   case `(set -o) 2>/dev/null` in #(
   *posix*) :
     set -o posix ;; #(
@@ -43754,53 +46690,46 @@
 fi
 
 
+
+# Reset variables that may have inherited troublesome values from
+# the environment.
+
+# IFS needs to be set, to space, tab, and newline, in precisely that order.
+# (If _AS_PATH_WALK were called with IFS unset, it would have the
+# side effect of setting IFS to empty, thus disabling word splitting.)
+# Quoting is to prevent editors from complaining about space-tab.
 as_nl='
 '
 export as_nl
-# Printing a long string crashes Solaris 7 /usr/bin/printf.
-as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\'
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo
-as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo
-# Prefer a ksh shell builtin over an external printf program on Solaris,
-# but without wasting forks for bash or zsh.
-if test -z "$BASH_VERSION$ZSH_VERSION" \
-    && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='print -r --'
-  as_echo_n='print -rn --'
-elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then
-  as_echo='printf %s\n'
-  as_echo_n='printf %s'
-else
-  if test "X`(/usr/ucb/echo -n -n $as_echo) 2>/dev/null`" = "X-n $as_echo"; then
-    as_echo_body='eval /usr/ucb/echo -n "$1$as_nl"'
-    as_echo_n='/usr/ucb/echo -n'
-  else
-    as_echo_body='eval expr "X$1" : "X\\(.*\\)"'
-    as_echo_n_body='eval
-      arg=$1;
-      case $arg in #(
-      *"$as_nl"*)
-	expr "X$arg" : "X\\(.*\\)$as_nl";
-	arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;;
-      esac;
-      expr "X$arg" : "X\\(.*\\)" | tr -d "$as_nl"
-    '
-    export as_echo_n_body
-    as_echo_n='sh -c $as_echo_n_body as_echo'
-  fi
-  export as_echo_body
-  as_echo='sh -c $as_echo_body as_echo'
-fi
-
-
-
-# IFS
-# We need space, tab and new line, in precisely that order.  Quoting is
-# there to prevent editors from complaining about space-tab.
-# (If _AS_PATH_WALK were called with IFS unset, it would disable word
-# splitting by setting IFS to empty value.)
 IFS=" ""	$as_nl"
 
+PS1='$ '
+PS2='> '
+PS4='+ '
+
+# Ensure predictable behavior from utilities with locale-dependent output.
+LC_ALL=C
+export LC_ALL
+LANGUAGE=C
+export LANGUAGE
+
+# We cannot yet rely on "unset" to work, but we need these variables
+# to be unset--not just set to an empty or harmless value--now, to
+# avoid bugs in old shells (e.g. pre-3.0 UWIN ksh).  This construct
+# also avoids known problems related to "unset" and subshell syntax
+# in other old shells (e.g. bash 2.01 and pdksh 5.2.14).
+for as_var in BASH_ENV ENV MAIL MAILPATH CDPATH
+do eval test \${$as_var+y} \
+  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
+done
+
+# Ensure that fds 0, 1, and 2 are open.
+if (exec 3>&0) 2>/dev/null; then :; else exec 0</dev/null; fi
+if (exec 3>&1) 2>/dev/null; then :; else exec 1>/dev/null; fi
+if (exec 3>&2)            ; then :; else exec 2>/dev/null; fi
+
+
+
 # Find who we are.  Look in the path if we contain no directory separator.
 as_myself=
 case $0 in #((
@@ -43809,8 +46738,12 @@
 for as_dir in $PATH
 do
   IFS=$as_save_IFS
-  test -z "$as_dir" && as_dir=.
-    test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break
+  case $as_dir in #(((
+    '') as_dir=./ ;;
+    */) ;;
+    *) as_dir=$as_dir/ ;;
+  esac
+    test -r "$as_dir$0" && as_myself=$as_dir$0 && break
   done
 IFS=$as_save_IFS
 
@@ -43822,30 +46755,10 @@
   as_myself=$0
 fi
 if test ! -f "$as_myself"; then
-  $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
+  printf "%s\n" "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2
   exit 1
 fi
 
-# Unset variables that we do not need and which cause bugs (e.g. in
-# pre-3.0 UWIN ksh).  But do not cause bugs in bash 2.01; the "|| exit 1"
-# suppresses any "Segmentation fault" message there.  '((' could
-# trigger a bug in pdksh 5.2.14.
-for as_var in BASH_ENV ENV MAIL MAILPATH
-do eval test x\${$as_var+set} = xset \
-  && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || :
-done
-PS1='$ '
-PS2='> '
-PS4='+ '
-
-# NLS nuisances.
-LC_ALL=C
-export LC_ALL
-LANGUAGE=C
-export LANGUAGE
-
-# CDPATH.
-(unset CDPATH) >/dev/null 2>&1 && unset CDPATH
 
 
 # as_fn_error STATUS ERROR [LINENO LOG_FD]
@@ -43858,13 +46771,14 @@
   as_status=$1; test $as_status -eq 0 && as_status=1
   if test "$4"; then
     as_lineno=${as_lineno-"$3"} as_lineno_stack=as_lineno_stack=$as_lineno_stack
-    $as_echo "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: $2" >&$4
   fi
-  $as_echo "$as_me: error: $2" >&2
+  printf "%s\n" "$as_me: error: $2" >&2
   as_fn_exit $as_status
 } # as_fn_error
 
 
+
 # as_fn_set_status STATUS
 # -----------------------
 # Set $? to STATUS, without forking.
@@ -43891,18 +46805,20 @@
   { eval $1=; unset $1;}
 }
 as_unset=as_fn_unset
+
 # as_fn_append VAR VALUE
 # ----------------------
 # Append the text in VALUE to the end of the definition contained in VAR. Take
 # advantage of any shell optimizations that allow amortized linear growth over
 # repeated appends, instead of the typical quadratic growth present in naive
 # implementations.
-if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then :
+if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null
+then :
   eval 'as_fn_append ()
   {
     eval $1+=\$2
   }'
-else
+else $as_nop
   as_fn_append ()
   {
     eval $1=\$$1\$2
@@ -43914,12 +46830,13 @@
 # Perform arithmetic evaluation on the ARGs, and store the result in the
 # global $as_val. Take advantage of shells that can avoid forks. The arguments
 # must be portable across $(()) and expr.
-if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then :
+if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null
+then :
   eval 'as_fn_arith ()
   {
     as_val=$(( $* ))
   }'
-else
+else $as_nop
   as_fn_arith ()
   {
     as_val=`expr "$@" || test $? -eq 1`
@@ -43950,7 +46867,7 @@
 $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$0" : 'X\(//\)$' \| \
 	 X"$0" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$0" |
+printf "%s\n" X/"$0" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
@@ -43972,6 +46889,10 @@
 as_cr_digits='0123456789'
 as_cr_alnum=$as_cr_Letters$as_cr_digits
 
+
+# Determine whether it's possible to make 'echo' print without a newline.
+# These variables are no longer used directly by Autoconf, but are AC_SUBSTed
+# for compatibility with existing Makefiles.
 ECHO_C= ECHO_N= ECHO_T=
 case `echo -n x` in #(((((
 -n*)
@@ -43985,6 +46906,12 @@
   ECHO_N='-n';;
 esac
 
+# For backward compatibility with old third-party macros, we provide
+# the shell variables $as_echo and $as_echo_n.  New code should use
+# AS_ECHO(["message"]) and AS_ECHO_N(["message"]), respectively.
+as_echo='printf %s\n'
+as_echo_n='printf %s'
+
 rm -f conf$$ conf$$.exe conf$$.file
 if test -d conf$$.dir; then
   rm -f conf$$.dir/conf$$.file
@@ -44026,7 +46953,7 @@
     as_dirs=
     while :; do
       case $as_dir in #(
-      *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
+      *\'*) as_qdir=`printf "%s\n" "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'(
       *) as_qdir=$as_dir;;
       esac
       as_dirs="'$as_qdir' $as_dirs"
@@ -44035,7 +46962,7 @@
 	 X"$as_dir" : 'X\(//\)[^/]' \| \
 	 X"$as_dir" : 'X\(//\)$' \| \
 	 X"$as_dir" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$as_dir" |
+printf "%s\n" X"$as_dir" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -44098,7 +47025,7 @@
 # values after options handling.
 ac_log="
 This file was extended by curl $as_me -, which was
-generated by GNU Autoconf 2.69.  Invocation command line was
+generated by GNU Autoconf 2.71.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
   CONFIG_HEADERS  = $CONFIG_HEADERS
@@ -44160,14 +47087,16 @@
 Report bugs to <a suitable curl mailing list: https://curl.se/mail/>."
 
 _ACEOF
+ac_cs_config=`printf "%s\n" "$ac_configure_args" | sed "$ac_safe_unquote"`
+ac_cs_config_escaped=`printf "%s\n" "$ac_cs_config" | sed "s/^ //; s/'/'\\\\\\\\''/g"`
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
-ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
+ac_cs_config='$ac_cs_config_escaped'
 ac_cs_version="\\
 curl config.status -
-configured by $0, generated by GNU Autoconf 2.69,
+configured by $0, generated by GNU Autoconf 2.71,
   with options \\"\$ac_cs_config\\"
 
-Copyright (C) 2012 Free Software Foundation, Inc.
+Copyright (C) 2021 Free Software Foundation, Inc.
 This config.status script is free software; the Free Software Foundation
 gives unlimited permission to copy, distribute and modify it."
 
@@ -44207,15 +47136,15 @@
   -recheck | --recheck | --rechec | --reche | --rech | --rec | --re | --r)
     ac_cs_recheck=: ;;
   --version | --versio | --versi | --vers | --ver | --ve | --v | -V )
-    $as_echo "$ac_cs_version"; exit ;;
+    printf "%s\n" "$ac_cs_version"; exit ;;
   --config | --confi | --conf | --con | --co | --c )
-    $as_echo "$ac_cs_config"; exit ;;
+    printf "%s\n" "$ac_cs_config"; exit ;;
   --debug | --debu | --deb | --de | --d | -d )
     debug=: ;;
   --file | --fil | --fi | --f )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     '') as_fn_error $? "missing file argument" ;;
     esac
     as_fn_append CONFIG_FILES " '$ac_optarg'"
@@ -44223,7 +47152,7 @@
   --header | --heade | --head | --hea )
     $ac_shift
     case $ac_optarg in
-    *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
+    *\'*) ac_optarg=`printf "%s\n" "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;;
     esac
     as_fn_append CONFIG_HEADERS " '$ac_optarg'"
     ac_need_defaults=false;;
@@ -44232,7 +47161,7 @@
     as_fn_error $? "ambiguous option: \`$1'
 Try \`$0 --help' for more information.";;
   --help | --hel | -h )
-    $as_echo "$ac_cs_usage"; exit ;;
+    printf "%s\n" "$ac_cs_usage"; exit ;;
   -q | -quiet | --quiet | --quie | --qui | --qu | --q \
   | -silent | --silent | --silen | --sile | --sil | --si | --s)
     ac_cs_silent=: ;;
@@ -44260,7 +47189,7 @@
 if \$ac_cs_recheck; then
   set X $SHELL '$0' $ac_configure_args \$ac_configure_extra_args --no-create --no-recursion
   shift
-  \$as_echo "running CONFIG_SHELL=$SHELL \$*" >&6
+  \printf "%s\n" "running CONFIG_SHELL=$SHELL \$*" >&6
   CONFIG_SHELL='$SHELL'
   export CONFIG_SHELL
   exec "\$@"
@@ -44274,7 +47203,7 @@
   sed 'h;s/./-/g;s/^.../## /;s/...$/ ##/;p;x;p;x' <<_ASBOX
 ## Running $as_me. ##
 _ASBOX
-  $as_echo "$ac_log"
+  printf "%s\n" "$ac_log"
 } >&5
 
 _ACEOF
@@ -44614,9 +47543,9 @@
 # We use the long form for the default assignment because of an extremely
 # bizarre bug on SunOS 4.1.3.
 if $ac_need_defaults; then
-  test "${CONFIG_FILES+set}" = set || CONFIG_FILES=$config_files
-  test "${CONFIG_HEADERS+set}" = set || CONFIG_HEADERS=$config_headers
-  test "${CONFIG_COMMANDS+set}" = set || CONFIG_COMMANDS=$config_commands
+  test ${CONFIG_FILES+y} || CONFIG_FILES=$config_files
+  test ${CONFIG_HEADERS+y} || CONFIG_HEADERS=$config_headers
+  test ${CONFIG_COMMANDS+y} || CONFIG_COMMANDS=$config_commands
 fi
 
 # Have a temporary directory for convenience.  Make it in the build tree
@@ -44952,7 +47881,7 @@
 	   esac ||
 	   as_fn_error 1 "cannot find input file: \`$ac_f'" "$LINENO" 5;;
       esac
-      case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
+      case $ac_f in *\'*) ac_f=`printf "%s\n" "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac
       as_fn_append ac_file_inputs " '$ac_f'"
     done
 
@@ -44960,17 +47889,17 @@
     # use $as_me), people would be surprised to read:
     #    /* config.h.  Generated by config.status.  */
     configure_input='Generated from '`
-	  $as_echo "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
+	  printf "%s\n" "$*" | sed 's|^[^:]*/||;s|:[^:]*/|, |g'
 	`' by configure.'
     if test x"$ac_file" != x-; then
       configure_input="$ac_file.  $configure_input"
-      { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
-$as_echo "$as_me: creating $ac_file" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5
+printf "%s\n" "$as_me: creating $ac_file" >&6;}
     fi
     # Neutralize special characters interpreted by sed in replacement strings.
     case $configure_input in #(
     *\&* | *\|* | *\\* )
-       ac_sed_conf_input=`$as_echo "$configure_input" |
+       ac_sed_conf_input=`printf "%s\n" "$configure_input" |
        sed 's/[\\\\&|]/\\\\&/g'`;; #(
     *) ac_sed_conf_input=$configure_input;;
     esac
@@ -44987,7 +47916,7 @@
 	 X"$ac_file" : 'X\(//\)[^/]' \| \
 	 X"$ac_file" : 'X\(//\)$' \| \
 	 X"$ac_file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$ac_file" |
+printf "%s\n" X"$ac_file" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -45011,9 +47940,9 @@
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -45075,8 +48004,8 @@
 case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in
 *datarootdir*) ac_datarootdir_seen=yes;;
 *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*)
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
-$as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5
+printf "%s\n" "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;}
 _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
   ac_datarootdir_hack='
@@ -45120,9 +48049,9 @@
   { ac_out=`sed -n '/\${datarootdir}/p' "$ac_tmp/out"`; test -n "$ac_out"; } &&
   { ac_out=`sed -n '/^[	 ]*datarootdir[	 ]*:*=/p' \
       "$ac_tmp/out"`; test -z "$ac_out"; } &&
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&5
-$as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
+printf "%s\n" "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir'
 which seems to be undefined.  Please make sure it is defined" >&2;}
 
   rm -f "$ac_tmp/stdin"
@@ -45138,20 +48067,20 @@
   #
   if test x"$ac_file" != x-; then
     {
-      $as_echo "/* $configure_input  */" \
+      printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs"
     } >"$ac_tmp/config.h" \
       || as_fn_error $? "could not create $ac_file" "$LINENO" 5
     if diff "$ac_file" "$ac_tmp/config.h" >/dev/null 2>&1; then
-      { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
-$as_echo "$as_me: $ac_file is unchanged" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5
+printf "%s\n" "$as_me: $ac_file is unchanged" >&6;}
     else
       rm -f "$ac_file"
       mv "$ac_tmp/config.h" "$ac_file" \
 	|| as_fn_error $? "could not create $ac_file" "$LINENO" 5
     fi
   else
-    $as_echo "/* $configure_input  */" \
+    printf "%s\n" "/* $configure_input  */" >&1 \
       && eval '$AWK -f "$ac_tmp/defines.awk"' "$ac_file_inputs" \
       || as_fn_error $? "could not create -" "$LINENO" 5
   fi
@@ -45171,7 +48100,7 @@
 	 X"$_am_arg" : 'X\(//\)[^/]' \| \
 	 X"$_am_arg" : 'X\(//\)$' \| \
 	 X"$_am_arg" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$_am_arg" |
+printf "%s\n" X"$_am_arg" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -45191,8 +48120,8 @@
 	  s/.*/./; q'`/stamp-h$_am_stamp_count
  ;;
 
-  :C)  { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
-$as_echo "$as_me: executing $ac_file commands" >&6;}
+  :C)  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5
+printf "%s\n" "$as_me: executing $ac_file commands" >&6;}
  ;;
   esac
 
@@ -45218,7 +48147,7 @@
   for am_mf
   do
     # Strip MF so we end up with the name of the file.
-    am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
+    am_mf=`printf "%s\n" "$am_mf" | sed -e 's/:.*$//'`
     # Check whether this is an Automake generated Makefile which includes
     # dependency-tracking related rules and includes.
     # Grep'ing the whole file directly is not great: AIX grep has a line
@@ -45230,7 +48159,7 @@
 	 X"$am_mf" : 'X\(//\)[^/]' \| \
 	 X"$am_mf" : 'X\(//\)$' \| \
 	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$am_mf" |
+printf "%s\n" X"$am_mf" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -45252,7 +48181,7 @@
 $as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
 	 X"$am_mf" : 'X\(//\)$' \| \
 	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X/"$am_mf" |
+printf "%s\n" X/"$am_mf" |
     sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
@@ -45277,8 +48206,8 @@
    (exit $ac_status); } || am_rc=$?
   done
   if test $am_rc -ne 0; then
-    { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
-$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+    { { printf "%s\n" "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+printf "%s\n" "$as_me: error: in \`$ac_pwd':" >&2;}
 as_fn_error $? "Something went wrong bootstrapping makefile fragments
     for automatic dependency tracking.  If GNU make was not used, consider
     re-running the configure script with MAKE=\"gmake\" (or whatever is
@@ -45824,6 +48753,7 @@
   esac
 
 
+
 ltmain=$ac_aux_dir/ltmain.sh
 
 
@@ -45912,7 +48842,7 @@
       ;;
     *)
       case $ac_arg in
-      *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+      *\'*) ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
       esac
       as_fn_append ac_sub_configure_args " '$ac_arg'" ;;
     esac
@@ -45922,7 +48852,7 @@
   # in subdir configurations.
   ac_arg="--prefix=$prefix"
   case $ac_arg in
-  *\'*) ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
+  *\'*) ac_arg=`printf "%s\n" "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;;
   esac
   ac_sub_configure_args="'$ac_arg' $ac_sub_configure_args"
 
@@ -45943,17 +48873,17 @@
     test -d "$srcdir/$ac_dir" || continue
 
     ac_msg="=== configuring in $ac_dir (`pwd`/$ac_dir)"
-    $as_echo "$as_me:${as_lineno-$LINENO}: $ac_msg" >&5
-    $as_echo "$ac_msg" >&6
+    printf "%s\n" "$as_me:${as_lineno-$LINENO}: $ac_msg" >&5
+    printf "%s\n" "$ac_msg" >&6
     as_dir="$ac_dir"; as_fn_mkdir_p
     ac_builddir=.
 
 case "$ac_dir" in
 .) ac_dir_suffix= ac_top_builddir_sub=. ac_top_build_prefix= ;;
 *)
-  ac_dir_suffix=/`$as_echo "$ac_dir" | sed 's|^\.[\\/]||'`
+  ac_dir_suffix=/`printf "%s\n" "$ac_dir" | sed 's|^\.[\\/]||'`
   # A ".." for each directory in $ac_dir_suffix.
-  ac_top_builddir_sub=`$as_echo "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
+  ac_top_builddir_sub=`printf "%s\n" "$ac_dir_suffix" | sed 's|/[^\\/]*|/..|g;s|/||'`
   case $ac_top_builddir_sub in
   "") ac_top_builddir_sub=. ac_top_build_prefix= ;;
   *)  ac_top_build_prefix=$ac_top_builddir_sub/ ;;
@@ -45983,17 +48913,15 @@
 
     cd "$ac_dir"
 
-    # Check for guested configure; otherwise get Cygnus style configure.
+    # Check for configure.gnu first; this name is used for a wrapper for
+    # Metaconfig's "Configure" on case-insensitive file systems.
     if test -f "$ac_srcdir/configure.gnu"; then
       ac_sub_configure=$ac_srcdir/configure.gnu
     elif test -f "$ac_srcdir/configure"; then
       ac_sub_configure=$ac_srcdir/configure
-    elif test -f "$ac_srcdir/configure.in"; then
-      # This should be Cygnus configure.
-      ac_sub_configure=$ac_aux_dir/configure
     else
-      { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: no configuration information is in $ac_dir" >&5
-$as_echo "$as_me: WARNING: no configuration information is in $ac_dir" >&2;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: no configuration information is in $ac_dir" >&5
+printf "%s\n" "$as_me: WARNING: no configuration information is in $ac_dir" >&2;}
       ac_sub_configure=
     fi
 
@@ -46006,8 +48934,8 @@
 	ac_sub_cache_file=$ac_top_build_prefix$cache_file ;;
       esac
 
-      { $as_echo "$as_me:${as_lineno-$LINENO}: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5
-$as_echo "$as_me: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;}
+      { printf "%s\n" "$as_me:${as_lineno-$LINENO}: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&5
+printf "%s\n" "$as_me: running $SHELL $ac_sub_configure $ac_sub_configure_args --cache-file=$ac_sub_cache_file --srcdir=$ac_srcdir" >&6;}
       # The eval makes quoting arguments work.
       eval "\$SHELL \"\$ac_sub_configure\" $ac_sub_configure_args \
 	   --cache-file=\"\$ac_sub_cache_file\" --srcdir=\"\$ac_srcdir\"" ||
@@ -46018,8 +48946,8 @@
   done
 fi
 if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then
-  { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
-$as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
+  { printf "%s\n" "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5
+printf "%s\n" "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;}
 fi
 
 
@@ -46078,8 +49006,8 @@
 
 if test $xc_cnt_words -gt 0; then
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: amending $xc_subdir/Makefile" >&5
-$as_echo "$as_me: amending $xc_subdir/Makefile" >&6;}
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: amending $xc_subdir/Makefile" >&5
+printf "%s\n" "$as_me: amending $xc_subdir/Makefile" >&6;}
 
 # Build Makefile specific patch hunk.
 
@@ -46160,7 +49088,7 @@
 
 
 
-{ $as_echo "$as_me:${as_lineno-$LINENO}: Configured to build curl/libcurl:
+{ printf "%s\n" "$as_me:${as_lineno-$LINENO}: Configured to build curl/libcurl:
 
   Host setup:       ${host}
   Install prefix:   ${prefix}
@@ -46206,7 +49134,7 @@
   Protocols:        ${SUPPORT_PROTOCOLS}
   Features:         ${SUPPORT_FEATURES}
 " >&5
-$as_echo "$as_me: Configured to build curl/libcurl:
+printf "%s\n" "$as_me: Configured to build curl/libcurl:
 
   Host setup:       ${host}
   Install prefix:   ${prefix}
@@ -46257,3 +49185,4 @@
   WARNING: $experimental enabled but marked EXPERIMENTAL. Use with caution!
 _EOF
 fi
+
diff --git a/configure.ac b/configure.ac
index dc8e416..0c23847 100644
--- a/configure.ac
+++ b/configure.ac
@@ -172,7 +172,7 @@
      curl_h3_msg="no      (--with-ngtcp2, --with-quiche)"
 
 enable_altsvc="yes"
-enable_hsts="yes"
+hsts="yes"
 
 dnl
 dnl Save some initial values the user might have provided
@@ -446,12 +446,38 @@
 fi
 AM_CONDITIONAL(BUILD_UNITTESTS, test x$want_unittests = xyes)
 
+# For original MinGW (ie not MinGW-w64) define the Windows minimum supported OS
+# version to Windows XP (0x501) if it hasn't already been defined by the user.
+# Without this override original MinGW defaults the version to Windows NT 4.0.
+# Note original MinGW sets _WIN32_WINNT if not defined to whatever WINVER is.
+case $host in
+  *-*-mingw32*)
+    AC_MSG_CHECKING([if MinGW minimum supported OS should be set to XP])
+    AC_COMPILE_IFELSE([
+      AC_LANG_PROGRAM([[
+#include <_mingw.h>
+      ]],[[
+#if defined(__MINGW64_VERSION_MAJOR) || \
+    defined(WINVER) || \
+    defined(_WIN32_WINNT)
+#error
+#endif
+      ]])
+    ],[
+      CPPFLAGS="$CPPFLAGS -DWINVER=0x501"
+      AC_MSG_RESULT([yes])
+    ],[
+      AC_MSG_RESULT([no])
+    ])
+    ;;
+esac
+
 dnl **********************************************************************
 dnl Compilation based checks should not be done before this point.
 dnl **********************************************************************
 
 dnl **********************************************************************
-dnl Make sure that our checks for headers windows.h winsock.h winsock2.h
+dnl Make sure that our checks for headers windows.h winsock2.h
 dnl and ws2tcpip.h take precedence over any other further checks which
 dnl could be done later using AC_CHECK_HEADER or AC_CHECK_HEADERS for
 dnl this specific header files. And do them before its results are used.
@@ -461,7 +487,6 @@
 CURL_CHECK_NATIVE_WINDOWS
 case X-"$curl_cv_native_windows" in
   X-yes)
-    CURL_CHECK_HEADER_WINSOCK
     CURL_CHECK_HEADER_WINSOCK2
     CURL_CHECK_HEADER_WS2TCPIP
     CURL_CHECK_HEADER_WINCRYPT
@@ -469,7 +494,6 @@
     CURL_CHECK_HEADER_WINBER
     ;;
   *)
-    curl_cv_header_winsock_h="no"
     curl_cv_header_winsock2_h="no"
     curl_cv_header_ws2tcpip_h="no"
     curl_cv_header_wincrypt_h="no"
@@ -508,7 +532,7 @@
        curl_altsvc_msg="no";
        curl_hsts_msg="no      (--enable-hsts)";
        enable_altsvc="no"
-       enable_hsts="no"
+       hsts="no"
        ;;
   *)   AC_MSG_RESULT(yes)
        ;;
@@ -996,16 +1020,6 @@
 then
   dnl This is for winsock systems
   if test "$curl_cv_header_windows_h" = "yes"; then
-    if test "$curl_cv_header_winsock_h" = "yes"; then
-      case $host in
-        *-*-mingw32ce*)
-          winsock_LIB="-lwinsock"
-          ;;
-        *)
-          winsock_LIB="-lwsock32"
-          ;;
-      esac
-    fi
     if test "$curl_cv_header_winsock2_h" = "yes"; then
       winsock_LIB="-lws2_32"
     fi
@@ -1022,10 +1036,6 @@
 #include <windows.h>
 #ifdef HAVE_WINSOCK2_H
 #include <winsock2.h>
-#else
-#ifdef HAVE_WINSOCK_H
-#include <winsock.h>
-#endif
 #endif
 #endif
         ]],[[
@@ -1667,18 +1677,17 @@
   fi
 ])
 
-: ${KRB5CONFIG:="$GSSAPI_ROOT/bin/krb5-config"}
-
 save_CPPFLAGS="$CPPFLAGS"
 AC_MSG_CHECKING([if GSS-API support is requested])
 if test x"$want_gss" = xyes; then
   AC_MSG_RESULT(yes)
 
+  CURL_CHECK_PKGCONFIG(mit-krb5-gssapi)
   if test -z "$GSSAPI_INCS"; then
      if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
         GSSAPI_INCS=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --cflags gssapi`
-     elif test -f "$KRB5CONFIG"; then
-        GSSAPI_INCS=`$KRB5CONFIG --cflags gssapi`
+     elif test "$PKGCONFIG" != "no" ; then
+        GSSAPI_INCS=`$PKGCONFIG --cflags mit-krb5-gssapi`
      elif test "$GSSAPI_ROOT" != "yes"; then
         GSSAPI_INCS="-I$GSSAPI_ROOT/include"
      fi
@@ -1763,15 +1772,14 @@
         LIBS="-lgssapi_krb5 -lresolv $LIBS"
         ;;
      *)
+        CURL_CHECK_PKGCONFIG(mit-krb5-gssapi)
         if test -n "$host_alias" -a -f "$GSSAPI_ROOT/bin/$host_alias-krb5-config"; then
            dnl krb5-config doesn't have --libs-only-L or similar, put everything
            dnl into LIBS
            gss_libs=`$GSSAPI_ROOT/bin/$host_alias-krb5-config --libs gssapi`
            LIBS="$gss_libs $LIBS"
-        elif test -f "$KRB5CONFIG"; then
-           dnl krb5-config doesn't have --libs-only-L or similar, put everything
-           dnl into LIBS
-           gss_libs=`$KRB5CONFIG --libs gssapi`
+        elif test "$PKGCONFIG" != "no" ; then
+           gss_libs=`$PKGCONFIG --libs mit-krb5-gssapi`
            LIBS="$gss_libs $LIBS"
         else
            case $host in
@@ -2309,11 +2317,12 @@
 
 if test "$want_winidn" = "yes"; then
   dnl winidn library support has been requested
+  clean_CFLAGS="$CFLAGS"
   clean_CPPFLAGS="$CPPFLAGS"
   clean_LDFLAGS="$LDFLAGS"
   clean_LIBS="$LIBS"
   WINIDN_LIBS="-lnormaliz"
-  WINIDN_CPPFLAGS="-DWINVER=0x0600"
+  WINIDN_CPPFLAGS=""
   #
   if test "$want_winidn_path" != "default"; then
     dnl path has been specified
@@ -2323,6 +2332,24 @@
     WINIDN_DIR="$want_winidn_path/lib$libsuff"
   fi
   #
+  dnl WinIDN requires a minimum supported OS version of at least Vista (0x0600)
+  AC_COMPILE_IFELSE([
+    AC_LANG_PROGRAM([[
+      #include <windows.h>
+    ]],[[
+      #if (WINVER < 0x600) && (_WIN32_WINNT < 0x600)
+      #error
+      #endif
+    ]])
+  ],[
+  ],[
+     CFLAGS=`echo $CFLAGS | $SED -e 's/-DWINVER=[[^ ]]*//g'`
+     CFLAGS=`echo $CFLAGS | $SED -e 's/-D_WIN32_WINNT=[[^ ]]*//g'`
+     CPPFLAGS=`echo $CPPFLAGS | $SED -e 's/-DWINVER=[[^ ]]*//g'`
+     CPPFLAGS=`echo $CPPFLAGS | $SED -e 's/-D_WIN32_WINNT=[[^ ]]*//g'`
+     WINIDN_CPPFLAGS="$WINIDN_CPPFLAGS -DWINVER=0x0600"
+  ])
+  #
   CPPFLAGS="$CPPFLAGS $WINIDN_CPPFLAGS"
   LDFLAGS="$LDFLAGS $WINIDN_LDFLAGS"
   LIBS="$WINIDN_LIBS $LIBS"
@@ -2349,6 +2376,7 @@
     curl_idn_msg="enabled (Windows-native)"
   else
     AC_MSG_WARN([Cannot find libraries for IDN support: IDN disabled])
+    CFLAGS="$clean_CFLAGS"
     CPPFLAGS="$clean_CPPFLAGS"
     LDFLAGS="$clean_LDFLAGS"
     LIBS="$clean_LIBS"
@@ -2479,20 +2507,14 @@
   fi
 fi
 
-
-dnl Let's hope this split URL remains working:
-dnl https://www15.software.ibm.com/doc_link/en_US/a_doc_lib/aixprggd/ \
-dnl genprogc/thread_quick_ref.htm
-
-
 dnl **********************************************************************
 dnl Check for nghttp2
 dnl **********************************************************************
 
 OPT_H2="yes"
 
-if test "x$disable_http" = "xyes"; then
-  # without HTTP, nghttp2 is no use
+if test "x$disable_http" = "xyes" -o X"$want_hyper" != Xno; then
+  # without HTTP or with Hyper, nghttp2 is no use
   OPT_H2="no"
 fi
 
@@ -2503,49 +2525,48 @@
 case "$OPT_H2" in
   no)
     dnl --without-nghttp2 option used
-    want_h2="no"
+    want_nghttp2="no"
     ;;
   yes)
     dnl --with-nghttp2 option used without path
-    want_h2="default"
-    want_h2_path=""
+    want_nghttp2="default"
+    want_nghttp2_path=""
     ;;
   *)
     dnl --with-nghttp2 option used with path
-    want_h2="yes"
-    want_h2_path="$withval/lib/pkgconfig"
+    want_nghttp2="yes"
+    want_nghttp2_path="$withval/lib/pkgconfig"
     ;;
 esac
 
-if test X"$want_h2" != Xno; then
+if test X"$want_nghttp2" != Xno; then
   dnl backup the pre-nghttp2 variables
   CLEANLDFLAGS="$LDFLAGS"
   CLEANCPPFLAGS="$CPPFLAGS"
   CLEANLIBS="$LIBS"
 
-  CURL_CHECK_PKGCONFIG(libnghttp2, $want_h2_path)
+  CURL_CHECK_PKGCONFIG(libnghttp2, $want_nghttp2_path)
 
   if test "$PKGCONFIG" != "no" ; then
-    LIB_H2=`CURL_EXPORT_PCDIR([$want_h2_path])
+    LIB_H2=`CURL_EXPORT_PCDIR([$want_nghttp2_path])
       $PKGCONFIG --libs-only-l libnghttp2`
     AC_MSG_NOTICE([-l is $LIB_H2])
 
-    CPP_H2=`CURL_EXPORT_PCDIR([$want_h2_path]) dnl
+    CPP_H2=`CURL_EXPORT_PCDIR([$want_nghttp2_path]) dnl
       $PKGCONFIG --cflags-only-I libnghttp2`
     AC_MSG_NOTICE([-I is $CPP_H2])
 
-    LD_H2=`CURL_EXPORT_PCDIR([$want_h2_path])
+    LD_H2=`CURL_EXPORT_PCDIR([$want_nghttp2_path])
       $PKGCONFIG --libs-only-L libnghttp2`
     AC_MSG_NOTICE([-L is $LD_H2])
 
     LDFLAGS="$LDFLAGS $LD_H2"
     CPPFLAGS="$CPPFLAGS $CPP_H2"
     LIBS="$LIB_H2 $LIBS"
-    LIB_H2_NAME=${LIB_H2#"-l"}
 
     # use nghttp2_session_set_local_window_size to require nghttp2
     # >= 1.12.0
-    AC_CHECK_LIB($LIB_H2_NAME, nghttp2_session_set_local_window_size,
+    AC_CHECK_LIB(nghttp2, nghttp2_session_set_local_window_size,
       [
        AC_CHECK_HEADERS(nghttp2/nghttp2.h,
           curl_h2_msg="enabled (nghttp2)"
@@ -2562,7 +2583,7 @@
 
   else
     dnl no nghttp2 pkg-config found, deal with it
-    if test X"$want_h2" != Xdefault; then
+    if test X"$want_nghttp2" != Xdefault; then
       dnl To avoid link errors, we do not allow --with-nghttp2 without
       dnl a pkgconfig file
       AC_MSG_ERROR([--with-nghttp2 was specified but could not find libnghttp2 pkg-config file.])
@@ -2632,7 +2653,7 @@
     if test "x$cross_compiling" != "xyes"; then
       DIR_TCP2=`echo $LD_TCP2 | $SED -e 's/^-L//'`
     fi
-    AC_CHECK_LIB(ngtcp2, ngtcp2_conn_client_new,
+    AC_CHECK_LIB(ngtcp2, ngtcp2_conn_client_new_versioned,
       [
        AC_CHECK_HEADERS(ngtcp2/ngtcp2.h,
           NGTCP2_ENABLED=1
@@ -2831,7 +2852,7 @@
     if test "x$cross_compiling" != "xyes"; then
       DIR_NGHTTP3=`echo $LD_NGHTTP3 | $SED -e 's/^-L//'`
     fi
-    AC_CHECK_LIB(nghttp3, nghttp3_conn_client_new,
+    AC_CHECK_LIB(nghttp3, nghttp3_conn_client_new_versioned,
       [
        AC_CHECK_HEADERS(nghttp3/nghttp3.h,
           curl_h3_msg="enabled (ngtcp2 + nghttp3)"
@@ -2894,6 +2915,11 @@
 esac
 
 if test X"$want_quiche" != Xno; then
+
+  if test "$NGHTTP3_ENABLED" = 1; then
+    AC_MSG_ERROR([--with-quiche and --with-ngtcp2 are mutually exclusive])
+  fi
+
   dnl backup the pre-quiche variables
   CLEANLDFLAGS="$LDFLAGS"
   CLEANCPPFLAGS="$CPPFLAGS"
@@ -3205,8 +3231,6 @@
 
 TYPE_SOCKADDR_STORAGE
 
-TYPE_SIG_ATOMIC_T
-
 CURL_CHECK_FUNC_SELECT
 
 CURL_CHECK_FUNC_RECV
@@ -3853,19 +3877,19 @@
   [ case "$enableval" in
     no)
        AC_MSG_RESULT(no)
-       enable_hsts="no"
+       hsts="no"
        ;;
     *) AC_MSG_RESULT(yes)
        ;;
     esac ],
-       AC_MSG_RESULT(no)
+       AC_MSG_RESULT($hsts)
   )
 else
   AC_MSG_NOTICE([disables HSTS due to lack of SSL])
-  enable_hsts="no"
+  hsts="no"
 fi
 
-if test "x$enable_hsts" != "xyes"; then
+if test "x$hsts" != "xyes"; then
   curl_hsts_msg="no      (--enable-hsts)";
   AC_DEFINE(CURL_DISABLE_HSTS, 1, [disable alt-svc])
 fi
@@ -3990,7 +4014,7 @@
 if test "x$enable_altsvc" = "xyes"; then
   SUPPORT_FEATURES="$SUPPORT_FEATURES alt-svc"
 fi
-if test "x$enable_hsts" = "xyes"; then
+if test "x$hsts" = "xyes"; then
   SUPPORT_FEATURES="$SUPPORT_FEATURES HSTS"
 fi
 
@@ -4043,7 +4067,7 @@
   SUPPORT_FEATURES="$SUPPORT_FEATURES MultiSSL"
 fi
 
-dnl if not explictily turned off, HTTPS-proxy comes with some TLS backends
+dnl if not explicitly turned off, HTTPS-proxy comes with some TLS backends
 if test "x$https_proxy" != "xno"; then
   if test "x$OPENSSL_ENABLED" = "x1" -o "x$GNUTLS_ENABLED" = "x1" \
       -o "x$NSS_ENABLED" = "x1"; then
diff --git a/depcomp b/depcomp
index 6b39162..715e343 100755
--- a/depcomp
+++ b/depcomp
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2020 Free Software Foundation, Inc.
+# Copyright (C) 1999-2021 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
diff --git a/docs/BINDINGS.md b/docs/BINDINGS.md
index 919e2d2..995f830 100644
--- a/docs/BINDINGS.md
+++ b/docs/BINDINGS.md
@@ -12,15 +12,15 @@
 
 [Ada95](https://web.archive.org/web/20070403105909/www.almroth.com/adacurl/index.html) Written by Andreas Almroth
 
-[Basic](http://scriptbasic.com/) ScriptBasic bindings written by Peter Verhas
+[Basic](https://scriptbasic.com/) ScriptBasic bindings written by Peter Verhas
 
-C++: [curlpp](http://curlpp.org/) Written by Jean-Philippe Barrette-LaPierre,
+C++: [curlpp](https://curlpp.org/) Written by Jean-Philippe Barrette-LaPierre,
 [curlcpp](https://github.com/JosephP91/curlcpp) by Giuseppe Persico and [C++
-Requests](https://github.com/whoshuu/cpr) by Huu Nguyen
+Requests](https://github.com/libcpr/cpr) by Huu Nguyen
 
 [Ch](https://chcurl.sourceforge.io/) Written by Stephen Nestinger and Jonathan Rogado
 
-Cocoa: [BBHTTP](https://github.com/brunodecarvalho/BBHTTP) written by Bruno de Carvalho
+Cocoa: [BBHTTP](https://github.com/biasedbit/BBHTTP) written by Bruno de Carvalho
 [curlhandle](https://github.com/karelia/curlhandle) Written by Dan Wood
 
 Clojure: [clj-curl](https://github.com/lsevero/clj-curl) by Lucas Severo
@@ -31,7 +31,7 @@
 
 [Dylan](https://dylanlibs.sourceforge.io/) Written by Chris Double
 
-[Eiffel](https://room.eiffel.com/library/curl) Written by Eiffel Software
+[Eiffel](https://iron.eiffel.com/repository/20.11/package/ABEF6975-37AC-45FD-9C67-52D10BA0669B) Written by Eiffel Software
 
 [Euphoria](https://web.archive.org/web/20050204080544/rays-web.com/eulibcurl.htm) Written by Ray Smith
 
@@ -45,11 +45,11 @@
 
 Go: [go-curl](https://github.com/andelf/go-curl) by ShuYu Wang
 
-[Guile](http://www.lonelycactus.com/guile-curl.html) Written by Michael L. Gran
+[Guile](https://www.lonelycactus.com/guile-curl.html) Written by Michael L. Gran
 
-[Harbour](https://github.com/vszakats/harbour-core/tree/master/contrib/hbcurl) Written by Viktor Szakáts
+[Harbour](https://github.com/vszakats/hb/tree/main/contrib/hbcurl) Written by Viktor Szakats
 
-[Haskell](https://hackage.haskell.org/cgi-bin/hackage-scripts/package/curl) Written by Galois, Inc
+[Haskell](https://hackage.haskell.org/package/curl) Written by Galois, Inc
 
 [Java](https://github.com/pjlegato/curl-java)
 
@@ -59,9 +59,9 @@
 
 [Lisp](https://common-lisp.net/project/cl-curl/) Written by Liam Healy
 
-Lua: [luacurl](https://web.archive.org/web/20201205052437/http://luacurl.luaforge.net/) by Alexander Marinov, [Lua-cURL](https://github.com/Lua-cURL) by Jürgen Hötzel
+Lua: [luacurl](https://web.archive.org/web/20201205052437/luacurl.luaforge.net/) by Alexander Marinov, [Lua-cURL](https://github.com/Lua-cURL) by Jürgen Hötzel
 
-[Mono](https://forge.novell.com/modules/xfmod/project/?libcurl-mono) Written by Jeffrey Phillips
+[Mono](https://web.archive.org/web/20070606064500/https://forge.novell.com/modules/xfmod/project/?libcurl-mono) Written by Jeffrey Phillips
 
 [.NET](https://sourceforge.net/projects/libcurl-net/) libcurl-net by Jeffrey Phillips
 
@@ -98,7 +98,7 @@
 
 Ruby: [curb](https://github.com/taf2/curb) written by Ross Bamford
 
-[Rust](https://github.com/carllerche/curl-rust) curl-rust - by Carl Lerche
+[Rust](https://github.com/alexcrichton/curl-rust) curl-rust - by Carl Lerche
 
 [Scheme](http://www.metapaper.net/lisovsky/web/curl/) Bigloo binding by Kirill Lisovsky
 
@@ -106,7 +106,7 @@
 
 [S-Lang](https://www.jedsoft.org/slang/modules/curl.html) by John E Davis
 
-[Smalltalk](http://www.squeaksource.com/CurlPlugin/) Written by Danil Osipchuk
+[Smalltalk](https://www.squeaksource.com/CurlPlugin/) Written by Danil Osipchuk
 
 [SP-Forth](https://sourceforge.net/p/spf/spf/ci/master/tree/devel/~ac/lib/lin/curl/) Written by Andrey Cherezov
 
diff --git a/docs/BUG-BOUNTY.md b/docs/BUG-BOUNTY.md
index 5cbb343..25159fb 100644
--- a/docs/BUG-BOUNTY.md
+++ b/docs/BUG-BOUNTY.md
@@ -35,7 +35,7 @@
 # Who is eligible for a reward?
 
 Everyone and anyone who reports a security problem in a released curl version
-that hasn't already been reported can ask for a bounty.
+that has not already been reported can ask for a bounty.
 
 Vulnerabilities in features that are off by default and documented as
 experimental are not eligible for a reward.
diff --git a/docs/BUGS.md b/docs/BUGS.md
index 2c0a301..1b09efb 100644
--- a/docs/BUGS.md
+++ b/docs/BUGS.md
@@ -12,7 +12,7 @@
 
 ## Where to report
 
- If you can't fix a bug yourself and submit a fix for it, try to report an as
+ If you cannot fix a bug yourself and submit a fix for it, try to report an as
  detailed report as possible to a curl mailing list to allow one of us to have
  a go at a solution. You can optionally also submit your problem in [curl's
  bug tracking system](https://github.com/curl/curl/issues).
@@ -49,7 +49,7 @@
 
  - your operating system's name and version number
 
- - what version of curl you're using (`curl -V` is fine)
+ - what version of curl you are using (`curl -V` is fine)
 
  - versions of the used libraries that libcurl is built to use
 
@@ -67,7 +67,7 @@
 
  If curl crashed, causing a core dump (in unix), there is hardly any use to
  send that huge file to anyone of us. Unless we have an exact same system
- setup as you, we can't do much with it. Instead, we ask you to get a stack
+ setup as you, we cannot do much with it. Instead, we ask you to get a stack
  trace and send that (much smaller) output to us instead!
 
  The address and how to subscribe to the mailing lists are detailed in the
@@ -75,12 +75,12 @@
 
 ## libcurl problems
 
- When you've written your own application with libcurl to perform transfers,
+ When you have written your own application with libcurl to perform transfers,
  it is even more important to be specific and detailed when reporting bugs.
 
  Tell us the libcurl version and your operating system. Tell us the name and
  version of all relevant sub-components like for example the SSL library
- you're using and what name resolving your libcurl uses. If you use SFTP or
+ you are using and what name resolving your libcurl uses. If you use SFTP or
  SCP, the libssh2 version is relevant etc.
 
  Showing us a real source code example repeating your problem is the best way
@@ -104,7 +104,7 @@
 
  But please do not assume that you can just lump over something to us and it
  will then magically be fixed after some given time. Most often we need
- feedback and help to understand what you've experienced and how to repeat a
+ feedback and help to understand what you have experienced and how to repeat a
  problem. Then we may only be able to assist YOU to debug the problem and to
  track down the proper fix.
 
@@ -114,7 +114,7 @@
 ## How to get a stack trace
 
  First, you must make sure that you compile all sources with `-g` and that you
- don't 'strip' the final executable. Try to avoid optimizing the code as well,
+ do not 'strip' the final executable. Try to avoid optimizing the code as well,
  remove `-O`, `-O2` etc from the compiler options.
 
  Run the program until it cores.
@@ -128,7 +128,7 @@
 
  The list that is presented is the stack trace. If everything worked, it is
  supposed to contain the chain of functions that were called when curl
- crashed. Include the stack trace with your detailed bug report. It'll help a
+ crashed. Include the stack trace with your detailed bug report. it will help a
  lot.
 
 ## Bugs in libcurl bindings
@@ -148,12 +148,12 @@
 
  The developers in the curl project do not have bandwidth or energy enough to
  maintain several branches or to spend much time on hunting down problems in
- old versions when chances are we already fixed them or at least that they've
+ old versions when chances are we already fixed them or at least that they have
  changed nature and appearance in later versions.
 
  When you experience a problem and want to report it, you really SHOULD
- include the version number of the curl you're using when you experience the
- issue. If that version number shows us that you're using an out-of-date curl,
+ include the version number of the curl you are using when you experience the
+ issue. If that version number shows us that you are using an out-of-date curl,
  you should also try out a modern curl version to see if the problem persists
  or how/if it has changed in appearance.
 
@@ -162,9 +162,9 @@
  experimental build or similar, to get this confirmed or not.
 
  At times people insist that they cannot upgrade to a modern curl version, but
- instead they "just want the bug fixed". That's fine, just don't count on us
- spending many cycles on trying to identify which single commit, if that's
- even possible, that at some point in the past fixed the problem you're now
+ instead they "just want the bug fixed". That is fine, just do not count on us
+ spending many cycles on trying to identify which single commit, if that is
+ even possible, that at some point in the past fixed the problem you are now
  experiencing.
 
  Security wise, it is almost always a bad idea to lag behind the current curl
@@ -178,7 +178,7 @@
 
  When a new issue is posted in the issue tracker or on the mailing list, the
  team of developers first need to see the report. Maybe they took the day off,
- maybe they're off in the woods hunting. Have patience. Allow at least a few
+ maybe they are off in the woods hunting. Have patience. Allow at least a few
  days before expecting someone to have responded.
 
  In the issue tracker you can expect that some labels will be set on the issue
@@ -186,7 +186,7 @@
 
 ## First response
 
- If your issue/bug report wasn't perfect at once (and few are), chances are
+ If your issue/bug report was not perfect at once (and few are), chances are
  that someone will ask follow-up questions. Which version did you use? Which
  options did you use? How often does the problem occur? How can we reproduce
  this problem? Which protocols does it involve? Or perhaps much more specific
@@ -199,19 +199,19 @@
 
 ## Not reproducible
 
- For problems that we can't reproduce and can't understand even after having
+ For problems that we cannot reproduce and cannot understand even after having
  gotten all the info we need and having studied the source code over again,
  are really hard to solve so then we may require further work from you who
  actually see or experience the problem.
 
 ## Unresponsive
 
- If the problem haven't been understood or reproduced, and there's nobody
+ If the problem have not been understood or reproduced, and there's nobody
  responding to follow-up questions or questions asking for clarifications or
  for discussing possible ways to move forward with the task, we take that as a
  strong suggestion that the bug is not important.
 
- Unimportant issues will be closed as inactive sooner or later as they can't
+ Unimportant issues will be closed as inactive sooner or later as they cannot
  be fixed. The inactivity period (waiting for responses) should not be shorter
  than two weeks but may extend months.
 
@@ -219,7 +219,7 @@
 
  Bugs that are filed and are understood can unfortunately end up in the
  "nobody cares enough about it to work on it" category. Such bugs are
- perfectly valid problems that *should* get fixed but apparently aren't. We
+ perfectly valid problems that *should* get fixed but apparently are not. We
  try to mark such bugs as `KNOWN_BUGS material` after a time of inactivity and
  if no activity is noticed after yet some time those bugs are added to the
  `KNOWN_BUGS` document and are closed in the issue tracker.
@@ -227,7 +227,7 @@
 ## `KNOWN_BUGS`
 
  This is a list of known bugs. Bugs we know exist and that have been pointed
- out but that haven't yet been fixed. The reasons for why they haven't been
+ out but that have not yet been fixed. The reasons for why they have not been
  fixed can involve anything really, but the primary reason is that nobody has
  considered these problems to be important enough to spend the necessary time
  and effort to have them fixed.
@@ -239,14 +239,14 @@
 
 ## `TODO`
 
- Issues that are filed or reported that aren't really bugs but more missing
+ Issues that are filed or reported that are not really bugs but more missing
  features or ideas for future improvements and so on are marked as
  'enhancement' or 'feature-request' and will be added to the `TODO` document
- and the issues are closed. We don't keep TODO items open in the issue
+ and the issues are closed. We do not keep TODO items open in the issue
  tracker.
 
  The `TODO` document is full of ideas and suggestions of what we can add or
- fix one day. You're always encouraged and free to grab one of those items and
+ fix one day. you are always encouraged and free to grab one of those items and
  take up a discussion with the curl development team on how that could be
  implemented or provided in the project so that you can work on ticking it odd
  that document.
@@ -258,7 +258,7 @@
 
  The [issue and pull request trackers](https://github.com/curl/curl) only
  holds "active" entries open (using a non-precise definition of what active
- actually is, but they're at least not completely dead). Those that are
+ actually is, but they are at least not completely dead). Those that are
  abandoned or in other ways dormant will be closed and sometimes added to
  `TODO` and `KNOWN_BUGS` instead.
 
diff --git a/docs/CHECKSRC.md b/docs/CHECKSRC.md
index 2f634c4..9730011 100644
--- a/docs/CHECKSRC.md
+++ b/docs/CHECKSRC.md
@@ -58,7 +58,7 @@
 
 - `COPYRIGHT`: the file is missing a copyright statement!
 
-- `CPPCOMMENTS`: `//` comment detected, that's not C89 compliant
+- `CPPCOMMENTS`: `//` comment detected, that is not C89 compliant
 
 - `DOBRACE`: only use one space after do before open brace
 
@@ -120,7 +120,7 @@
 - `TYPEDEFSTRUCT`: we frown upon (most) typedefed structs
 
 - `UNUSEDIGNORE`: a checksrc inlined warning ignore was asked for but not used,
-   that's an ignore that should be removed or changed to get used.
+   that is an ignore that should be removed or changed to get used.
 
 ### Extended warnings
 
@@ -132,7 +132,7 @@
 
 Currently there is one extended warning which can be enabled:
 
-- `COPYRIGHTYEAR`: the current changeset hasn't updated the copyright year in
+- `COPYRIGHTYEAR`: the current changeset has not updated the copyright year in
    the source file
 
 ## Ignore certain warnings
@@ -159,11 +159,11 @@
 
     /* !checksrc! enable LONGLINE */
 
-If the enabling isn't performed before the end of the file, it will be enabled
+If the enabling is not performed before the end of the file, it will be enabled
 automatically for the next file.
 
 You can also opt to ignore just N violations so that if you have a single long
-line you just can't shorten and is agreed to be fine anyway:
+line you just cannot shorten and is agreed to be fine anyway:
 
     /* !checksrc! disable LONGLINE 1 */
 
@@ -174,7 +174,7 @@
 
 ### Directory wide ignore patterns
 
-This is a method we've transitioned away from. Use inline ignores as far as
+This is a method we have transitioned away from. Use inline ignores as far as
 possible.
 
 Make a `checksrc.skip` file in the directory of the source code with the
diff --git a/docs/CODE_REVIEW.md b/docs/CODE_REVIEW.md
index e6a28a6..20d1be8 100644
--- a/docs/CODE_REVIEW.md
+++ b/docs/CODE_REVIEW.md
@@ -36,17 +36,17 @@
 deliberately and carefully. If not, a reviewer must help the author to realize
 the mistake.
 
-curl and libcurl are similarly very strict on not modifying existing
-behavior. API and ABI stability is not enough, the behavior should also remain
-intact as far as possible.
+curl and libcurl are similarly strict on not modifying existing behavior. API
+and ABI stability is not enough, the behavior should also remain intact as far
+as possible.
 
 ## Code style
 
 Most code style nits are detected by checksrc but not all. Only leave remarks
-on style deviation once checksrc doesn't find anymore.
+on style deviation once checksrc does not find anymore.
 
 Minor nits from fresh submitters can also be handled by the maintainer when
-merging, in case it seems like the submitter isn't clear on what to do. We
+merging, in case it seems like the submitter is not clear on what to do. We
 want to make the process fun and exciting for new contributors.
 
 ## Encourage consistency
@@ -105,15 +105,15 @@
 not OK. A code review must also verify that the submitted documentation update
 matches the code submission.
 
-English isn't everyone's first language, be mindful of this and help the
+English is not everyone's first language, be mindful of this and help the
 submitter improve the text if it needs a rewrite to read better.
 
-## Code shouldn't be hard to understand
+## Code should not be hard to understand
 
 Source code should be written to maximize readability and be easy to
 understand.
 
-## Functions shouldn't be large
+## Functions should not be large
 
 A single function should never be large as that makes it hard to follow and
 understand all the exit points and state changes. Some existing functions in
diff --git a/docs/CODE_STYLE.md b/docs/CODE_STYLE.md
index e27778e..e716f68 100644
--- a/docs/CODE_STYLE.md
+++ b/docs/CODE_STYLE.md
@@ -2,7 +2,7 @@
 
 Source code that has a common style is easier to read than code that uses
 different styles in different places. It helps making the code feel like one
-single code base. Easy-to-read is a very important property of code and helps
+single code base. Easy-to-read is an important property of code and helps
 making it easier to review when new things are added and it helps debugging
 code when developers are trying to figure out why things go wrong. A unified
 style is more important than individual contributors having their own personal
@@ -23,9 +23,9 @@
 ## Naming
 
 Try using a non-confusing naming scheme for your new functions and variable
-names. It doesn't necessarily have to mean that you should use the same as in
+names. It does not necessarily have to mean that you should use the same as in
 other places of the code, just that the names should be logical,
-understandable and be named according to what they're used for. File-local
+understandable and be named according to what they are used for. File-local
 functions should be made static. We like lower case names.
 
 See the [INTERNALS](https://curl.se/dev/internals.html#symbols) document on
@@ -46,8 +46,8 @@
 
 ## Comments
 
-Since we write C89 code, **//** comments are not allowed. They weren't
-introduced in the C standard until C99. We use only **/* comments */**.
+Since we write C89 code, **//** comments are not allowed. They were not
+introduced in the C standard until C99. We use only __/* comments */__.
 
 ```c
 /* this is a comment */
@@ -56,10 +56,10 @@
 ## Long lines
 
 Source code in curl may never be wider than 79 columns and there are two
-reasons for maintaining this even in the modern era of very large and high
+reasons for maintaining this even in the modern era of large and high
 resolution screens:
 
-1. Narrower columns are easier to read than very wide ones. There's a reason
+1. Narrower columns are easier to read than wide ones. There's a reason
    newspapers have used columns for decades or centuries.
 
 2. Narrower columns allow developers to easier show multiple pieces of code
@@ -154,8 +154,8 @@
 
 ## New block on a new line
 
-We never write multiple statements on the same source line, even for very
-short if() conditions.
+We never write multiple statements on the same source line, even for short
+if() conditions.
 
 ```c
 if(a)
@@ -174,7 +174,7 @@
 ## Space around operators
 
 Please use spaces on both sides of operators in C expressions.  Postfix **(),
-[], ->, ., ++, --** and Unary **+, - !, ~, &** operators excluded they should
+[], ->, ., ++, --** and Unary **+, -, !, ~, &** operators excluded they should
 have no space.
 
 Examples:
@@ -230,7 +230,7 @@
    (handle->set.httpversion != CURL_HTTP_VERSION_1_0) &&
    (handle->set.httpreq == HTTPREQ_GET ||
     handle->set.httpreq == HTTPREQ_HEAD))
-  /* didn't ask for HTTP/1.0 and a GET or HEAD */
+  /* did not ask for HTTP/1.0 and a GET or HEAD */
   return TRUE;
 ```
 
diff --git a/docs/CONTRIBUTE.md b/docs/CONTRIBUTE.md
index 4d278b2..b825408 100644
--- a/docs/CONTRIBUTE.md
+++ b/docs/CONTRIBUTE.md
@@ -19,7 +19,7 @@
 
 We also hang out on IRC in #curl on libera.chat
 
-If you're at all interested in the code side of things, consider clicking
+If you are at all interested in the code side of things, consider clicking
 'watch' on the [curl repo on GitHub](https://github.com/curl/curl) to be
 notified of pull requests and new issues posted there.
 
@@ -30,9 +30,9 @@
 otherwise.
 
 If you add a larger piece of code, you can opt to make that file or set of
-files to use a different license as long as they don't enforce any changes to
+files to use a different license as long as they do not enforce any changes to
 the rest of the package and they make sense. Such "separate parts" can not be
-GPL licensed (as we don't want copyleft to affect users of libcurl) but they
+GPL licensed (as we do not want copyleft to affect users of libcurl) but they
 must use "GPL compatible" licenses (as we want to allow users to use libcurl
 properly in GPL licensed environments).
 
@@ -65,12 +65,12 @@
 [CODE_STYLE](https://curl.se/dev/code-style.html) already established in
 the project. Consistent style makes code easier to read and mistakes less
 likely to happen. Run `make checksrc` before you submit anything, to make sure
-you follow the basic style. That script doesn't verify everything, but if it
+you follow the basic style. That script does not verify everything, but if it
 complains you know you have work to do.
 
 ### Non-clobbering All Over
 
-When you write new functionality or fix bugs, it is important that you don't
+When you write new functionality or fix bugs, it is important that you do not
 fiddle all over the source files and functions. Remember that it is likely
 that other people have done changes in the same source files as you have and
 possibly even in the same functions. If you bring completely new
@@ -80,7 +80,7 @@
 ### Write Separate Changes
 
 It is annoying when you get a huge patch from someone that is said to fix 511
-odd problems, but discussions and opinions don't agree with 510 of them - or
+odd problems, but discussions and opinions do not agree with 510 of them - or
 509 of them were already fixed in a different way. Then the person merging
 this change needs to extract the single interesting patch from somewhere
 within the huge pile of source, and that creates a lot of extra work.
@@ -96,9 +96,9 @@
 ### Patch Against Recent Sources
 
 Please try to get the latest available sources to make your patches against.
-It makes the lives of the developers so much easier. The very best is if you
-get the most up-to-date sources from the git repository, but the latest
-release archive is quite OK as well!
+It makes the lives of the developers so much easier. The best is if you get
+the most up-to-date sources from the git repository, but the latest release
+archive is quite OK as well!
 
 ### Documentation
 
@@ -114,14 +114,14 @@
 ### Test Cases
 
 Since the introduction of the test suite, we can quickly verify that the main
-features are working as they're supposed to. To maintain this situation and
+features are working as they are supposed to. To maintain this situation and
 improve it, all new features and functions that are added need to be tested
 in the test suite. Every feature that is added should get at least one valid
 test case that verifies that it works as documented. If every submitter also
-posts a few test cases, it won't end up as a heavy burden on a single person!
+posts a few test cases, it will not end up as a heavy burden on a single person!
 
-If you don't have test cases or perhaps you have done something that is very
-hard to write tests for, do explain exactly how you have otherwise tested and
+If you do not have test cases or perhaps you have done something that is hard
+to write tests for, do explain exactly how you have otherwise tested and
 verified your changes.
 
 ## Sharing Your Changes
@@ -139,9 +139,9 @@
 submitter of a change, you are the owner of that change until it has been merged.
 
 Respond on the list or on github about the change and answer questions and/or
-fix nits/flaws. This is very important. We will take lack of replies as a
-sign that you're not very anxious to get your patch accepted and we tend to
-simply drop such changes.
+fix nits/flaws. This is important. We will take lack of replies as a sign that
+you are not anxious to get your patch accepted and we tend to simply drop such
+changes.
 
 ### About pull requests
 
@@ -165,10 +165,10 @@
  - ... the test suite still runs 100% fine
  - ... the release tarball (the "dist") still works
  - ... it builds fine in-tree as well as out-of-tree
- - ... code coverage doesn't shrink drastically
+ - ... code coverage does not shrink drastically
 
 If the pull-request fails one of these tests, it will show up as a red X and
-you are expected to fix the problem. If you don't understand when the issue is
+you are expected to fix the problem. If you do not understand when the issue is
 or have other problems to fix the complaint, just ask and other project
 members will likely be able to help out.
 
@@ -205,7 +205,7 @@
 
 Make the patch against as recent source versions as possible.
 
-If you've followed the tips in this document and your patch still hasn't been
+If you have followed the tips in this document and your patch still has not been
 incorporated or responded to after some weeks, consider resubmitting it to the
 list or better yet: change it to a pull request.
 
@@ -229,24 +229,24 @@
 The first line is a succinct description of the change:
 
  - use the imperative, present tense: "change" not "changed" nor "changes"
- - don't capitalize first letter
+ - do not capitalize first letter
  - no dot (.) at the end
 
 The `[area]` in the first line can be `http2`, `cookies`, `openssl` or
 similar. There's no fixed list to select from but using the same "area" as
 other related changes could make sense.
 
-Don't forget to use commit --author="" if you commit someone else's work, and
+Do not forget to use commit --author="" if you commit someone else's work, and
 make sure that you have your own user and email setup correctly in git before
 you commit
 
 ### Write Access to git Repository
 
-If you are a very frequent contributor, you may be given push access to the
-git repository and then you'll be able to push your changes straight into the
-git repo instead of sending changes as pull requests or by mail as patches.
+If you are a frequent contributor, you may be given push access to the git
+repository and then you will be able to push your changes straight into the git
+repo instead of sending changes as pull requests or by mail as patches.
 
-Just ask if this is what you'd want. You will be required to have posted
+Just ask if this is what you would want. You will be required to have posted
 several high quality patches first, before you can be granted push access.
 
 ### How To Make a Patch with git
@@ -263,7 +263,7 @@
 As usual, group your commits so that you commit all changes at once that
 constitute a logical change.
 
-Once you have done all your commits and you're happy with what you see, you
+Once you have done all your commits and you are happy with what you see, you
 can make patches out of your changes that are suitable for mailing:
 
     git format-patch remotes/origin/master
diff --git a/docs/CURL-DISABLE.md b/docs/CURL-DISABLE.md
index 5967d7b..a2e75f1 100644
--- a/docs/CURL-DISABLE.md
+++ b/docs/CURL-DISABLE.md
@@ -12,10 +12,6 @@
 
 Disable support for authentication methods using crypto.
 
-## CURL_DISABLE_NTLM
-
-Disable support for NTLM.
-
 ## CURL_DISABLE_DICT
 
 Disable the DICT protocol
@@ -82,6 +78,10 @@
 
 Disable the netrc parser.
 
+## CURL_DISABLE_NTLM
+
+Disable support for NTLM.
+
 ## CURL_DISABLE_OPENSSL_AUTO_LOAD_CONFIG
 
 Disable the auto load config support in the OpenSSL backend.
@@ -90,9 +90,9 @@
 
 Disable date parsing
 
-## CURL_DISABLE_POP
+## CURL_DISABLE_POP3
 
-Disable the POP(S) protocols
+Disable the POP3 protocol
 
 ## CURL_DISABLE_PROGRESS_METER
 
diff --git a/docs/DEPRECATE.md b/docs/DEPRECATE.md
index 653e53f..d0d94d1 100644
--- a/docs/DEPRECATE.md
+++ b/docs/DEPRECATE.md
@@ -1,9 +1,10 @@
 # Items to be removed from future curl releases
 
 If any of these deprecated features is a cause for concern for you, please
-email the curl-library mailing list as soon as possible and explain to us why
-this is a problem for you and how your use case can't be satisfied properly
-using a workaround.
+email the
+[curl-library mailing list](https://lists.haxx.se/listinfo/curl-library)
+as soon as possible and explain to us why this is a problem for you and
+how your use case cannot be satisfied properly using a workaround.
 
 ## Past removals
 
diff --git a/docs/DYNBUF.md b/docs/DYNBUF.md
index a30a058..6dd2430 100644
--- a/docs/DYNBUF.md
+++ b/docs/DYNBUF.md
@@ -15,7 +15,7 @@
 void Curl_dyn_init(struct dynbuf *s, size_t toobig);
 ```
 
-This inits a struct to use for dynbuf and it can't fail. The `toobig` value
+This inits a struct to use for dynbuf and it cannot fail. The `toobig` value
 **must** be set to the maximum size we allow this buffer instance to grow to.
 The functions below will return `CURLE_OUT_OF_MEMORY` when hitting this limit.
 
diff --git a/docs/FAQ b/docs/FAQ
index d678e9e..c70225e 100644
--- a/docs/FAQ
+++ b/docs/FAQ
@@ -17,7 +17,7 @@
   1.8 I have a problem who do I mail?
   1.9 Where do I buy commercial support for curl?
   1.10 How many are using curl?
-  1.11 Why don't you update ca-bundle.crt
+  1.11 Why do you not update ca-bundle.crt
   1.12 I have a problem who can I chat with?
   1.13 curl's ECCN number?
   1.14 How do I submit my patch?
@@ -31,7 +31,7 @@
  3. Usage Problems
   3.1 curl: (1) SSL is disabled, https: not supported
   3.2 How do I tell curl to resume a transfer?
-  3.3 Why doesn't my posting using -F work?
+  3.3 Why does my posting using -F not work?
   3.4 How do I tell curl to run custom FTP commands?
   3.5 How can I disable the Accept: */* header?
   3.6 Does curl support ASP, XML, XHTML or HTML version Y?
@@ -55,7 +55,7 @@
  4. Running Problems
   4.2 Why do I get problems when I use & or % in the URL?
   4.3 How can I use {, }, [ or ] to specify multiple URLs?
-  4.4 Why do I get downloaded data even though the web page doesn't exist?
+  4.4 Why do I get downloaded data even though the web page does not exist?
   4.5 Why do I get return code XXX from a HTTP server?
    4.5.1 "400 Bad Request"
    4.5.2 "401 Unauthorized"
@@ -66,18 +66,18 @@
   4.6 Can you tell me what error code 142 means?
   4.7 How do I keep user names and passwords secret in curl command lines?
   4.8 I found a bug!
-  4.9 curl can't authenticate to the server that requires NTLM?
-  4.10 My HTTP request using HEAD, PUT or DELETE doesn't work!
+  4.9 curl cannot authenticate to the server that requires NTLM?
+  4.10 My HTTP request using HEAD, PUT or DELETE does not work!
   4.11 Why do my HTTP range requests return the full document?
   4.12 Why do I get "certificate verify failed" ?
   4.13 Why is curl -R on Windows one hour off?
   4.14 Redirects work in browser but not with curl!
-  4.15 FTPS doesn't work
+  4.15 FTPS does not work
   4.16 My HTTP POST or PUT requests are slow!
   4.17 Non-functional connect timeouts on Windows
   4.18 file:// URLs containing drive letters (Windows, NetWare)
-  4.19 Why doesn't curl return an error when the network cable is unplugged?
-  4.20 curl doesn't return error for HTTP non-200 responses!
+  4.19 Why does not curl return an error when the network cable is unplugged?
+  4.20 curl does not return error for HTTP non-200 responses!
 
  5. libcurl Issues
   5.1 Is libcurl thread-safe?
@@ -114,6 +114,10 @@
   7.3 Can I perform multiple requests using the same handle?
   7.4 Does PHP/CURL have dependencies?
 
+ 8. Development
+  8.1 Why does curl use C89?
+  8.2 Will curl be rewritten?
+
 ==============================================================================
 
 1. Philosophy
@@ -131,9 +135,9 @@
   libcurl
 
     A free and easy-to-use client-side URL transfer library, supporting DICT,
-    FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, MQTT,
-    POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET
-    and TFTP.
+    FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS,
+    MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS,
+    TELNET and TFTP.
 
     libcurl supports HTTPS certificates, HTTP POST, HTTP PUT, FTP uploading,
     Kerberos, SPNEGO, HTTP form based upload, proxies, cookies, user+password
@@ -150,7 +154,7 @@
 
   curl
 
-    A command line tool for getting or sending files using URL syntax.
+    A command line tool for getting or sending data using URL syntax.
 
     Since curl uses libcurl, curl supports the same wide range of common
     Internet protocols that libcurl does.
@@ -168,8 +172,8 @@
 
   1.2 What is libcurl?
 
-  libcurl is a reliable and portable library which provides you with an easy
-  interface to a range of common Internet protocols.
+  libcurl is a reliable and portable library for doing Internet data transfers
+  using one or more of its supported Internet protocols.
 
   You can use libcurl for free in your application, be it open source,
   commercial or closed-source.
@@ -211,15 +215,15 @@
   another tool that uses libcurl.
 
   We do not add things to curl that other small and available tools already do
-  very well at the side. curl's output can be piped into another program or
+  well at the side. curl's output can be piped into another program or
   redirected to another file for the next program to interpret.
 
   We focus on protocol related issues and improvements. If you want to do more
-  magic with the supported protocols than curl currently does, chances are good
-  we will agree. If you want to add more protocols, we may very well agree.
+  magic with the supported protocols than curl currently does, chances are
+  good we will agree. If you want to add more protocols, we may agree.
 
   If you want someone else to do all the work while you wait for us to
-  implement it for you, that is not a very friendly attitude. We spend a
+  implement it for you, that is not a friendly attitude. We spend a
   considerable time already on maintaining and developing curl. In order to
   get more out of us, you should consider trading in some of your time and
   effort in return. Simply go to the GitHub repo which resides at
@@ -244,7 +248,7 @@
 
   Project cURL is entirely free and open. We do this voluntarily, mostly in
   our spare time.  Companies may pay individual developers to work on curl,
-  but that's up to each company and developer. This is not controlled by nor
+  but that is up to each company and developer. This is not controlled by nor
   supervised in any way by the curl project.
 
   We get help from companies. Haxx provides website, bandwidth, mailing lists
@@ -288,10 +292,14 @@
   from having to repeat ourselves even more. Thanks for respecting this.
 
   If you have found or simply suspect a security problem in curl or libcurl,
-  mail curl-security at haxx.se (closed list of receivers, mails are not
-  disclosed) and tell. Then we can produce a fix in a timely manner before the
-  flaw is announced to the world, thus lessen the impact the problem will have
-  on existing users.
+  submit all the details at https://hackerone.one/curl. On there we keep the
+  issue private while we investigate, confirm it, work and validate a fix and
+  agree on a time schedule for publication etc. That way we produce a fix in a
+  timely manner before the flaw is announced to the world, reducing the impact
+  the problem risk having on existing users.
+
+  Security issues can also be taking to the curl security team by emailing
+  security at curl.se (closed list of receivers, mails are not disclosed).
 
   1.9 Where do I buy commercial support for curl?
 
@@ -305,22 +313,22 @@
 
   It is impossible to tell.
 
-  We don't know how many users that knowingly have installed and use curl.
+  We do not know how many users that knowingly have installed and use curl.
 
-  We don't know how many users that use curl without knowing that they are in
+  We do not know how many users that use curl without knowing that they are in
   fact using it.
 
-  We don't know how many users that downloaded or installed curl and then
+  We do not know how many users that downloaded or installed curl and then
   never use it.
 
   In 2020, we estimate that curl runs in roughly ten billion installations
   world wide.
 
-  1.11 Why don't you update ca-bundle.crt
+  1.11 Why do you not update ca-bundle.crt
 
-  In the cURL project we've decided not to attempt to keep this file updated
+  In the cURL project we have decided not to attempt to keep this file updated
   (or even present) since deciding what to add to a ca cert bundle is an
-  undertaking we've not been ready to accept, and the one we can get from
+  undertaking we have not been ready to accept, and the one we can get from
   Mozilla is perfectly fine so there's no need to duplicate that work.
 
   Today, with many services performed over HTTPS, every operating system
@@ -336,7 +344,7 @@
   1.12 I have a problem who can I chat with?
 
   There's a bunch of friendly people hanging out in the #curl channel on the
-  IRC network libera.chat. If you're polite and nice, chances are good that
+  IRC network libera.chat. If you are polite and nice, chances are good that
   you can get -- or provide -- help instantly.
 
   1.13 curl's ECCN number?
@@ -364,10 +372,10 @@
   1.14 How do I submit my patch?
 
   We strongly encourage you to submit changes and improvements directly as
-  "pull requests" on github: https://github.com/curl/curl/pulls
+  "pull requests" on GitHub: https://github.com/curl/curl/pulls
 
-  If you for any reason can't or won't deal with github, send your patch to
-  the curl-library mailing list. We're many subscribers there and there are
+  If you for any reason cannot or will not deal with GitHub, send your patch to
+  the curl-library mailing list. We are many subscribers there and there are
   lots of people who can review patches, comment on them and "receive" them
   properly.
 
@@ -397,16 +405,16 @@
   configure checks for.
 
   The reason why static libraries is much harder to deal with is that for them
-  we don't get any help but the script itself must know or check what more
+  we do not get any help but the script itself must know or check what more
   libraries that are needed (with shared libraries, that dependency "chain" is
-  handled automatically). This is a very error-prone process and one that also
+  handled automatically). This is a error-prone process and one that also
   tends to vary over time depending on the release versions of the involved
   components and may also differ between operating systems.
 
-  For that reason, configure does very little attempts to actually figure this
-  out and you are instead encouraged to set LIBS and LDFLAGS accordingly when
-  you invoke configure, and point out the needed libraries and set the
-  necessary flags yourself.
+  For that reason, configure does few attempts to actually figure this out and
+  you are instead encouraged to set LIBS and LDFLAGS accordingly when you
+  invoke configure, and point out the needed libraries and set the necessary
+  flags yourself.
 
   2.2 Does curl work with other SSL libraries?
 
@@ -429,20 +437,20 @@
   3.1 curl: (1) SSL is disabled, https: not supported
 
   If you get this output when trying to get anything from a https:// server,
-  it means that the instance of curl/libcurl that you're using was built
+  it means that the instance of curl/libcurl that you are using was built
   without support for this protocol.
 
-  This could've happened if the configure script that was run at build time
-  couldn't find all libs and include files curl requires for SSL to work. If
+  This could have happened if the configure script that was run at build time
+  could not find all libs and include files curl requires for SSL to work. If
   the configure script fails to find them, curl is simply built without SSL
   support.
 
   To get the https:// support into a curl that was previously built but that
   reports that https:// is not supported, you should dig through the document
-  and logs and check out why the configure script doesn't find the SSL libs
+  and logs and check out why the configure script does not find the SSL libs
   and/or include files.
 
-  Also, check out the other paragraph in this FAQ labeled "configure doesn't
+  Also, check out the other paragraph in this FAQ labeled "configure does not
   find OpenSSL even when it is installed".
 
   3.2 How do I tell curl to resume a transfer?
@@ -450,19 +458,19 @@
   curl supports resumed transfers both ways on both FTP and HTTP.
   Try the -C option.
 
-  3.3 Why doesn't my posting using -F work?
+  3.3 Why does my posting using -F not work?
 
-  You can't arbitrarily use -F or -d, the choice between -F or -d depends on
+  You cannot arbitrarily use -F or -d, the choice between -F or -d depends on
   the HTTP operation you need curl to do and what the web server that will
   receive your post expects.
 
-  If the form you're trying to submit uses the type 'multipart/form-data',
+  If the form you are trying to submit uses the type 'multipart/form-data',
   then and only then you must use the -F type. In all the most common cases,
   you should use -d which then causes a posting with the type
   'application/x-www-form-urlencoded'.
 
   This is described in some detail in the MANUAL and TheArtOfHttpScripting
-  documents, and if you don't understand it the first time, read it again
+  documents, and if you do not understand it the first time, read it again
   before you post questions about this to the mailing list. Also, try reading
   through the mailing list archives for old postings and questions regarding
   this.
@@ -472,7 +480,7 @@
   You can tell curl to perform optional commands both before and/or after a
   file transfer. Study the -Q/--quote option.
 
-  Since curl is used for file transfers, you don't normally use curl to
+  Since curl is used for file transfers, you do not normally use curl to
   perform FTP commands without transferring anything. Therefore you must
   always specify a URL to transfer to/from even when doing custom FTP
   commands, or use -I which implies the "no body" option sent to libcurl.
@@ -485,9 +493,9 @@
 
   3.6 Does curl support ASP, XML, XHTML or HTML version Y?
 
-  To curl, all contents are alike. It doesn't matter how the page was
+  To curl, all contents are alike. It does not matter how the page was
   generated. It may be ASP, PHP, Perl, shell-script, SSI or plain HTML
-  files. There's no difference to curl and it doesn't even know what kind of
+  files. There's no difference to curl and it does not even know what kind of
   language that generated the page.
 
   See also item 3.14 regarding javascript.
@@ -507,7 +515,7 @@
   3.8 How do I tell curl to follow HTTP redirects?
 
   curl does not follow so-called redirects by default. The Location: header
-  that informs the client about this is only interpreted if you're using the
+  that informs the client about this is only interpreted if you are using the
   -L/--location option. As in:
 
      curl -L http://redirector.com
@@ -526,7 +534,7 @@
 
   All the various bindings to libcurl are made by other projects and people,
   outside of the cURL project. The cURL project itself only produces libcurl
-  with its plain C API. If you don't find anywhere else to ask you can ask
+  with its plain C API. If you do not find anywhere else to ask you can ask
   about bindings on the curl-library list too, but be prepared that people on
   that list may not know anything about bindings.
 
@@ -546,7 +554,7 @@
   XML-RPC are all such ones. You can use -X to set custom requests and -H to
   set custom headers (or replace internally generated ones).
 
-  Using libcurl is of course just as good and you'd just use the proper
+  Using libcurl is of course just as good and you would just use the proper
   library options to do the same.
 
   3.11 How do I POST with a different Content-Type?
@@ -560,7 +568,7 @@
 
   Because when you use a HTTP proxy, the protocol spoken on the network will
   be HTTP, even if you specify a FTP URL. This effectively means that you
-  normally can't use FTP-specific features such as FTP upload and FTP quote
+  normally cannot use FTP-specific features such as FTP upload and FTP quote
   etc.
 
   There is one exception to this rule, and that is if you can "tunnel through"
@@ -582,7 +590,7 @@
   Exactly what kind of quotes and how to do this is entirely up to the shell
   or command line interpreter that you are using. For most unix shells, you
   can more or less pick either single (') or double (") quotes. For
-  Windows/DOS prompts I believe you're forced to use double (") quotes.
+  Windows/DOS prompts I believe you are forced to use double (") quotes.
 
   Please study the documentation for your particular environment. Examples in
   the curl docs will use a mix of both of these as shown above. You must
@@ -600,8 +608,8 @@
   .pac files are a netscape invention and are sometimes used by organizations
   to allow them to differentiate which proxies to use. The .pac contents is
   just a Javascript program that gets invoked by the browser and that returns
-  the name of the proxy to connect to. Since curl doesn't support Javascript,
-  it can't support .pac proxy configuration either.
+  the name of the proxy to connect to. Since curl does not support Javascript,
+  it cannot support .pac proxy configuration either.
 
   Some workarounds usually suggested to overcome this Javascript dependency:
 
@@ -633,7 +641,7 @@
 
   The server you communicate with may require that you can provide this in
   order to prove that you actually are who you claim to be.  If the server
-  doesn't require this, you don't need a client certificate.
+  does not require this, you do not need a client certificate.
 
   A client certificate is always used together with a private key, and the
   private key has a pass phrase that protects it.
@@ -682,7 +690,7 @@
 
   3.19 How do I get HTTP from a host using a specific IP address?
 
-  For example, you may be trying out a website installation that isn't yet in
+  For example, you may be trying out a website installation that is not yet in
   the DNS. Or you have a site using multiple IP addresses for a given host
   name and you want to address a specific one out of the set.
 
@@ -700,7 +708,7 @@
   3.20 How to SFTP from my user's home directory?
 
   Contrary to how FTP works, SFTP and SCP URLs specify the exact directory to
-  work with. It means that if you don't specify that you want the user's home
+  work with. It means that if you do not specify that you want the user's home
   directory, you get the actual root directory.
 
   To specify a file in your user's home directory, you need to use the correct
@@ -716,7 +724,7 @@
 
   When passing on a URL to curl to use, it may respond that the particular
   protocol is not supported or disabled. The particular way this error message
-  is phrased is because curl doesn't make a distinction internally of whether
+  is phrased is because curl does not make a distinction internally of whether
   a particular protocol is not supported (i.e. never got any code added that
   knows how to speak that protocol) or if it was explicitly disabled. curl can
   be built to only support a given set of protocols, and the rest would then
@@ -735,7 +743,7 @@
   "curl http://example.com" it will use GET. If you use -d or -F curl will use
   POST, -I will cause a HEAD and -T will make it a PUT.
 
-  If for whatever reason you're not happy with these default choices that curl
+  If for whatever reason you are not happy with these default choices that curl
   does for you, you can override those request methods by specifying -X
   [WHATEVER]. This way you can for example send a DELETE by doing "curl -X
   DELETE [URL]".
@@ -746,7 +754,7 @@
   request-body in a GET request with something like "curl -X GET -d data
   [URL]"
 
-  Note that -X doesn't actually change curl's behavior as it only modifies the
+  Note that -X does not actually change curl's behavior as it only modifies the
   actual string sent in the request, but that may of course trigger a
   different set of events.
 
@@ -791,15 +799,15 @@
 
     curl -g 'www.site.com/weirdname[].html'
 
-  4.4 Why do I get downloaded data even though the web page doesn't exist?
+  4.4 Why do I get downloaded data even though the web page does not exist?
 
-  curl asks remote servers for the page you specify. If the page doesn't exist
+  curl asks remote servers for the page you specify. If the page does not exist
   at the server, the HTTP protocol defines how the server should respond and
-  that means that headers and a "page" will be returned. That's simply how
+  that means that headers and a "page" will be returned. That is simply how
   HTTP works.
 
   By using the --fail option you can tell curl explicitly to not get any data
-  if the HTTP return code doesn't say success.
+  if the HTTP return code does not say success.
 
   4.5 Why do I get return code XXX from a HTTP server?
 
@@ -857,11 +865,11 @@
   This problem has two sides:
 
   The first part is to avoid having clear-text passwords in the command line
-  so that they don't appear in 'ps' outputs and similar. That is easily
+  so that they do not appear in 'ps' outputs and similar. That is easily
   avoided by using the "-K" option to tell curl to read parameters from a file
   or stdin to which you can pass the secret info. curl itself will also
   attempt to "hide" the given password by blanking out the option - this
-  doesn't work on all platforms.
+  does not work on all platforms.
 
   To keep the passwords in your account secret from the rest of the world is
   not a task that curl addresses. You could of course encrypt them somehow to
@@ -870,7 +878,7 @@
 
   Also note that regular HTTP (using Basic authentication) and FTP passwords
   are sent as cleartext across the network. All it takes for anyone to fetch
-  them is to listen on the network. Eavesdropping is very easy. Use more secure
+  them is to listen on the network. Eavesdropping is easy. Use more secure
   authentication methods (like Digest, Negotiate or even NTLM) or consider the
   SSL-based alternatives HTTPS and FTPS.
 
@@ -879,14 +887,14 @@
   It is not a bug if the behavior is documented. Read the docs first.
   Especially check out the KNOWN_BUGS file, it may be a documented bug!
 
-  If it is a problem with a binary you've downloaded or a package for your
+  If it is a problem with a binary you have downloaded or a package for your
   particular platform, try contacting the person who built the package/archive
   you have.
 
   If there is a bug, read the BUGS document first. Then report it as described
   in there.
 
-  4.9 curl can't authenticate to the server that requires NTLM?
+  4.9 curl cannot authenticate to the server that requires NTLM?
 
   NTLM support requires OpenSSL, GnuTLS, mbedTLS, NSS, Secure Transport, or
   Microsoft Windows libraries at build-time to provide this functionality.
@@ -894,7 +902,7 @@
   NTLM is a Microsoft proprietary protocol. Proprietary formats are evil. You
   should not use such ones.
 
-  4.10 My HTTP request using HEAD, PUT or DELETE doesn't work!
+  4.10 My HTTP request using HEAD, PUT or DELETE does not work!
 
   Many web servers allow or demand that the administrator configures the
   server properly for these requests to work on the web server.
@@ -902,7 +910,7 @@
   Some servers seem to support HEAD only on certain kinds of URLs.
 
   To fully grasp this, try the documentation for the particular server
-  software you're trying to interact with. This is not anything curl can do
+  software you are trying to interact with. This is not anything curl can do
   anything about.
 
   4.11 Why do my HTTP range requests return the full document?
@@ -913,7 +921,7 @@
   4.12 Why do I get "certificate verify failed" ?
 
   When you invoke curl and get an error 60 error back it means that curl
-  couldn't verify that the server's certificate was good. curl verifies the
+  could not verify that the server's certificate was good. curl verifies the
   certificate using the CA cert bundle and verifying for which names the
   certificate has been granted.
 
@@ -930,7 +938,7 @@
   At times, you find that the verification works in your favorite browser but
   fails in curl. When this happens, the reason is usually that the server
   sends an incomplete cert chain. The server is mandated to send all
-  "intermediate certificates" but doesn't. This typically works with browsers
+  "intermediate certificates" but does not. This typically works with browsers
   anyway since they A) cache such certs and B) supports AIA which downloads
   such missing certificates on demand. This is a server misconfiguration. A
   good way to figure out if this is the case it to use the SSL Labs server
@@ -963,7 +971,7 @@
   manually figure out what the page is set to do, or write a script that parses
   the results and fetches the new URL.
 
-  4.15 FTPS doesn't work
+  4.15 FTPS does not work
 
   curl supports FTPS (sometimes known as FTP-SSL) both implicit and explicit
   mode.
@@ -980,13 +988,13 @@
   4.16 My HTTP POST or PUT requests are slow!
 
   libcurl makes all POST and PUT requests (except for POST requests with a
-  very tiny request body) use the "Expect: 100-continue" header. This header
+  tiny request body) use the "Expect: 100-continue" header. This header
   allows the server to deny the operation early so that libcurl can bail out
   before having to send any data. This is useful in authentication
   cases and others.
 
-  However, many servers don't implement the Expect: stuff properly and if the
-  server doesn't respond (positively) within 1 second libcurl will continue
+  However, many servers do not implement the Expect: stuff properly and if the
+  server does not respond (positively) within 1 second libcurl will continue
   and send off the data anyway.
 
   You can disable libcurl's use of the Expect: header the same way you disable
@@ -1006,7 +1014,7 @@
   Also, even on non-Windows systems there may run a firewall or anti-virus
   software or similar that accepts the connection but does not actually do
   anything else. This will make (lib)curl to consider the connection connected
-  and thus the connect timeout won't trigger.
+  and thus the connect timeout will not trigger.
 
   4.18 file:// URLs containing drive letters (Windows, NetWare)
 
@@ -1015,7 +1023,7 @@
 
   file://D:/blah.txt
 
-  You'll find that even if D:\blah.txt does exist, curl returns a 'file
+  you will find that even if D:\blah.txt does exist, curl returns a 'file
   not found' error.
 
   According to RFC 1738 (https://www.ietf.org/rfc/rfc1738.txt),
@@ -1023,7 +1031,7 @@
   most implementations. In the above example, 'D:' is treated as the
   host component, and is taken away. Thus, curl tries to open '/blah.txt'.
   If your system is installed to drive C:, that will resolve to 'C:\blah.txt',
-  and if that doesn't exist you will get the not found error.
+  and if that does not exist you will get the not found error.
 
   To fix this problem, use file:// URLs with *three* leading slashes:
 
@@ -1036,11 +1044,11 @@
 
   In either case, curl should now be looking for the correct file.
 
-  4.19 Why doesn't curl return an error when the network cable is unplugged?
+  4.19 Why does not curl return an error when the network cable is unplugged?
 
   Unplugging a cable is not an error situation. The TCP/IP protocol stack
   was designed to be fault tolerant, so even though there may be a physical
-  break somewhere the connection shouldn't be affected, just possibly
+  break somewhere the connection should not be affected, just possibly
   delayed.  Eventually, the physical break will be fixed or the data will be
   re-routed around the physical problem through another path.
 
@@ -1053,9 +1061,9 @@
   connection to make sure it is still available to send data. That should
   reliably detect any TCP/IP network failure.
 
-  But even that won't detect the network going down before the TCP/IP
+  But even that will not detect the network going down before the TCP/IP
   connection is established (e.g. during a DNS lookup) or using protocols that
-  don't use TCP.  To handle those situations, curl offers a number of timeouts
+  do not use TCP.  To handle those situations, curl offers a number of timeouts
   on its own. --speed-limit/--speed-time will abort if the data transfer rate
   falls too low, and --connect-timeout and --max-time can be used to put an
   overall timeout on the connection phase or the entire transfer.
@@ -1066,11 +1074,11 @@
   by having the application monitor the network connection on its own using an
   OS-specific mechanism, then signaling libcurl to abort (see also item 5.13).
 
-  4.20 curl doesn't return error for HTTP non-200 responses!
+  4.20 curl does not return error for HTTP non-200 responses!
 
   Correct. Unless you use -f (--fail).
 
-  When doing HTTP transfers, curl will perform exactly what you're asking it
+  When doing HTTP transfers, curl will perform exactly what you are asking it
   to do and if successful it will not return an error. You can use curl to
   test your web server's "file not found" page (that gets 404 back), you can
   use it to check your authentication protected web pages (that gets a 401
@@ -1079,7 +1087,7 @@
   The specific HTTP response code does not constitute a problem or error for
   curl. It simply sends and delivers HTTP as you asked and if that worked,
   everything is fine and dandy. The response code is generally providing more
-  higher level error information that curl doesn't care about. The error was
+  higher level error information that curl does not care about. The error was
   not in the HTTP transfer.
 
   If you want your command line to treat error codes in the 400 and up range
@@ -1145,7 +1153,7 @@
   libcurl has excellent support for transferring multiple files. You should
   just repeatedly set new URLs with curl_easy_setopt() and then transfer it
   with curl_easy_perform(). The handle you get from curl_easy_init() is not
-  only reusable, but you're even encouraged to reuse it if you can, as that
+  only reusable, but you are even encouraged to reuse it if you can, as that
   will enable libcurl to use persistent connections.
 
   5.4 Does libcurl do Winsock initialization on win32 systems?
@@ -1187,12 +1195,12 @@
 
   When building an application that uses the static libcurl library, you must
   add -DCURL_STATICLIB to your CFLAGS. Otherwise the linker will look for
-  dynamic import symbols. If you're using Visual Studio, you need to instead
+  dynamic import symbols. If you are using Visual Studio, you need to instead
   add CURL_STATICLIB in the "Preprocessor Definitions" section.
 
   If you get linker error like "unknown symbol __imp__curl_easy_init ..." you
   have linked against the wrong (static) library.  If you want to use the
-  libcurl.dll and import lib, you don't need any extra CFLAGS, but use one of
+  libcurl.dll and import lib, you do not need any extra CFLAGS, but use one of
   the import libraries below. These are the libraries produced by the various
   lib/Makefile.* files:
 
@@ -1206,7 +1214,7 @@
   5.8 libcurl.so.X: open failed: No such file or directory
 
   This is an error message you might get when you try to run a program linked
-  with a shared version of libcurl and your run-time linker (ld.so) couldn't
+  with a shared version of libcurl and your run-time linker (ld.so) could not
   find the shared library named libcurl.so.X. (Where X is the number of the
   current libcurl ABI, typically 3 or 4).
 
@@ -1220,7 +1228,7 @@
   * Set an environment variable (LD_LIBRARY_PATH for example) where ld.so
     should check for libs
 
-  * Adjust the system's config to check for libs in the directory where you've
+  * Adjust the system's config to check for libs in the directory where you have
     put the dir (like Linux's /etc/ld.so.conf)
 
   'man ld.so' and 'man ld' will tell you more details
@@ -1289,13 +1297,13 @@
   can do this with include the progress callback, the read callback and the
   write callback.
 
-  If you're using the multi interface, you can also stop a transfer by
+  If you are using the multi interface, you can also stop a transfer by
   removing the particular easy handle from the multi stack at any moment you
   think the transfer is done or when you wish to abort the transfer.
 
   5.14 Using C++ non-static functions for callbacks?
 
-  libcurl is a C library, it doesn't know anything about C++ member functions.
+  libcurl is a C library, it does not know anything about C++ member functions.
 
   You can overcome this "limitation" with relative ease using a static
   member function that is passed a pointer to the class:
@@ -1323,9 +1331,9 @@
   a symlink etc. If the FTP server supports the MLSD command then it will
   return data in a machine-readable format that can be parsed for type. The
   types are specified by RFC3659 section 7.5.1. If MLSD is not supported then
-  you have to work with what you're given. The LIST output format is entirely
-  at the server's own liking and the NLST output doesn't reveal any types and
-  in many cases doesn't even include all the directory entries. Also, both LIST
+  you have to work with what you are given. The LIST output format is entirely
+  at the server's own liking and the NLST output does not reveal any types and
+  in many cases does not even include all the directory entries. Also, both LIST
   and NLST tend to hide unix-style hidden files (those that start with a dot)
   by default so you need to do "LIST -a" or similar to see them.
 
@@ -1378,16 +1386,16 @@
   but still in the same single thread.
 
   libcurl will potentially internally use threads for name resolving, if it
-  was built to work like that, but in those cases it'll create the child
+  was built to work like that, but in those cases it will create the child
   threads by itself and they will only be used and then killed internally by
   libcurl and never exposed to the outside.
 
 6. License Issues
 
-  curl and libcurl are released under a MIT/X derivative license. The license is
-  very liberal and should not impose a problem for your project. This section
-  is just a brief summary for the cases we get the most questions. (Parts of
-  this section was much enhanced by Bjorn Reese.)
+  curl and libcurl are released under a MIT/X derivative license. The license
+  is liberal and should not impose a problem for your project. This section is
+  just a brief summary for the cases we get the most questions. (Parts of this
+  section was much enhanced by Bjorn Reese.)
 
   We are not lawyers and this is not legal advice. You should probably consult
   one if you want true and accurate legal insights without our prejudice. Note
@@ -1418,7 +1426,7 @@
 
   Yes!
 
-  The LGPL license doesn't clash with other licenses.
+  The LGPL license does not clash with other licenses.
 
   6.5 Can I modify curl/libcurl for my program and keep the changes secret?
 
@@ -1494,3 +1502,40 @@
   PHP/CURL is a module that comes with the regular PHP package. It depends on
   and uses libcurl, so you need to have libcurl installed properly before
   PHP/CURL can be used.
+
+8. Development
+
+ 8.1 Why does curl use C89?
+
+ As with everything in curl, there's a history and we keep using what we have
+ used before until someone brings up the subject and argues for and works on
+ changing it.
+
+ We started out using C89 in the 1990s because that was the only way to write
+ a truly portable C program and have it run as widely as possible. C89 was for
+ a long time even necessary to make things work on otherwise considered modern
+ platforms such as Windows. Today, we do not really know how many users that
+ still require the use of a C89 compiler.
+
+ We will continue to use C89 for as long as nobody brings up a strong enough
+ reason for us to change our minds. The core developers of the project do not
+ feel restricted by this and we are not convinced that going C99 will offer us
+ enough of a benefit to warrant the risk of cutting off a share of users.
+
+ 8.2 Will curl be rewritten?
+
+ In one go: no. Little by little over time? Maybe.
+
+ Over the years, new languages and clever operating environments come and go.
+ Every now and then the urge apparently arises to request that we rewrite curl
+ in another language.
+
+ Some the most important properties in curl are maintaining the API and ABI
+ for libcurl and keeping the behavior for the command line tool. As long as we
+ can do that, everything else is up for discussion. To maintain the ABI, we
+ probably have to maintain a certain amount of code in C, and to remain rock
+ stable, we will never risk anything by rewriting a lot of things in one go.
+ That said, we can certainly offer more and more optional backends written in
+ other languages, as long as those backends can be plugged in at build-time.
+ Back-ends can be written in any language, but should probably provide APIs
+ usable from C to ease integration and transition.
diff --git a/docs/GOVERNANCE.md b/docs/GOVERNANCE.md
index dfc2071..fd778b3 100644
--- a/docs/GOVERNANCE.md
+++ b/docs/GOVERNANCE.md
@@ -98,7 +98,7 @@
 
 ## Security team members
 
-We have a security team. That's the team of people who are subscribed to the
+We have a security team. That is the team of people who are subscribed to the
 curl-security mailing list; the receivers of security reports from users and
 developers. This list of people will vary over time but should be skilled
 developers familiar with the curl project.
@@ -123,7 +123,7 @@
 
 ## BDFL
 
-That's Daniel.
+That is Daniel.
 
 # Maintainers
 
@@ -152,10 +152,10 @@
 
 ### Merge advice
 
-When you're merging patches/PRs...
+When you are merging patches/PRs...
 
 - make sure the commit messages follow our template
-- squash patch sets into a few logical commits even if the PR didn't, if
+- squash patch sets into a few logical commits even if the PR did not, if
   necessary
 - avoid the "merge" button on GitHub, do it "manually" instead to get full
   control and full audit trail (github leaves out you as "Committer:")
diff --git a/docs/HELP-US.md b/docs/HELP-US.md
index ce3d720..64c08d8 100644
--- a/docs/HELP-US.md
+++ b/docs/HELP-US.md
@@ -5,7 +5,7 @@
 good starting points.
 
 A good idea is to start by subscribing to the [curl-library mailing
-list](https://cool.haxx.se/mailman/listinfo/curl-library) to keep track of the
+list](https://lists.haxx.se/listinfo/curl-library) to keep track of the
 current discussion topics.
 
 ## Scratch your own itch
@@ -18,10 +18,10 @@
 ## Smaller tasks
 
 Some projects mark small issues as "beginner friendly", "bite-sized" or
-similar. We don't do that in curl since such issues never linger around long
-enough. Simple issues get handled very fast.
+similar. We do not do that in curl since such issues never linger around long
+enough. Simple issues get handled fast.
 
-If you're looking for a smaller or simpler task in the project to help out
+If you are looking for a smaller or simpler task in the project to help out
 with as an entry-point into the project, perhaps because you are a newcomer or
 even maybe not a terribly experienced developer, here's our advice:
 
@@ -43,7 +43,7 @@
 
 ## Work on known bugs
 
-Some bugs are known and haven't yet received attention and work enough to get
+Some bugs are known and have not yet received attention and work enough to get
 fixed. We collect such known existing flaws in the
 [KNOWN_BUGS](https://curl.se/docs/knownbugs.html) page. Many of them link
 to the original bug report with some additional details, but some may also
@@ -56,7 +56,7 @@
 collection of test results from the automatic curl build and tests that are
 performed by volunteers. Fixing compiler warnings and errors shown there is
 something we value greatly. Also, if you own or run systems or architectures
-that aren't already tested in the autobuilds, we also appreciate more
+that are not already tested in the autobuilds, we also appreciate more
 volunteers running builds automatically to help us keep curl portable.
 
 ## TODO items
@@ -64,7 +64,7 @@
 Ideas for features and functions that we have considered worthwhile to
 implement and provide are kept in the
 [TODO](https://curl.se/docs/todo.html) file. Some of the ideas are
-rough. Some are well thought out. Some probably aren't really suitable
+rough. Some are well thought out. Some probably are not really suitable
 anymore.
 
 Before you invest a lot of time on a TODO item, do bring it up for discussion
@@ -83,5 +83,5 @@
 
 We offer [guidelines](https://curl.se/dev/contribute.html) that are
 suitable to be familiar with before you decide to contribute to curl. If
-you're used to open source development, you'll probably not find many
+you are used to open source development, you will probably not find many
 surprises in there.
diff --git a/docs/HISTORY.md b/docs/HISTORY.md
index 373741c..12af639 100644
--- a/docs/HISTORY.md
+++ b/docs/HISTORY.md
@@ -60,7 +60,7 @@
 August: first announcement of curl on freshmeat.net.
 
 October: with the curl 4.9 release and the introduction of cookie support,
-curl was no longer released under the GPL license. Now we're at 4000 lines of
+curl was no longer released under the GPL license. Now we are at 4000 lines of
 code, we switched over to the MPL license to restrict the effects of
 "copyleft".
 
diff --git a/docs/HTTP-COOKIES.md b/docs/HTTP-COOKIES.md
index 9d1e099..c7c116b 100644
--- a/docs/HTTP-COOKIES.md
+++ b/docs/HTTP-COOKIES.md
@@ -8,13 +8,13 @@
 
   Cookies are either "session cookies" which typically are forgotten when the
   session is over which is often translated to equal when browser quits, or
-  the cookies aren't session cookies they have expiration dates after which
+  the cookies are not session cookies they have expiration dates after which
   the client will throw them away.
 
   Cookies are set to the client with the Set-Cookie: header and are sent to
   servers with the Cookie: header.
 
-  For a very long time, the only spec explaining how to use cookies was the
+  For a long time, the only spec explaining how to use cookies was the
   original [Netscape spec from 1994](https://curl.se/rfc/cookie_spec.html).
 
   In 2011, [RFC6265](https://www.ietf.org/rfc/rfc6265.txt) was finally
@@ -48,7 +48,7 @@
   The cookie file format is text based and stores one cookie per line. Lines
   that start with `#` are treated as comments.
 
-  Each line that each specifies a single cookie consists of seven text fields
+  Each line that specifies a single cookie consists of seven text fields
   separated with TAB characters. A valid line must end with a newline
   character.
 
@@ -74,7 +74,7 @@
   `-b, --cookie`
 
   tell curl a file to read cookies from and start the cookie engine, or if it
-  isn't a file it will pass on the given string. -b name=var works and so does
+  is not a file it will pass on the given string. -b name=var works and so does
   -b cookiefile.
 
   `-j, --junk-session-cookies`
diff --git a/docs/HTTP2.md b/docs/HTTP2.md
index d443067..7ab5dfd 100644
--- a/docs/HTTP2.md
+++ b/docs/HTTP2.md
@@ -78,7 +78,7 @@
 that when doing subsequent parallel requests.
 
 While libcurl sets up a connection to a HTTP server there is a period during
-which it doesn't know if it can pipeline or do multiplexing and if you add new
+which it does not know if it can pipeline or do multiplexing and if you add new
 transfers in that period, libcurl will default to start new connections for
 those transfers. With the new option `CURLOPT_PIPEWAIT` (added in 7.43.0), you
 can ask that a transfer should rather wait and see in case there's a
@@ -105,7 +105,7 @@
 curl tool limitations
 ---------------------
 
-The command line tool doesn't support HTTP/2 server push. It supports
+The command line tool does not support HTTP/2 server push. It supports
 multiplexing when the parallel transfer option is used.
 
 HTTP Alternative Services
diff --git a/docs/HTTP3.md b/docs/HTTP3.md
index 2f377fd..4853e8d 100644
--- a/docs/HTTP3.md
+++ b/docs/HTTP3.md
@@ -2,7 +2,7 @@
 
 ## Resources
 
-[HTTP/3 Explained](https://daniel.haxx.se/http3-explained/) - the online free
+[HTTP/3 Explained](https://http3-explained.haxx.se/en/) - the online free
 book describing the protocols involved.
 
 [QUIC implementation](https://github.com/curl/curl/wiki/QUIC-implementation) -
@@ -13,7 +13,7 @@
 
 ## QUIC libraries
 
-QUIC libraries we're experimenting with:
+QUIC libraries we are experimenting with:
 
 [ngtcp2](https://github.com/ngtcp2/ngtcp2)
 
@@ -33,18 +33,18 @@
 
 Build (patched) OpenSSL
 
-     % git clone --depth 1 -b OpenSSL_1_1_1k+quic https://github.com/quictls/openssl
+     % git clone --depth 1 -b openssl-3.0.0+quic https://github.com/quictls/openssl
      % cd openssl
      % ./config enable-tls1_3 --prefix=<somewhere1>
      % make
-     % make install_sw
+     % make install
 
 Build nghttp3
 
      % cd ..
      % git clone https://github.com/ngtcp2/nghttp3
      % cd nghttp3
-     % autoreconf -i
+     % autoreconf -fi
      % ./configure --prefix=<somewhere2> --enable-lib-only
      % make
      % make install
@@ -54,7 +54,7 @@
      % cd ..
      % git clone https://github.com/ngtcp2/ngtcp2
      % cd ngtcp2
-     % autoreconf -i
+     % autoreconf -fi
      % ./configure PKG_CONFIG_PATH=<somewhere1>/lib/pkgconfig:<somewhere2>/lib/pkgconfig LDFLAGS="-Wl,-rpath,<somewhere1>/lib" --prefix=<somewhere3> --enable-lib-only
      % make
      % make install
@@ -64,9 +64,12 @@
      % cd ..
      % git clone https://github.com/curl/curl
      % cd curl
-     % ./buildconf
+     % autoreconf -fi
      % LDFLAGS="-Wl,-rpath,<somewhere1>/lib" ./configure --with-openssl=<somewhere1> --with-nghttp3=<somewhere2> --with-ngtcp2=<somewhere3>
      % make
+     % make install
+
+For OpenSSL 3.0.0 or later builds on Linux for x86_64 architecture, substitute all occurances of "/lib" with "/lib64"
 
 ## Build with GnuTLS
 
@@ -75,7 +78,7 @@
      % git clone --depth 1 https://gitlab.com/gnutls/gnutls.git
      % cd gnutls
      % ./bootstrap
-     % ./configure --disable-doc --prefix=<somewhere1>
+     % ./configure --prefix=<somewhere1>
      % make
      % make install
 
@@ -84,7 +87,7 @@
      % cd ..
      % git clone https://github.com/ngtcp2/nghttp3
      % cd nghttp3
-     % autoreconf -i
+     % autoreconf -fi
      % ./configure --prefix=<somewhere2> --enable-lib-only
      % make
      % make install
@@ -94,7 +97,7 @@
      % cd ..
      % git clone https://github.com/ngtcp2/ngtcp2
      % cd ngtcp2
-     % autoreconf -i
+     % autoreconf -fi
      % ./configure PKG_CONFIG_PATH=<somewhere1>/lib/pkgconfig:<somewhere2>/lib/pkgconfig LDFLAGS="-Wl,-rpath,<somewhere1>/lib" --prefix=<somewhere3> --enable-lib-only --with-gnutls
      % make
      % make install
@@ -104,9 +107,10 @@
      % cd ..
      % git clone https://github.com/curl/curl
      % cd curl
-     % ./buildconf
+     % autoreconf -fi
      % ./configure --without-openssl --with-gnutls=<somewhere1> --with-nghttp3=<somewhere2> --with-ngtcp2=<somewhere3>
      % make
+     % make install
 
 # quiche version
 
@@ -125,9 +129,12 @@
      % cd ..
      % git clone https://github.com/curl/curl
      % cd curl
-     % ./buildconf
+     % autoreconf -fi
      % ./configure LDFLAGS="-Wl,-rpath,$PWD/../quiche/target/release" --with-openssl=$PWD/../quiche/deps/boringssl/src --with-quiche=$PWD/../quiche/target/release
      % make
+     % make install
+
+ If `make install` results in `Permission denied` error, you will need to prepend it with `sudo`.
 
 ## Run
 
diff --git a/docs/HYPER.md b/docs/HYPER.md
index da6c663..0ca1ce1 100644
--- a/docs/HYPER.md
+++ b/docs/HYPER.md
@@ -46,10 +46,13 @@
 
 ## Limitations
 
-The hyper backend doesn't support
+The hyper backend does not support
 
 - `CURLOPT_IGNORE_CONTENT_LENGTH`
+- `--raw` and disabling `CURLOPT_HTTP_TRANSFER_DECODING`
 - RTSP
+- hyper is much stricter about what HTTP header contents it allow in requests
+- HTTP/0.9
 
 ## Remaining issues
 
@@ -59,11 +62,6 @@
 - multiplexed HTTP/2
 - h2 Upgrade:
 - pausing transfers
-- co-exist with a HTTP/3 build
 - receiving HTTP/1 trailers
 - sending HTTP/1 trailers
-- accept-encoding
-- transfer encoding
-- alt-svc
-- hsts
-- DoH ([#6389](https://github.com/curl/curl/issues/6389))
+
diff --git a/docs/INSTALL.cmake b/docs/INSTALL.cmake
index 828d9b9..3f905d7 100644
--- a/docs/INSTALL.cmake
+++ b/docs/INSTALL.cmake
@@ -26,14 +26,14 @@
    - Builds libcurl without large file support
    - Does not support all SSL libraries (only OpenSSL, Schannel,
      Secure Transport, and mbed TLS, NSS, WolfSSL)
-   - Doesn't allow different resolver backends (no c-ares build support)
+   - Does not allow different resolver backends (no c-ares build support)
    - No RTMP support built
-   - Doesn't allow build curl and libcurl debug enabled
-   - Doesn't allow a custom CA bundle path
-   - Doesn't allow you to disable specific protocols from the build
-   - Doesn't find or use krb4 or GSS
-   - Rebuilds test files too eagerly, but still can't run the tests
-   - Doesn't detect the correct strerror_r flavor when cross-compiling (issue #1123)
+   - Does not allow build curl and libcurl debug enabled
+   - Does not allow a custom CA bundle path
+   - Does not allow you to disable specific protocols from the build
+   - Does not find or use krb4 or GSS
+   - Rebuilds test files too eagerly, but still cannot run the tests
+   - Does not detect the correct strerror_r flavor when cross-compiling (issue #1123)
 
 
 Command Line CMake
diff --git a/docs/INSTALL.md b/docs/INSTALL.md
index 84fe829..ed8ca28 100644
--- a/docs/INSTALL.md
+++ b/docs/INSTALL.md
@@ -27,7 +27,7 @@
 
 # Unix
 
-A normal Unix installation is made in three or four steps (after you've
+A normal Unix installation is made in three or four steps (after you have
 unpacked the source archive):
 
     ./configure --with-openssl [--with-gnutls --with-wolfssl]
@@ -58,7 +58,7 @@
 
 The configure script always tries to find a working SSL library unless
 explicitly told not to. If you have OpenSSL installed in the default search
-path for your compiler/linker, you don't need to do anything special. If you
+path for your compiler/linker, you do not need to do anything special. If you
 have OpenSSL installed in `/usr/local/ssl`, you can run configure like:
 
     ./configure --with-openssl
@@ -85,7 +85,7 @@
     CPPFLAGS="-I/path/to/ssl/include" LDFLAGS="-L/path/to/ssl/lib" ./configure
 
 If you have shared SSL libs installed in a directory where your run-time
-linker doesn't find them (which usually causes configure failures), you can
+linker does not find them (which usually causes configure failures), you can
 provide this option to gcc to set a hard-coded path to the run-time linker:
 
     LDFLAGS=-Wl,-R/usr/local/ssl/lib ./configure --with-openssl
@@ -102,7 +102,7 @@
 
     ./configure --disable-thread
 
-If you're a curl developer and use gcc, you might want to enable more debug
+If you are a curl developer and use gcc, you might want to enable more debug
 options with the `--enable-debug` option.
 
 curl can be built to use a whole range of libraries to provide various useful
@@ -197,7 +197,7 @@
 
 Almost identical to the unix installation. Run the configure script in the
 curl source tree root with `sh configure`. Make sure you have the `sh`
-executable in `/bin/` or you'll see the configure fail toward the end.
+executable in `/bin/` or you will see the configure fail toward the end.
 
 Run `make`
 
@@ -355,7 +355,7 @@
 
     ./configure --host aarch64-linux-android --with-pic --disable-shared
 
-Note that this won't give you SSL/TLS support. If you need SSL/TLS, you have
+Note that this will not give you SSL/TLS support. If you need SSL/TLS, you have
 to build curl against a SSL/TLS layer, e.g. OpenSSL, because it's impossible for
 curl to access Android's native SSL/TLS layer. To build curl for Android using
 OpenSSL, follow the OpenSSL build instructions and then install `libssl.a` and
@@ -366,7 +366,7 @@
     ./configure --host aarch64-linux-android --with-pic --disable-shared --with-openssl="$TOOLCHAIN/sysroot/usr"
 
 Note, however, that you must target at least Android M (API level 23) or `configure`
-won't be able to detect OpenSSL since `stderr` (and the like) weren't defined
+will not be able to detect OpenSSL since `stderr` (and the like) were not defined
 before Android M.
 
 # IBM i
@@ -387,16 +387,16 @@
 
 ## Multithreading notes
 
-By default, jobs in IBM i won't start with threading enabled. (Exceptions
+By default, jobs in IBM i will not start with threading enabled. (Exceptions
 include interactive PASE sessions started by `QP2TERM` or SSH.) If you use
 curl in an environment without threading when options like async DNS were
-enabled, you'll messages like:
+enabled, you will messages like:
 
 ```
 getaddrinfo() thread failed to start
 ```
 
-Don't panic! curl and your program aren't broken. You can fix this by:
+Do not panic! curl and your program are not broken. You can fix this by:
 
 - Set the environment variable `QIBM_MULTI_THREADED` to `Y` before starting
   your program. This can be done at whatever scope you feel is appropriate.
@@ -472,7 +472,7 @@
  - `--disable-unix-sockets` (disables support for UNIX sockets)
  - `--disable-verbose` (eliminates debugging strings and error code strings)
  - `--disable-versioned-symbols` (disables support for versioned symbols)
- - `--enable-hidden-symbols` (eliminates unneeded symbols in the shared library)
+ - `--enable-symbol-hiding` (eliminates unneeded symbols in the shared library)
  - `--without-libidn` (disables support for the libidn DNS library)
  - `--without-librtmp` (disables support for RTMP)
  - `--without-openssl` (disables support for SSL/TLS)
@@ -514,7 +514,7 @@
 
 This is a probably incomplete list of known CPU architectures and operating
 systems that curl has been compiled for. If you know a system curl compiles
-and runs on, that isn't listed, please let us know!
+and runs on, that is not listed, please let us know!
 
 ## 85 Operating Systems
 
diff --git a/docs/INTERNALS.md b/docs/INTERNALS.md
index a1a8e11..9c50b14 100644
--- a/docs/INTERNALS.md
+++ b/docs/INTERNALS.md
@@ -62,7 +62,7 @@
 ===
 
  All changes to the sources are committed to the git repository as soon as
- they're somewhat verified to work. Changes shall be committed as independently
+ they are somewhat verified to work. Changes shall be committed as independently
  as possible so that individual changes can be easily spotted and tracked
  afterwards.
 
@@ -74,7 +74,7 @@
 ===========
 
  We write curl and libcurl to compile with C89 compilers.  On 32-bit and up
- machines. Most of libcurl assumes more or less POSIX compliance but that's
+ machines. Most of libcurl assumes more or less POSIX compliance but that is
  not a requirement.
 
  We write libcurl to build and work with lots of third party tools, and we
@@ -88,7 +88,7 @@
  - GnuTLS       3.1.10
  - zlib         1.1.4
  - libssh2      1.0
- - c-ares       1.6.0
+ - c-ares       1.16.0
  - libidn2      2.0.0
  - wolfSSL      2.0.0
  - openldap     2.0
@@ -103,7 +103,7 @@
 -----------------
 
  On systems where configure runs, we aim at working on them all - if they have
- a suitable C compiler. On systems that don't run configure, we strive to keep
+ a suitable C compiler. On systems that do not run configure, we strive to keep
  curl running correctly on:
 
  - Windows      98
@@ -143,7 +143,7 @@
 
  2. Windows requires a couple of init calls for the socket stuff.
 
-   That's taken care of by the `curl_global_init()` call, but if other libs
+   That is taken care of by the `curl_global_init()` call, but if other libs
    also do it etc there might be reasons for applications to alter that
    behavior.
 
@@ -162,13 +162,13 @@
 
  Inside the source code, We make an effort to avoid `#ifdef [Your OS]`. All
  conditionals that deal with features *should* instead be in the format
- `#ifdef HAVE_THAT_WEIRD_FUNCTION`. Since Windows can't run configure scripts,
+ `#ifdef HAVE_THAT_WEIRD_FUNCTION`. Since Windows cannot run configure scripts,
  we maintain a `curl_config-win32.h` file in lib directory that is supposed to
  look exactly like a `curl_config.h` file would have looked like on a Windows
  machine!
 
  Generally speaking: always remember that this will be compiled on dozens of
- operating systems. Don't walk on the edge!
+ operating systems. Do not walk on the edge!
 
 <a name="Library"></a>
 Library
@@ -237,7 +237,7 @@
    The functions are named after the protocols they handle.
 
    The protocol-specific functions of course deal with protocol-specific
-   negotiations and setup. When they're ready to start the actual file
+   negotiations and setup. When they are ready to start the actual file
    transfer they call the `Curl_setup_transfer()` function (in
    `lib/transfer.c`) to setup the transfer and returns.
 
@@ -276,7 +276,7 @@
    connections so this is not normally called when `curl_easy_perform()` is
    used. This function is only used when we are certain that no more transfers
    are going to be made on the connection. It can be also closed by force, or
-   it can be called to make sure that libcurl doesn't keep too many
+   it can be called to make sure that libcurl does not keep too many
    connections alive at the same time.
 
    This function cleans up all resources that are associated with a single
@@ -372,14 +372,14 @@
  more).
 
  `lib/getenv.c` offers `curl_getenv()` which is for reading environment
- variables in a neat platform independent way. That's used in the client, but
+ variables in a neat platform independent way. That is used in the client, but
  also in `lib/url.c` when checking the proxy environment variables. Note that
  contrary to the normal unix `getenv()`, this returns an allocated buffer that
  must be `free()`ed after use.
 
  `lib/netrc.c` holds the `.netrc` parser.
 
- `lib/timeval.c` features replacement functions for systems that don't have
+ `lib/timeval.c` features replacement functions for systems that do not have
  `gettimeofday()` and a few support functions for timeval conversions.
 
  A function named `curl_version()` that returns the full curl version string
@@ -408,7 +408,7 @@
 
  - When the transfer operation is complete, the connection is left
    open. Particular options may tell libcurl not to, and protocols may signal
-   closure on connections and then they won't be kept open, of course.
+   closure on connections and then they will not be kept open, of course.
 
  - When `curl_easy_cleanup()` is called, we close all still opened connections,
    unless of course the multi interface "owns" the connections.
@@ -454,7 +454,7 @@
 Library Symbols
 ===============
 
- All symbols used internally in libcurl must use a `Curl_` prefix if they're
+ All symbols used internally in libcurl must use a `Curl_` prefix if they are
  used in more than a single file. Single-file symbols must be made static.
  Public ("exported") symbols must use a `curl_` prefix. (There are exceptions,
  but they are to be changed to follow this pattern in future versions.) Public
@@ -465,9 +465,9 @@
 Return Codes and Informationals
 ===============================
 
- I've made things simple. Almost every function in libcurl returns a CURLcode,
+ I have made things simple. Almost every function in libcurl returns a CURLcode,
  that must be `CURLE_OK` if everything is OK or otherwise a suitable error
- code as the `curl/curl.h` include file defines. The very spot that detects an
+ code as the `curl/curl.h` include file defines. The place that detects an
  error must use the `Curl_failf()` function to set the human-readable error
  description.
 
@@ -475,7 +475,7 @@
  must supply a fair number of informational messages by using the
  `Curl_infof()` function. Those messages are only displayed when the user
  explicitly asks for them. They are best used when revealing information that
- isn't otherwise obvious.
+ is not otherwise obvious.
 
 <a name="abi"></a>
 API/ABI
@@ -553,7 +553,7 @@
  `httpserver.pl` and `ftpserver.pl` before all the test cases are performed.
  The test suite currently only runs on Unix-like platforms.
 
- You'll find a description of the test suite in the `tests/README` file, and
+ you will find a description of the test suite in the `tests/README` file, and
  the test case data files in the `tests/FILEFORMAT` file.
 
  The test suite automatically detects if curl was built with the memory
@@ -591,7 +591,7 @@
  Lastly, I also changed libcurl to be single-threaded rather than
  multi-threaded, again this was to prevent some duplicate symbol errors. I'm
  not sure why I needed to change everything to single-threaded, but when I
- didn't I got redefinition errors for several CRT functions (`malloc()`,
+ did not I got redefinition errors for several CRT functions (`malloc()`,
  `stricmp()`, etc.)
 
 <a name="curl_off_t"></a>
@@ -716,8 +716,8 @@
 ## `CURLRES_IPV6`
 
  this host has `getaddrinfo()` and family, and thus we use that. The host may
- not be able to resolve IPv6, but we don't really have to take that into
- account. Hosts that aren't IPv6-enabled have `CURLRES_IPV4` defined.
+ not be able to resolve IPv6, but we do not really have to take that into
+ account. Hosts that are not IPv6-enabled have `CURLRES_IPV4` defined.
 
 ## `CURLRES_ARES`
 
@@ -797,9 +797,9 @@
     tests/memanalyze.pl dump
 
   This now outputs a report on what resources that were allocated but never
-  freed etc. This report is very fine for posting to the list!
+  freed etc. This report is fine for posting to the list!
 
-  If this doesn't produce any output, no leak was detected in libcurl. Then
+  If this does not produce any output, no leak was detected in libcurl. Then
   the leak is mostly likely to be in your code.
 
 <a name="multi_socket"></a>
@@ -812,8 +812,7 @@
 
  1. The application can use whatever event system it likes as it gets info
     from libcurl about what file descriptors libcurl waits for what action
-    on. (The previous API returns `fd_sets` which is very
-    `select()`-centric).
+    on. (The previous API returns `fd_sets` which is `select()`-centric).
 
  2. When the application discovers action on a single socket, it calls
     libcurl and informs that there was action on this particular socket and
@@ -854,7 +853,7 @@
 ==================
 
 This section should cover 7.32.0 pretty accurately, but will make sense even
-for older and later versions as things don't change drastically that often.
+for older and later versions as things do not change drastically that often.
 
 <a name="Curl_easy"></a>
 ## Curl_easy
@@ -900,7 +899,7 @@
   performance boost.
 
   Each `connectdata` identifies a single physical connection to a server. If
-  the connection can't be kept alive, the connection will be closed after use
+  the connection cannot be kept alive, the connection will be closed after use
   and then this struct can be removed from the cache and freed.
 
   Thus, the same `Curl_easy` can be used multiple times and each time select
@@ -978,7 +977,7 @@
 
   The concrete function pointer prototypes can be found in `lib/urldata.h`.
 
-  `->scheme` is the URL scheme name, usually spelled out in uppercase. That's
+  `->scheme` is the URL scheme name, usually spelled out in uppercase. That is
   "HTTP" or "FTP" etc. SSL versions of the protocol need their own
   `Curl_handler` setup so HTTPS separate from HTTP.
 
@@ -1008,7 +1007,7 @@
 
   `->doing` keeps getting called while issuing the transfer request command(s)
 
-  `->done` gets called when the transfer is complete and DONE. That's after the
+  `->done` gets called when the transfer is complete and DONE. That is after the
   main data has been transferred.
 
   `->do_more` gets called during the `DO_MORE` state. The FTP protocol uses
@@ -1049,12 +1048,12 @@
     limit which "direction" of socket actions that the main engine will
     concern itself with.
 
-  - `PROTOPT_NONETWORK` - a protocol that doesn't use network (read `file:`)
+  - `PROTOPT_NONETWORK` - a protocol that does not use network (read `file:`)
 
   - `PROTOPT_NEEDSPWD` - this protocol needs a password and will use a default
     one unless one is provided
 
-  - `PROTOPT_NOURLQUERY` - this protocol can't handle a query part on the URL
+  - `PROTOPT_NOURLQUERY` - this protocol cannot handle a query part on the URL
     (?foo=bar)
 
 <a name="conncache"></a>
@@ -1076,7 +1075,7 @@
   holds.
 
   Then individual `Curl_easy` structs can be made to share specific things
-  that they otherwise wouldn't, such as cookies.
+  that they otherwise would not, such as cookies.
 
   The `Curl_share` struct can currently hold cookies, DNS cache and the SSL
   session cache.
@@ -1092,7 +1091,7 @@
 
 [1]: https://curl.se/libcurl/c/curl_easy_setopt.html
 [2]: https://curl.se/libcurl/c/curl_easy_init.html
-[3]: https://c-ares.haxx.se/
+[3]: https://c-ares.org/
 [4]: https://tools.ietf.org/html/rfc7230 "RFC 7230"
 [5]: https://curl.se/libcurl/c/CURLOPT_ACCEPT_ENCODING.html
 [6]: https://curl.se/docs/manpage.html#--compressed
diff --git a/docs/KNOWN_BUGS b/docs/KNOWN_BUGS
index eb31f70..910db4d 100644
--- a/docs/KNOWN_BUGS
+++ b/docs/KNOWN_BUGS
@@ -18,23 +18,24 @@
  1.5 Expect-100 meets 417
  1.6 Unnecessary close when 401 received waiting for 100
  1.7 Deflate error after all content was received
- 1.8 DoH isn't used for all name resolves when enabled
+ 1.8 DoH is not used for all name resolves when enabled
  1.11 CURLOPT_SEEKFUNCTION not called with CURLFORM_STREAM
 
  2. TLS
  2.1 CURLINFO_SSL_VERIFYRESULT has limited support
  2.2 DER in keychain
  2.3 Unable to use PKCS12 certificate with Secure Transport
- 2.4 Secure Transport won't import PKCS#12 client certificates without a password
+ 2.4 Secure Transport will not import PKCS#12 client certificates without a password
  2.5 Client cert handling with Issuer DN differs between backends
  2.6 CURL_GLOBAL_SSL
  2.7 Client cert (MTLS) issues with Schannel
  2.8 Schannel disable CURLOPT_SSL_VERIFYPEER and verify hostname
- 2.9 TLS session cache doesn't work with TFO
+ 2.9 TLS session cache does not work with TFO
  2.10 Store TLS context per transfer instead of per connection
  2.11 Schannel TLS 1.2 handshake bug in old Windows versions
  2.12 FTPS with Schannel times out file list operation
  2.14 Secure Transport disabling hostname validation also disables SNI
+ 2.15 Renegotiate from server may cause hang for OpenSSL backend
 
  3. Email protocols
  3.1 IMAP SEARCH ALL truncated response
@@ -52,7 +53,7 @@
  5.2 curl-config --libs contains private details
  5.3 curl compiled on OSX 10.13 failed to run on OSX 10.10
  5.4 Build with statically built dependency
- 5.5 can't handle Unicode arguments in non-Unicode builds on Windows
+ 5.5 cannot handle Unicode arguments in non-Unicode builds on Windows
  5.7 Visual Studio project gaps
  5.8 configure finding libs in wrong directory
  5.9 Utilize Requires.private directives in libcurl.pc
@@ -65,13 +66,14 @@
  6.2 MIT Kerberos for Windows build
  6.3 NTLM in system context uses wrong name
  6.4 Negotiate and Kerberos V5 need a fake user name
- 6.5 NTLM doesn't support password with § character
+ 6.5 NTLM does not support password with § character
  6.6 libcurl can fail to try alternatives with --proxy-any
- 6.7 Don't clear digest for single realm
+ 6.7 Do not clear digest for single realm
  6.8 RTSP authentication breaks without redirect support
  6.9 SHA-256 digest not supported in Windows SSPI builds
  6.10 curl never completes Negotiate over HTTP
  6.11 Negotiate on Windows fails
+ 6.12 cannot use Secure Transport with Crypto Token Kit
 
  7. FTP
  7.1 FTP without or slow 220 response
@@ -84,14 +86,15 @@
  7.8 Premature transfer end but healthy control channel
  7.9 Passive transfer tries only one IP address
  7.10 FTPS needs session reuse
+ 7.11 FTPS upload data loss with TLS 1.3
 
  8. TELNET
- 8.1 TELNET and time limitations don't work
+ 8.1 TELNET and time limitations do not work
  8.2 Microsoft telnet server
 
  9. SFTP and SCP
- 9.1 SFTP doesn't do CURLOPT_POSTQUOTE correct
- 9.2 wolfssh: publickey auth doesn't work
+ 9.1 SFTP does not do CURLOPT_POSTQUOTE correct
+ 9.2 wolfssh: publickey auth does not work
  9.3 Remote recursive folder creation with SFTP
 
  10. SOCKS
@@ -101,13 +104,13 @@
  11. Internals
  11.1 Curl leaks .onion hostnames in DNS
  11.2 error buffer not set if connection to multiple addresses fails
- 11.3 c-ares deviates from stock resolver on http://1346569778
+ 11.3 Disconnects do not do verbose
  11.4 HTTP test server 'connection-monitor' problems
  11.5 Connection information when using TCP Fast Open
  11.6 slow connect to localhost on Windows
  11.7 signal-based resolver timeouts
  11.8 DoH leaks memory after followlocation
- 11.9 DoH doesn't inherit all transfer options
+ 11.9 DoH does not inherit all transfer options
  11.10 Blocking socket operations in non-blocking API
  11.11 A shared connection cache is not thread-safe
  11.12 'no_proxy' string-matches IPv6 numerical addresses
@@ -119,7 +122,7 @@
  12. LDAP
  12.1 OpenLDAP hangs after returning results
  12.2 LDAP on Windows does authentication wrong?
- 12.3 LDAP on Windows doesn't work
+ 12.3 LDAP on Windows does not work
  12.4 LDAPS with NSS is slow
 
  13. TCP/IP
@@ -141,6 +144,7 @@
  15.10 libspsl is not supported
  15.11 ExternalProject_Add does not set CURL_CA_PATH
  15.12 cannot enable LDAPS on Windows
+ 15.13 CMake build with MIT Kerberos does not work
 
  16. Applications
  16.1 pulseUI VPN client
@@ -150,11 +154,18 @@
  17.2 HTTP/2 frames while in the connection pool kill reuse
  17.3 ENHANCE_YOUR_CALM causes infinite retries
  17.4 Connection failures with parallel HTTP/2
+ 17.5 HTTP/2 connections through HTTPS proxy frequently stall
 
  18. HTTP/3
  18.1 If the HTTP/3 server closes connection during upload curl hangs
  18.2 Uploading HTTP/3 files gets interrupted at certain file sizes
  18.3 HTTP/3 download is 5x times slower than HTTP/2
+ 18.4 Downloading with HTTP/3 produces broken files
+ 18.5 HTTP/3 download with quiche halts after a while
+ 18.6 HTTP/3 multipart POST with quiche fails
+ 18.7 HTTP/3 quiche upload large file fails
+ 18.8 HTTP/3 does not support client certs
+ 18.9 connection migration does not work
 
 ==============================================================================
 
@@ -207,11 +218,11 @@
 
  See https://github.com/curl/curl/issues/2719
 
-1.8 DoH isn't used for all name resolves when enabled
+1.8 DoH is not used for all name resolves when enabled
 
  Even if DoH is specified to be used, there are some name resolves that are
  done without it. This should be fixed. When the internal function
- `Curl_resolver_wait_resolv()` is called, it doesn't use DoH to complete the
+ `Curl_resolver_wait_resolv()` is called, it does not use DoH to complete the
  resolve as it otherwise should.
 
  See https://github.com/curl/curl/pull/3857 and
@@ -220,11 +231,11 @@
 1.11 CURLOPT_SEEKFUNCTION not called with CURLFORM_STREAM
 
  I'm using libcurl to POST form data using a FILE* with the CURLFORM_STREAM
- option of curl_formadd(). I've noticed that if the connection drops at just
+ option of curl_formadd(). I have noticed that if the connection drops at just
  the right time, the POST is reattempted without the data from the file. It
- seems like the file stream position isn't getting reset to the beginning of
+ seems like the file stream position is not getting reset to the beginning of
  the file. I found the CURLOPT_SEEKFUNCTION option and set that with a
- function that performs an fseek() on the FILE*. However, setting that didn't
+ function that performs an fseek() on the FILE*. However, setting that did not
  seem to fix the issue or even get called. See
  https://github.com/curl/curl/issues/768
 
@@ -238,14 +249,14 @@
 
 2.2 DER in keychain
 
- Curl doesn't recognize certificates in DER format in keychain, but it works
+ Curl does not recognize certificates in DER format in keychain, but it works
  with PEM.  https://curl.se/bug/view.cgi?id=1065
 
 2.3 Unable to use PKCS12 certificate with Secure Transport
 
  See https://github.com/curl/curl/issues/5403
 
-2.4 Secure Transport won't import PKCS#12 client certificates without a password
+2.4 Secure Transport will not import PKCS#12 client certificates without a password
 
  libcurl calls SecPKCS12Import with the PKCS#12 client certificate, but that
  function rejects certificates that do not have a password.
@@ -253,7 +264,7 @@
 
 2.5 Client cert handling with Issuer DN differs between backends
 
- When the specified client certificate doesn't match any of the
+ When the specified client certificate does not match any of the
  server-specified DNs, the OpenSSL and GnuTLS backends behave differently.
  The github discussion may contain a solution.
 
@@ -277,7 +288,7 @@
     get "good" random) so applications trying to avoid the init for
     performance reasons would do wrong anyway
 
- D) never very carefully documented so all this mostly just happened to work
+ D) not documented carefully so all this mostly just happened to work
     for some users
 
  However, in spite of the problems with the feature, there were some users who
@@ -297,7 +308,7 @@
 
  https://github.com/curl/curl/issues/3284
 
-2.9 TLS session cache doesn't work with TFO
+2.9 TLS session cache does not work with TFO
 
  See https://github.com/curl/curl/issues/4301
 
@@ -339,6 +350,17 @@
 
  https://github.com/curl/curl/issues/6347
 
+2.15 Renegotiate from server may cause hang for OpenSSL backend
+
+ A race condition has been observed when, immediately after the initial
+ handshake, curl has sent an HTTP request to the server and at the same time
+ the server has sent a TLS hello request (renegotiate) to curl. Both are
+ waiting for the other to respond. OpenSSL is supposed to send a handshake
+ response but does not.
+
+ https://github.com/curl/curl/issues/6785
+ https://github.com/openssl/openssl/issues/14722
+
 3. Email protocols
 
 3.1 IMAP SEARCH ALL truncated response
@@ -361,7 +383,7 @@
 
 3.4 AUTH PLAIN for SMTP is not working on all servers
 
- Specifying "--login-options AUTH=PLAIN" on the command line doesn't seem to
+ Specifying "--login-options AUTH=PLAIN" on the command line does not seem to
  work correctly.
 
  See https://github.com/curl/curl/issues/4080
@@ -370,7 +392,7 @@
 
 4.1 -J and -O with %-encoded file names
 
- -J/--remote-header-name doesn't decode %-encoded file names. RFC6266 details
+ -J/--remote-header-name does not decode %-encoded file names. RFC6266 details
  how it should be done. The can of worm is basically that we have no charset
  handling in curl and ascii >=128 is a challenge for us. Not to mention that
  decoding also means that we need to check for nastiness that is attempted,
@@ -378,10 +400,10 @@
  embedded slashes should be cut off.
  https://curl.se/bug/view.cgi?id=1294
 
- -O also doesn't decode %-encoded names, and while it has even less
+ -O also does not decode %-encoded names, and while it has even less
  information about the charset involved the process is similar to the -J case.
 
- Note that we won't add decoding to -O without the user asking for it with
+ Note that we will not add decoding to -O without the user asking for it with
  some other means as well, since -O has always been documented to use the name
  exactly as specified in the URL.
 
@@ -396,7 +418,7 @@
 4.3 --retry and transfer timeouts
 
  If using --retry and the transfer timeouts (possibly due to using -m or
- -y/-Y) the next attempt doesn't resume the transfer properly from what was
+ -y/-Y) the next attempt does not resume the transfer properly from what was
  downloaded in the previous attempt but will truncate and restart at the
  original position where it was at before the previous failed attempt. See
  https://curl.se/mail/lib-2008-01/0080.html and Mandriva bug report
@@ -444,13 +466,13 @@
  We welcome help to improve curl's ability to link with static libraries, but
  it is likely a task that we can never fully support.
 
-5.5 can't handle Unicode arguments in non-Unicode builds on Windows
+5.5 cannot handle Unicode arguments in non-Unicode builds on Windows
 
- If a URL or filename can't be encoded using the user's current codepage then
+ If a URL or filename cannot be encoded using the user's current codepage then
  it can only be encoded properly in the Unicode character set. Windows uses
  UTF-16 encoding for Unicode and stores it in wide characters, however curl
  and libcurl are not equipped for that at the moment except when built with
- _UNICODE and UNICODE defined. And, except for Cygwin, Windows can't use UTF-8
+ _UNICODE and UNICODE defined. And, except for Cygwin, Windows cannot use UTF-8
  as a locale.
 
   https://curl.se/bug/?i=345
@@ -507,10 +529,10 @@
 5.12 flaky Windows CI builds
 
  We run many CI builds for each commit and PR on github, and especially a
- number of the Windows builds are very flaky. This means that we rarely get
- all CI builds go green and complete without errors. This is very unfortunate
- as it makes us sometimes miss actual build problems and it is surprising to
- newcomers to the project who (rightfully) don't expect this.
+ number of the Windows builds are flaky. This means that we rarely get all CI
+ builds go green and complete without errors. This is unfortunate as it makes
+ us sometimes miss actual build problems and it is surprising to newcomers to
+ the project who (rightfully) do not expect this.
 
  See https://github.com/curl/curl/issues/6972
 
@@ -551,7 +573,7 @@
  new conn->bits.want_authentication which is set when any of the authentication
  options are set.
 
-6.5 NTLM doesn't support password with § character
+6.5 NTLM does not support password with § character
 
  https://github.com/curl/curl/issues/2120
 
@@ -561,12 +583,12 @@
  authentication will cause libcurl to abort trying other options if the
  failed method has a higher preference than the alternatives. As an example,
  --proxy-any against a proxy which advertise Negotiate and NTLM, but which
- fails to set up Kerberos authentication won't proceed to try authentication
+ fails to set up Kerberos authentication will not proceed to try authentication
  using NTLM.
 
  https://github.com/curl/curl/issues/876
 
-6.7 Don't clear digest for single realm
+6.7 Do not clear digest for single realm
 
  https://github.com/curl/curl/issues/3267
 
@@ -592,7 +614,7 @@
 
 6.10 curl never completes Negotiate over HTTP
 
- Apparently it isn't working correctly...?
+ Apparently it is not working correctly...?
 
  See https://github.com/curl/curl/issues/5235
 
@@ -604,6 +626,9 @@
 
  https://github.com/curl/curl/issues/5881
 
+6.12 cannot use Secure Transport with Crypto Token Kit
+
+ https://github.com/curl/curl/issues/7048
 
 7. FTP
 
@@ -620,7 +645,7 @@
 
  When doing FTP over a socks proxy or CONNECT through HTTP proxy and the multi
  interface is used, libcurl will fail if the (passive) TCP connection for the
- data transfer isn't more or less instant as the code does not properly wait
+ data transfer is not more or less instant as the code does not properly wait
  for the connect to be confirmed. See test case 564 for a first shot at a test
  case.
 
@@ -633,13 +658,13 @@
 7.4 FTP with ACCT
 
  When doing an operation over FTP that requires the ACCT command (but not when
- logging in), the operation will fail since libcurl doesn't detect this and
+ logging in), the operation will fail since libcurl does not detect this and
  thus fails to issue the correct command:
  https://curl.se/bug/view.cgi?id=635
 
 7.5 ASCII FTP
 
- FTP ASCII transfers do not follow RFC959. They don't convert the data
+ FTP ASCII transfers do not follow RFC959. They do not convert the data
  accordingly (not for sending nor for receiving). RFC 959 section 3.1.1.1
  clearly describes how this should be done:
 
@@ -675,12 +700,12 @@
 
  When 'multi_done' is called before the transfer has been completed the normal
  way, it is considered a "premature" transfer end. In this situation, libcurl
- closes the connection assuming it doesn't know the state of the connection so
- it can't be reused for subsequent requests.
+ closes the connection assuming it does not know the state of the connection so
+ it cannot be reused for subsequent requests.
 
- With FTP however, this isn't necessarily true but there are a bunch of
+ With FTP however, this is not necessarily true but there are a bunch of
  situations (listed in the ftp_done code) where it *could* keep the connection
- alive even in this situation - but the current code doesn't. Fixing this would
+ alive even in this situation - but the current code does not. Fixing this would
  allow libcurl to reuse FTP connections better.
 
 7.9 Passive transfer tries only one IP address
@@ -702,11 +727,28 @@
 
  https://github.com/curl/curl/issues/4654
 
+7.11 FTPS upload data loss with TLS 1.3
+
+ During FTPS upload curl does not attempt to read TLS handshake messages sent
+ after the initial handshake. OpenSSL servers running TLS 1.3 may send such a
+ message. When curl closes the upload connection if unread data has been
+ received (such as a TLS handshake message) then the TCP protocol sends an
+ RST to the server, which may cause the server to discard or truncate the
+ upload if it has not read all sent data yet, and then return an error to curl
+ on the control channel connection.
+
+ Since 7.78.0 this is mostly fixed. curl will do a single read before closing
+ TLS connections (which causes the TLS library to read handshake messages),
+ however there is still possibility of an RST if more messages need to be read
+ or a message arrives after the read but before close (network race condition).
+
+ https://github.com/curl/curl/issues/6149
+
 8. TELNET
 
-8.1 TELNET and time limitations don't work
+8.1 TELNET and time limitations do not work
 
- When using telnet, the time limitation options don't work.
+ When using telnet, the time limitation options do not work.
  https://curl.se/bug/view.cgi?id=846
 
 8.2 Microsoft telnet server
@@ -717,7 +759,7 @@
 
 9. SFTP and SCP
 
-9.1 SFTP doesn't do CURLOPT_POSTQUOTE correct
+9.1 SFTP does not do CURLOPT_POSTQUOTE correct
 
  When libcurl sends CURLOPT_POSTQUOTE commands when connected to a SFTP server
  using the multi interface, the commands are not being sent correctly and
@@ -726,10 +768,10 @@
  report but it cannot be accepted as-is. See
  https://curl.se/bug/view.cgi?id=748
 
-9.2 wolfssh: publickey auth doesn't work
+9.2 wolfssh: publickey auth does not work
 
  When building curl to use the wolfSSH backend for SFTP, the publickey
- authentication doesn't work. This is simply functionality not written for curl
+ authentication does not work. This is simply functionality not written for curl
  yet, the necessary API for make this work is provided by wolfSSH.
 
  See https://github.com/curl/curl/issues/4820
@@ -746,11 +788,11 @@
 
 10.3 FTPS over SOCKS
 
- libcurl doesn't support FTPS over a SOCKS proxy.
+ libcurl does not support FTPS over a SOCKS proxy.
 
 10.4 active FTP over a SOCKS
 
- libcurl doesn't support active FTP over a SOCKS proxy
+ libcurl does not support active FTP over a SOCKS proxy
 
 
 11. Internals
@@ -770,21 +812,27 @@
  CURLE_COULDNT_CONNECT. But the error buffer set by CURLOPT_ERRORBUFFER
  remains empty. Issue: https://github.com/curl/curl/issues/544
 
-11.3 c-ares deviates from stock resolver on http://1346569778
+11.3 Disconnects do not do verbose
 
- When using the socket resolvers, that URL becomes:
+ Due to how libcurl keeps connections alive in the "connection pool" after use
+ to potentially transcend the life-time of the initial easy handle that was
+ used to drive the transfer over that connection, it uses a *separate* and
+ internal easy handle when it shuts down the connection. That separate
+ connection might not have the exact same settings as the original easy
+ handle, and in particular it is often note-worthy that it does not have the
+ same VERBOSE and debug callbacks setup so that an application will not get
+ the protocol data for the disconnect phase of a transfer the same way it got
+ all the other data.
 
-     * Rebuilt URL to: http://1346569778/
-     *   Trying 80.67.6.50...
+ This is because the original easy handle might have already been freed at that
+ point and the application might not at all be prepared that the callback
+ would get called again long after the handle was freed.
 
- but with c-ares it instead says "Could not resolve: 1346569778 (Domain name
- not found)"
-
- See https://github.com/curl/curl/issues/893
+ See for example https://github.com/curl/curl/issues/6995
 
 11.4 HTTP test server 'connection-monitor' problems
 
- The 'connection-monitor' feature of the sws HTTP test server doesn't work
+ The 'connection-monitor' feature of the sws HTTP test server does not work
  properly if some tests are run in unexpected order. Like 1509 and then 1525.
 
  See https://github.com/curl/curl/issues/868
@@ -805,7 +853,7 @@
  HAPPY_EYEBALLS_TIMEOUT define exactly. Lowering that define speeds up the
  connection, suggesting a problem in the HE handling.
 
- If we can *know* that we're talking to a local host, we should lower the
+ If we can *know* that we are talking to a local host, we should lower the
  happy eyeballs delay timeout for IPv6 (related: hardcode the "localhost"
  addresses, mentioned in TODO). Possibly we should reduce that delay for all.
 
@@ -827,7 +875,7 @@
 
  https://github.com/curl/curl/issues/4592
 
-11.9 DoH doesn't inherit all transfer options
+11.9 DoH does not inherit all transfer options
 
  Some options are not inherited because they are not relevant for the DoH SSL
  connections, or inheriting the option may result in unexpected behavior. For
@@ -855,7 +903,7 @@
 
 11.12 'no_proxy' string-matches IPv6 numerical addresses
 
- This has the downside that "::1" for example doesn't match "::0:1" even
+ This has the downside that "::1" for example does not match "::0:1" even
  though they are in fact the same address.
 
  See https://github.com/curl/curl/issues/5745
@@ -924,7 +972,7 @@
 
  https://github.com/curl/curl/issues/3116
 
-12.3 LDAP on Windows doesn't work
+12.3 LDAP on Windows does not work
 
  A simple curl command line getting "ldap://ldap.forumsys.com" returns an
  error that says "no memory" !
@@ -940,7 +988,7 @@
 13.1 --interface for ipv6 binds to unusable IP address
 
  Since IPv6 provides a lot of addresses with different scope, binding to an
- IPv6 address needs to take the proper care so that it doesn't bind to a
+ IPv6 address needs to take the proper care so that it does not bind to a
  locally scoped address as that is bound to fail.
 
  https://github.com/curl/curl/issues/686
@@ -949,7 +997,7 @@
 
 14.1 DICT responses show the underlying protocol
 
- When getting a DICT response, the protocol parts of DICT aren't stripped off
+ When getting a DICT response, the protocol parts of DICT are not stripped off
  from the output.
 
  https://github.com/curl/curl/issues/1809
@@ -971,13 +1019,13 @@
 
 15.4 build docs/curl.1
 
- The cmake build doesn't create the docs/curl.1 file and therefor must rely on
+ The cmake build does not create the docs/curl.1 file and therefore must rely on
  it being there already. This makes the --manual option not work and test
- cases like 1139 can't function.
+ cases like 1139 cannot function.
 
 15.5 build on Linux links libcurl to libdl
 
- ... which it shouldn't need to!
+ ... which it should not need to!
 
  See https://github.com/curl/curl/issues/6165
 
@@ -1022,6 +1070,17 @@
 
  See https://github.com/curl/curl/issues/6284
 
+15.13 CMake build with MIT Kerberos does not work
+
+ Minimum CMake version was bumped in curl 7.71.0 (#5358) Since CMake 3.2
+ try_compile started respecting the CMAKE_EXE_FLAGS.  The code dealing with
+ MIT Kerberos detection sets few variables to potentially weird mix of space,
+ and ;-separated flags. It had to blow up at some point. All the CMake checks
+ that involve compilation are doomed from that point, the configured tree
+ cannot be built.
+
+ https://github.com/curl/curl/issues/6904
+
 16. Applications
 
 16.1 pulseUI VPN client
@@ -1029,7 +1088,7 @@
  This application crashes at startup with libcurl 7.74.0 (and presumably later
  versions too) after we cleaned up OpenSSL initialization. Since this is the
  only known application to do this, we suspect it is related to something they
- are doing in their setup that isn't kosher. We have not been able to get in
+ are doing in their setup that is not kosher. We have not been able to get in
  contact with them nor got any technical details to help us debug this
  further.
 
@@ -1070,6 +1129,9 @@
 
  See https://github.com/curl/curl/issues/5611
 
+17.5 HTTP/2 connections through HTTPS proxy frequently stall
+
+ See https://github.com/curl/curl/issues/6936
 
 18. HTTP/3
 
@@ -1084,3 +1146,29 @@
 18.3 HTTP/3 download is 5x times slower than HTTP/2
 
  See https://github.com/curl/curl/issues/6494
+
+18.4 Downloading with HTTP/3 produces broken files
+
+ See https://github.com/curl/curl/issues/7351
+
+18.5 HTTP/3 download with quiche halts after a while
+
+ See https://github.com/curl/curl/issues/7339
+
+18.6 HTTP/3 multipart POST with quiche fails
+
+ https://github.com/curl/curl/issues/7125
+
+18.7 HTTP/3 quiche upload large file fails
+
+ https://github.com/curl/curl/issues/7532
+
+18.8 HTTP/3 does not support client certs
+
+ aka "mutual authentication".
+
+ https://github.com/curl/curl/issues/7625
+
+18.9 connection migration does not work
+
+ https://github.com/curl/curl/issues/7695
diff --git a/docs/MAIL-ETIQUETTE b/docs/MAIL-ETIQUETTE
index 80d06b6..2d54e0a 100644
--- a/docs/MAIL-ETIQUETTE
+++ b/docs/MAIL-ETIQUETTE
@@ -39,9 +39,9 @@
   Each mailing list is targeted to a specific set of users and subjects,
   please use the one or the ones that suit you the most.
 
-  Each mailing list has hundreds up to thousands of readers, meaning that
-  each mail sent will be received and read by a very large number of people.
-  People from various cultures, regions, religions and continents.
+  Each mailing list has hundreds up to thousands of readers, meaning that each
+  mail sent will be received and read by a large number of people.  People
+  from various cultures, regions, religions and continents.
 
   1.2 Netiquette
 
@@ -80,7 +80,7 @@
   1.5 Moderation of new posters
 
   Several of the curl mailing lists automatically make all posts from new
-  subscribers be moderated. This means that after you've subscribed and
+  subscribers be moderated. This means that after you have subscribed and
   sent your first mail to a list, that mail will not be let through to the
   list until a mailing list administrator has verified that it is OK and
   permits it to get posted.
@@ -111,12 +111,12 @@
   anything good and only puts the light even more on the offender: which was
   the entire purpose of it getting sent to the list in the first place.
 
-  Don't feed the trolls!
+  Do not feed the trolls!
 
   1.7 How to unsubscribe
 
   You can unsubscribe the same way you subscribed in the first place. You go
-  to the page for the particular mailing list you're subscribed to and you enter
+  to the page for the particular mailing list you are subscribed to and you enter
   your email address and password and press the unsubscribe button.
 
   Also, the instructions to unsubscribe are included in the headers of every
@@ -129,24 +129,24 @@
 
   1.8 I posted, now what?
 
-  If you aren't subscribed with the exact same email address that you used to
+  If you are not subscribed with the exact same email address that you used to
   send the email, your post will just be silently discarded.
 
   If you posted for the first time to the mailing list, you first need to wait
-  for an administrator to allow your email to go through (moderated). This normally
-  happens very quickly but in case we're asleep, you may have to wait a few
-  hours.
+  for an administrator to allow your email to go through (moderated). This
+  normally happens quickly but in case we are asleep, you may have to wait a
+  few hours.
 
   Once your email goes through it is sent out to several hundred or even
-  thousands of recipients.  Your email may cover an area that not that many people
-  know about or are interested in. Or possibly the person who knows about it
-  is on vacation or under a very heavy work load right now. You may have to wait
-  for a response and you should not expect to get a response at all, but
-  hopefully you get an answer within a couple of days.
+  thousands of recipients.  Your email may cover an area that not that many
+  people know about or are interested in. Or possibly the person who knows
+  about it is on vacation or under a heavy work load right now. You may have
+  to wait for a response and you should not expect to get a response at all,
+  but hopefully you get an answer within a couple of days.
 
   You do yourself and all of us a service when you include as many details as
   possible already in your first email. Mention your operating system and
-  environment. Tell us which curl version you're using and tell us what you
+  environment. Tell us which curl version you are using and tell us what you
   did, what happened and what you expected would happen. Preferably, show us
   what you did with details enough to allow others to help point out the problem
   or repeat the same steps in their locations.
@@ -194,7 +194,7 @@
 
   Many mail programs and web archivers use information within mails to keep
   them together as "threads", as collections of posts that discuss a certain
-  subject. If you don't intend to reply on the same or similar subject, don't
+  subject. If you do not intend to reply on the same or similar subject, do not
   just hit reply on an existing mail and change subject, create a new mail.
 
   2.2 Reply to the List
@@ -203,7 +203,7 @@
   reply" or "reply to all", and not just reply to the author of the single
   mail you reply to.
 
-  We're actively discouraging replying back to the single person by setting
+  We are actively discouraging replying back to the single person by setting
   the Reply-To: field in outgoing mails back to the mailing list address,
   making it harder for people to mail the author directly, if only by mistake.
 
@@ -215,7 +215,7 @@
 
   2.4 Do Not Top-Post
 
-  If you reply to a message, don't use top-posting. Top-posting is when you
+  If you reply to a message, do not use top-posting. Top-posting is when you
   write the new text at the top of a mail and you insert the previous quoted
   mail conversation below. It forces users to read the mail in a backwards
   order to properly understand it.
@@ -233,13 +233,13 @@
 
   When you reply to a mail. You let the mail client insert the previous mail
   quoted. Then you put the cursor on the first line of the mail and you move
-  down through the mail, deleting all parts of the quotes that don't add
+  down through the mail, deleting all parts of the quotes that do not add
   context for your comments. When you want to add a comment you do so, inline,
   right after the quotes that relate to your comment. Then you continue
   downwards again.
 
-  When most of the quotes have been removed and you've added your own words,
-  you're done!
+  When most of the quotes have been removed and you have added your own words,
+  you are done!
 
   2.5 HTML is not for mails
 
diff --git a/docs/MQTT.md b/docs/MQTT.md
index 741b072..0f034f7 100644
--- a/docs/MQTT.md
+++ b/docs/MQTT.md
@@ -21,9 +21,7 @@
 ## Caveats
 
 Remaining limitations:
- - No username support
  - Only QoS level 0 is implemented for publish
  - No way to set retain flag for publish
- - No username/password support
  - No TLS (mqtts) support
- - Naive EAGAIN handling won't handle split messages
+ - Naive EAGAIN handling will not handle split messages
diff --git a/docs/Makefile.am b/docs/Makefile.am
index 656d1ac..5d5888c 100644
--- a/docs/Makefile.am
+++ b/docs/Makefile.am
@@ -31,7 +31,7 @@
 PDFPAGES = curl.pdf curl-config.pdf mk-ca-bundle.pdf
 MANDISTPAGES = curl.1.dist curl-config.1.dist
 
-HTMLPAGES = $(GENHTMLPAGES) index.html
+HTMLPAGES = $(GENHTMLPAGES)
 
 # Build targets in this file (.) before cmdline-opts to ensure that
 # the curl.1 rule below runs first
diff --git a/docs/NEW-PROTOCOL.md b/docs/NEW-PROTOCOL.md
index 9984eea..2a9af6f 100644
--- a/docs/NEW-PROTOCOL.md
+++ b/docs/NEW-PROTOCOL.md
@@ -48,7 +48,7 @@
 ### URL
 
 There should be a documented URL format. If there is an RFC for it there is no
-question about it but the syntax doesn't have to be a published RFC. It could
+question about it but the syntax does not have to be a published RFC. It could
 be enough if it is already in use by other implementations.
 
 If you make up the syntax just in order to be able to propose it to curl, then
@@ -80,7 +80,7 @@
 curl test cases. We must have the implementation get tested by CI jobs,
 torture tests and more.
 
-We've experienced many times in the past how new implementations were brought
+We have experienced many times in the past how new implementations were brought
 to curl and immediately once the code had been merged, the originator vanished
 from the face of the earth. That is fine, but we need to take the necessary
 precautions so when it happens we are still fine.
@@ -100,11 +100,11 @@
 The protocol specification itself should be freely available without requiring
 any NDA or similar.
 
-## Don't compare
+## Do not compare
 
 We are constantly raising the bar and we are constantly improving the
 project. A lot of things we did in the past would not be acceptable if done
 today.  Therefore, you might be tempted to use shortcuts or "hacks" you can
 spot other - existing - protocol implementations have used, but there is
-nothing to gain from that. The bar has been raised. Former "cheats" won't be
+nothing to gain from that. The bar has been raised. Former "cheats" will not be
 tolerated anymore.
diff --git a/docs/PARALLEL-TRANSFERS.md b/docs/PARALLEL-TRANSFERS.md
index da688ea..6282fe5 100644
--- a/docs/PARALLEL-TRANSFERS.md
+++ b/docs/PARALLEL-TRANSFERS.md
@@ -40,7 +40,7 @@
 Connections are shared fine between different easy handles, but the
 "authentication contexts" are not. So for example doing HTTP Digest auth with
 one handle for a particular transfer and then continue on with another handle
-that reuses the same connection, the second handle can't send the necessary
+that reuses the same connection, the second handle cannot send the necessary
 Authorization header at once since the context is only kept in the original
 easy handle.
 
diff --git a/docs/README.md b/docs/README.md
index 0783850..b72d8bc 100644
--- a/docs/README.md
+++ b/docs/README.md
@@ -2,11 +2,11 @@
 
 # Documentation
 
-You'll find a mix of various documentation in this directory and
+you will find a mix of various documentation in this directory and
 subdirectories, using several different formats. Some of them are not ideal
 for reading directly in your browser.
 
-If you'd rather see the rendered version of the documentation, check out the
+If you would rather see the rendered version of the documentation, check out the
 curl website's [documentation section](https://curl.se/docs/) for
 general curl stuff or the [libcurl section](https://curl.se/libcurl/) for
 libcurl related documentation.
diff --git a/docs/RELEASE-PROCEDURE.md b/docs/RELEASE-PROCEDURE.md
index 3faad65..26d5ded 100644
--- a/docs/RELEASE-PROCEDURE.md
+++ b/docs/RELEASE-PROCEDURE.md
@@ -95,16 +95,17 @@
 Based on the description above, here are some planned release dates (at the
 time of this writing):
 
-- March 31, 2021 (7.76.0)
-- May 26, 2021
-- July 21, 2021
-- September 15, 2021
+- September 15, 2021 (7.79.0)
 - November 10, 2021
 - January 5, 2022
 - March 2, 2022
 - April 27, 2022
 - June 22, 2022
 - August 17, 2022
+- October 12, 2022
+- December 7, 2022
+- February 1, 2023
+- March 20, 2023 (8.0.0)
 
 The above (and more) curl-related dates are published in
 [iCalendar format](https://calendar.google.com/calendar/ical/c9u5d64odop9js55oltfarjk6g%40group.calendar.google.com/public/basic.ics)
diff --git a/docs/SECURITY-PROCESS.md b/docs/SECURITY-PROCESS.md
index a5d487a..f13d6d3 100644
--- a/docs/SECURITY-PROCESS.md
+++ b/docs/SECURITY-PROCESS.md
@@ -62,19 +62,20 @@
 - Request a CVE number from
   [HackerOne](https://docs.hackerone.com/programs/cve-requests.html)
 
-- Consider informing
-  [distros@openwall](https://oss-security.openwall.org/wiki/mailing-lists/distros)
-  to prepare them about the upcoming public security vulnerability
-  announcement - attach the advisory draft for information. Note that
-  'distros' won't accept an embargo longer than 14 days and they do not care
-  for Windows-specific flaws.
-
 - Update the "security advisory" with the CVE number.
 
 - The security team commits the fix in a private branch. The commit message
-  should ideally contain the CVE number. This fix is usually also distributed
-  to the 'distros' mailing list to allow them to use the fix prior to the
-  public announcement.
+  should ideally contain the CVE number.
+
+- The security team also decides on and delivers a monetary reward to the
+  reporter as per the bug-bounty polices.
+
+- No more than 10 days before release, inform
+  [distros@openwall](https://oss-security.openwall.org/wiki/mailing-lists/distros)
+  to prepare them about the upcoming public security vulnerability
+  announcement - attach the advisory draft for information with CVE and
+  current patch. 'distros' does not accept an embargo longer than 14 days and
+  they do not care for Windows-specific flaws.
 
 - No more than 48 hours before the release, the private branch is merged into
   the master branch and pushed. Once pushed, the information is accessible to
@@ -91,18 +92,18 @@
 - The security web page on the website should get the new vulnerability
   mentioned.
 
-curl-security (at haxx dot se)
+security (at curl dot se)
 ------------------------------
 
 This is a private mailing list for discussions on and about curl security
 issues.
 
 Who is on this list? There are a couple of criteria you must meet, and then we
-might ask you to join the list or you can ask to join it. It really isn't very
-formal. We basically only require that you have a long-term presence in the
-curl project and you have shown an understanding for the project and its way
-of working. You must've been around for a good while and you should have no
-plans in vanishing in the near future.
+might ask you to join the list or you can ask to join it. It really is not a
+formal process. We basically only require that you have a long-term presence
+in the curl project and you have shown an understanding for the project and
+its way of working. You must have been around for a good while and you should
+have no plans in vanishing in the near future.
 
 We do not make the list of participants public mostly because it tends to vary
 somewhat over time and a list somewhere will only risk getting outdated.
diff --git a/docs/SSL-PROBLEMS.md b/docs/SSL-PROBLEMS.md
index 54f9853..3ba601a 100644
--- a/docs/SSL-PROBLEMS.md
+++ b/docs/SSL-PROBLEMS.md
@@ -24,12 +24,12 @@
 
   When using said CA bundle to verify a server cert, you will experience
   problems if your CA store does not contain the certificates for the
-  intermediates if the server doesn't provide them.
+  intermediates if the server does not provide them.
 
   The TLS protocol mandates that the intermediate certificates are sent in the
   handshake, but as browsers have ways to survive or work around such
   omissions, missing intermediates in TLS handshakes still happen that
-  browser-users won't notice.
+  browser-users will not notice.
 
   Browsers work around this problem in two ways: they cache intermediate
   certificates from previous transfers and some implement the TLS "AIA"
@@ -51,7 +51,7 @@
 
 ## Ciphers
 
-  Clients give servers a list of ciphers to select from. If the list doesn't
+  Clients give servers a list of ciphers to select from. If the list does not
   include any ciphers the server wants/can use, the connection handshake
   fails.
 
@@ -76,7 +76,7 @@
 
   BEAST is the name of a TLS 1.0 attack that surfaced 2011. When adding means
   to mitigate this attack, it turned out that some broken servers out there in
-  the wild didn't work properly with the BEAST mitigation in place.
+  the wild did not work properly with the BEAST mitigation in place.
 
   To make such broken servers work, the --ssl-allow-beast option was
   introduced. Exactly as it sounds, it re-introduces the BEAST vulnerability
@@ -89,7 +89,7 @@
   depending on the OS or build configuration. The --ssl-no-revoke option was
   introduced in 7.44.0 to disable revocation checking but currently is only
   supported for Schannel (the native Windows SSL library), with an exception
-  in the case of Windows' Untrusted Publishers block list which it seems can't
+  in the case of Windows' Untrusted Publishers block list which it seems cannot
   be bypassed. This option may have broader support to accommodate other SSL
   backends in the future.
 
diff --git a/docs/SSLCERTS.md b/docs/SSLCERTS.md
index 415b540..0aeab3b 100644
--- a/docs/SSLCERTS.md
+++ b/docs/SSLCERTS.md
@@ -13,7 +13,7 @@
 If libcurl was built with Schannel or Secure Transport support (the native SSL
 libraries included in Windows and Mac OS X), then this does not apply to
 you. Scroll down for details on how the OS-native engines handle SSL
-certificates. If you're not sure, then run "curl -V" and read the results. If
+certificates. If you are not sure, then run "curl -V" and read the results. If
 the version string says `Schannel` in it, then it was built with Schannel
 support.
 
@@ -22,11 +22,11 @@
 
 This system is about trust. In your local CA certificate store you have certs
 from *trusted* Certificate Authorities that you then can use to verify that the
-server certificates you see are valid. They're signed by one of the CAs you
+server certificates you see are valid. they are signed by one of the CAs you
 trust.
 
 Which CAs do you trust? You can decide to trust the same set of companies your
-operating system trusts, or the set one of the known browsers trust. That's
+operating system trusts, or the set one of the known browsers trust. That is
 basically trust via someone else you trust. You should just be aware that
 modern operating systems and browsers are setup to trust *hundreds* of
 companies and recent years several such CAs have been found untrustworthy.
@@ -42,8 +42,8 @@
 certificates that are signed by CAs present in the store, you can be sure
 that the remote server really is the one it claims to be.
 
-If the remote server uses a self-signed certificate, if you don't install a CA
-cert store, if the server uses a certificate signed by a CA that isn't
+If the remote server uses a self-signed certificate, if you do not install a CA
+cert store, if the server uses a certificate signed by a CA that is not
 included in the store you use or if the remote host is an impostor
 impersonating your favorite site, and you want to transfer files from this
 server, do one of the following:
@@ -103,11 +103,11 @@
        certificate store or use it stand-alone as described. Just remember that
        the security is no better than the way you obtained the certificate.
 
- 4. If you're using the curl command line tool, you can specify your own CA
+ 4. If you are using the curl command line tool, you can specify your own CA
     cert file by setting the environment variable `CURL_CA_BUNDLE` to the path
     of your choice.
 
-    If you're using the curl command line tool on Windows, curl will search
+    If you are using the curl command line tool on Windows, curl will search
     for a CA cert file named "curl-ca-bundle.crt" in these directories and in
     this order:
       1. application's directory
@@ -122,7 +122,7 @@
     way for you: [CA Extract](https://curl.se/docs/caextract.html)
 
 Neglecting to use one of the above methods when dealing with a server using a
-certificate that isn't signed by one of the certificates in the installed CA
+certificate that is not signed by one of the certificates in the installed CA
 certificate store, will cause SSL to report an error ("certificate verify
 failed") during the handshake and SSL will then refuse further communication
 with that server.
diff --git a/docs/THANKS b/docs/THANKS
index f003461..82755c7 100644
--- a/docs/THANKS
+++ b/docs/THANKS
@@ -4,15 +4,19 @@
 
  If you have contributed but are missing here, please let us know!
 
+0xee on github
 0xflotus on github
 1ocalhost on github
 3dyd on github
 3eka on github
+8U61ife on github
+a1346054 on github
 Aaro Koskinen
 Aaron Oneal
 Aaron Orenstein
 Aaron Scarisbrick
 aasivov on github
+Abhinav Singh
 Abram Pousada
 accountantM on github
 AceCrow on Github
@@ -51,6 +55,7 @@
 Alejandro R. Sedeño
 Aleksandar Milivojevic
 Aleksander Mazur
+Aleksandr Krotov
 Aleksey Tulinov
 Ales Mlakar
 Ales Novak
@@ -60,6 +65,7 @@
 Alex Baines
 Alex Bligh
 Alex Chan
+Alex Crichton
 Alex Fishman
 Alex Gaynor
 Alex Grebenschikov
@@ -78,8 +84,10 @@
 Alex Vinnik
 Alex Xu
 Alexander Beedie
+Alexander Chuykov
 Alexander Dyagilev
 Alexander Elgert
+Alexander Kanavin
 Alexander Klauer
 Alexander Kourakos
 Alexander Krasnostavsky
@@ -180,6 +188,7 @@
 Anthony Avina
 Anthony Bryan
 Anthony G. Basile
+Anthony Hu
 Anthony Ramine
 Anthony Shaw
 Antoine Aubert
@@ -193,6 +202,7 @@
 Antonio Larrosa
 Antony74 on github
 Antti Hätälä
+April King
 arainchik on github
 Archangel_SDY on github
 Arkadiusz Miskiewicz
@@ -204,6 +214,7 @@
 Aron Rotteveel
 Artak Galoyan
 Arthur Murray
+Artur Sinila
 Arve Knudsen
 Arvid Norberg
 arvids-kokins-bidstack on github
@@ -217,6 +228,7 @@
 Austin Green
 Avery Fay
 awesomenode on github
+Axel Morawietz
 Axel Tillequin
 Ayoub Boudhar
 Ayushman Singh Chauhan
@@ -248,6 +260,7 @@
 Ben Van Hof
 Ben Voris
 Ben Winslow
+Benau on github
 Benbuck Nason
 Benjamin Gerard
 Benjamin Gilbert
@@ -268,6 +281,7 @@
 Bert Huijben
 Bertrand Demiddelaer
 Bertrand Simonnet
+beslick5 on github
 Bevan Weiss
 Bill Doyle
 Bill Egert
@@ -275,6 +289,7 @@
 Bill Middlecamp
 Bill Nagel
 Bill Pyne
+billionai on github
 Billyzou0741326 on github
 Bin Lan
 Bin Meng
@@ -287,12 +302,14 @@
 Blaise Potard
 Blake Burkhart
 bnfp on github
+Bo Anderson
 Bob Relyea
 Bob Richmond
 Bob Schader
 bobmitchell1956 on github
 Bodo Bergmann
 Bogdan Nicula
+Boris Rasin
 Brad Burdick
 Brad Fitzpatrick
 Brad Harder
@@ -341,6 +358,7 @@
 Cameron Kaiser
 Cameron MacMinn
 Camille Moncelier
+Cao ZhenXiang
 Caolan McNamara
 Captain Basil
 Carie Pointer
@@ -424,6 +442,7 @@
 Colby Ranger
 Colin Blair
 Colin Hogben
+Colin O'Dell
 Colin Watson
 Colm Buckley
 Constantine Sapuntzakis
@@ -498,6 +517,7 @@
 Daniel Steinberg
 Daniel Stenberg
 Daniel Theron
+Daniel Woelfel
 Daphne Luong
 Dario Nieuwenhuis
 Dario Weißer
@@ -648,6 +668,7 @@
 ebejan on github
 Ebenezer Ikonne
 Ed Morley
+Eddie Lumpkin
 Edgaras Janušauskas
 Edin Kadribasic
 Edmond Yu
@@ -705,6 +726,7 @@
 Erik Johansson
 Erik Minekus
 Erik Olsson
+Erik Stenlund
 Ernest Beinrohr
 Ernst Sjöstrand
 Erwan Legrand
@@ -714,6 +736,7 @@
 Etienne Simard
 Eugene Kotlyarov
 Evan Jordan
+Evangelos Foutras
 Even Rouault
 Evert Pot
 Evgeny Grin
@@ -780,6 +803,7 @@
 Gabriel Kuri
 Gabriel Simmer
 Gabriel Sjoberg
+Gambit Communications
 Ganesh Kamath
 Garrett Holmstrom
 Gary Maxwell
@@ -814,14 +838,18 @@
 Gilles Vollant
 Giorgos Oikonomou
 Gisle Vanem
+git-bruh on github
 GitYuanQu on github
 Giuseppe Attardi
 Giuseppe D'Ambrosio
 Giuseppe Persico
+Gleb Ivanovsky
 Glen A Johnson Jr.
 Glen Nakamura
 Glen Scott
+Glenn de boer
 Glenn Sheridan
+Godwin Stewart
 Google Inc.
 Gordon Marler
 Gorilla Maguila
@@ -853,6 +881,7 @@
 Gwenole Beauchesne
 Gökhan Şengün
 Götz Babin-Ebell
+h1zzz on github
 H3RSKO on github
 Hagai Auro
 Haibo Huang
@@ -875,6 +904,7 @@
 Harry Sintonen
 Harshal Pradhan
 Hauke Duden
+Hayden Roche
 He Qin
 Heikki Korpela
 Heinrich Ko
@@ -936,6 +966,7 @@
 Ingmar Runge
 Ingo Ralf Blum
 Ingo Wilken
+Inho Oh
 Ionuț-Francisc Oancea
 Irfan Adilovic
 Ironbars13 on github
@@ -986,9 +1017,11 @@
 Jan Ehrhardt
 Jan Koen Annot
 Jan Kunder
+Jan Mazur
 Jan Schaumann
 Jan Schmidt
 Jan Van Boghout
+Jan Verbeek
 JanB on github
 Janne Johansson
 Jared Jennings
@@ -1031,11 +1064,13 @@
 Jeff Phillips
 Jeff Pohlmeyer
 Jeff Weber
+Jeffrey Tolar
 Jeffrey Walton
 Jens Finkhaeuser
 Jens Rantil
 Jens Schleusener
 Jeremie Rapin
+Jeremy Falcon
 Jeremy Friesner
 Jeremy Huddleston
 Jeremy Lainé
@@ -1046,6 +1081,7 @@
 Jeremy Thibault
 Jeroen Koekkoek
 Jeroen Ooms
+Jerome Mao
 Jerome Muffat-Meridol
 Jerome Robert
 Jerome Vouillon
@@ -1165,6 +1201,7 @@
 Joshua Kwan
 Joshua Swink
 Josie Huddleston
+Josip Medved
 Josue Andrade Gomes
 José Joaquín Atria
 Jozef Kralik
@@ -1216,6 +1253,7 @@
 Kane York
 Kang Lin
 Kang-Jin Lee
+Kari Pahula
 Karl Chen
 Karl Moerder
 Karol Pietrzak
@@ -1235,6 +1273,7 @@
 Kenneth Davidson
 Kenny To
 Kent Boortz
+Kerem Kat
 Keshav Krity
 Kevin Baughman
 Kevin Burke
@@ -1250,6 +1289,7 @@
 Kim Rinnewitz
 Kim Vandry
 Kimmo Kinnunen
+Kirill Efimov
 Kirill Marchuk
 Kjell Ericson
 Kjetil Jacobsen
@@ -1350,6 +1390,7 @@
 Luca Boccassi
 Lucas Adamski
 Lucas Clemente Vella
+Lucas Holt
 Lucas Pardue
 Lucas Servén Marín
 Lucas Severo
@@ -1379,11 +1420,11 @@
 Maks Naumov
 Maksim Kuzevanov
 Maksim Stsepanenka
+Malik Idrees Hasan Khan
 Mamoru Tasaka
 Mamta Upadhyay
 Mandy Wu
 Manfred Schwarb
-MAntoniak on github
 Manuel Massing
 Manuj Bhatia
 Marc Aldorasi
@@ -1474,6 +1515,7 @@
 Mathieu Legare
 Matias N. Goldberg
 Mats Lidell
+Mats Lindestam
 Matt Arsenault
 Matt Ford
 Matt Holt
@@ -1517,6 +1559,7 @@
 Melissa Mears
 Mert Yazıcıoğlu
 Mettgut Jamalla
+Michael Afanasiev
 Michael Anti
 Michael Baentsch
 Michael Benedict
@@ -1599,6 +1642,7 @@
 Mischa Salle
 Mitz Wark
 mkzero on github
+modbw on github
 Mohamed Lrhazi
 Mohamed Osama
 Mohammad AlSaleh
@@ -1606,6 +1650,7 @@
 Mohammed Naser
 Mohun Biswas
 momala454 on github
+Momoka Yamamoto
 moohoorama on github
 Morten Minde Neergaard
 Mostyn Bramley-Moore
@@ -1674,6 +1719,7 @@
 Niranjan Hasabnis
 Nis Jorgensen
 nk
+Noam Moshe
 NobodyXu on github
 Nobuhiro Ban
 Nodak Sodak
@@ -1691,6 +1737,7 @@
 Olaf Hering
 Olaf Stüben
 Oleg Pudeyev
+Oleguer Llopart
 Olen Andoni
 olesteban on github
 Oli Kingshott
@@ -1708,6 +1755,7 @@
 Oren Tirosh
 Orgad Shaneh
 Ori Avtalion
+orycho on github
 osabc on github
 Oscar Koeroo
 Oscar Norlander
@@ -1748,6 +1796,7 @@
 Paul Harris
 Paul Hoffman
 Paul Howarth
+Paul Johnson
 Paul Joyce
 Paul Marks
 Paul Marquis
@@ -1862,6 +1911,7 @@
 Rafael Sagula
 Rafayel Mkrtchyan
 Rafaël Carré
+Rafał Mikrut
 Rainer Canavan
 Rainer Jung
 Rainer Koenig
@@ -1881,6 +1931,7 @@
 Randy McMurchy
 Raphael Gozzo
 Rasmus Melchior Jacobsen
+Raul Onitza-Klugman
 Ravi Pratap
 Ray Dassen
 Ray Pekowski
@@ -1906,6 +1957,7 @@
 Reza Arbab
 Ricardo Cadime
 Ricardo Gomes
+Ricardo Martins
 Rich Burridge
 Rich FitzJohn
 Rich Gray
@@ -1936,6 +1988,7 @@
 Rici Lake
 Rick Deist
 Rick Jones
+Rick Lane
 Rick Richardson
 Rick Welykochy
 Rickard Hallerbäck
@@ -1943,6 +1996,7 @@
 Ricky Leverence
 Ricky-Tigg on github
 Rider Linden
+RiderALT on github
 Rikard Falkeborn
 rl1987 on github
 Rob Cotrone
@@ -1978,6 +2032,7 @@
 Rodrigo Silva
 Roger Leigh
 Roger Orr
+Roger Young
 Roland Blom
 Roland Hieber
 Roland Krikava
@@ -1998,8 +2053,10 @@
 Rosimildo da Silva
 Ross Burton
 Roy Bellingan
+Roy Li
 Roy Shan
 Rui LIU
+Rui Pinheiro
 Rune Kleveland
 Ruslan Baratov
 Ruslan Gazizov
@@ -2009,10 +2066,12 @@
 Ryan Beck-Buysse
 Ryan Braud
 Ryan Chan
+Ryan Mast
 Ryan Nelson
 Ryan Schmidt
 Ryan Scott
 Ryan Winograd
+ryancaicse on github
 Ryuichi KAWAMATA
 Rémy Léone
 S. Moonesamy
@@ -2028,6 +2087,7 @@
 Samanta Navarro
 Sampo Kellomaki
 Samuel Díaz García
+Samuel Henrique
 Samuel Listopad
 Samuel Marks
 Samuel Surtees
@@ -2055,6 +2115,7 @@
 Sean MacLennan
 Sean McArthur
 Sean Miller
+Sean Molenaar
 Sebastiaan van Erk
 Sebastian Haglund
 Sebastian Mundry
@@ -2071,6 +2132,7 @@
 Sergio Ballestrero
 Sergio Barresi
 Sergio Borghese
+Sergio Durigan Junior
 sergio-nsk on github
 Serj Kalichev
 Seshubabu Pasam
@@ -2083,6 +2145,7 @@
 Shao Shuchao
 Sharad Gupta
 Shard
+Sharon Brizinov
 Shaun Jackman
 Shawn Landden
 Shawn Poulson
@@ -2122,6 +2185,7 @@
 Stan van de Burgt
 Stanislav Ivochkin
 Stanislav Zidek
+Stathis Kapnidis
 steelman on github
 Stefan Agner
 Stefan Bühler
@@ -2188,14 +2252,15 @@
 Sébastien Willemijns
 T. Bharath
 T. Yamada
+T200proX7 on github
 Tadej Vengust
 Tae Hyoung Ahn
-Tae Wong
 Taiyu Len
 Taneli Vähäkangas
 Tanguy Fautre
 tarek112 on github
 Tatsuhiro Tsujikawa
+tawmoto on github
 tbugfinder on github
 Teemu Yli-Elsila
 Temprimus
@@ -2251,6 +2316,8 @@
 Timur Artikov
 Tinus van den Berg
 TJ Saunders
+Tk Xiong
+tlahn on github
 tmkk on github
 Tobias Blomberg
 Tobias Gabriel
@@ -2353,11 +2420,13 @@
 Vilmos Nebehaj
 Vincas Razma
 Vincent Bronner
+Vincent Grande
 Vincent Le Normand
 Vincent Penquerc'h
 Vincent Sanders
 Vincent Torri
 vitaha85 on github
+Vitaly Varyvdin
 Vlad Grachov
 Vlad Ureche
 Vladimir Grishchenko
@@ -2402,6 +2471,7 @@
 Wu Yongzheng
 Wyatt O'Day
 Wyatt OʼDay
+x2018 on github
 Xavier Bouchoux
 XhmikosR on github
 XhstormR on github
@@ -2413,6 +2483,7 @@
 xwxbug on github
 Yaakov Selkowitz
 Yang Tse
+Yaobin Wen
 Yarram Sunil
 Yasuharu Yamada
 Yasuhiro Matsumoto
@@ -2437,6 +2508,8 @@
 Yusuke Nakamura
 Yves Arrouye
 Yves Lejeune
+z2-2z on github
+z2_ on hackerone
 Zachary Seguin
 Zdenek Pavlas
 Zekun Ni
@@ -2454,6 +2527,7 @@
 Zvi Har'El
 zzq1015 on github
 Ádler Jonas Gross
+Érico Nogueira
 İsmail Dönmez
 Łukasz Domeradzki
 Štefan Kremeň
diff --git a/docs/TODO b/docs/TODO
index bdda190..dc03f30 100644
--- a/docs/TODO
+++ b/docs/TODO
@@ -34,7 +34,7 @@
  1.15 Monitor connections in the connection pool
  1.16 Try to URL encode given URL
  1.17 Add support for IRIs
- 1.18 try next proxy if one doesn't work
+ 1.18 try next proxy if one does not work
  1.19 provide timing info for each redirect
  1.20 SRV and URI DNS records
  1.21 netrc caching and sharing
@@ -46,6 +46,8 @@
  1.28 FD_CLOEXEC
  1.29 Upgrade to websockets
  1.30 config file parsing
+ 1.31 erase secrets from heap/stack after use
+ 1.32 add asynch getaddrinfo support
 
  2. libcurl - multi interface
  2.1 More non-blocking
@@ -58,6 +60,7 @@
  2.8 dynamically decide to use socketpair
 
  3. Documentation
+ 3.1 Improve documentation about fork safety
  3.2 Provide cmake config-file
 
  4. FTP
@@ -75,7 +78,7 @@
  5.3 Rearrange request header order
  5.4 Allow SAN names in HTTP/2 server push
  5.5 auth= in URLs
- 5.6 alt-svc should fallback if alt-svc doesn't work
+ 5.6 alt-svc should fallback if alt-svc does not work
 
  6. TELNET
  6.1 ditch stdin
@@ -118,7 +121,6 @@
  13.11 Support intermediate & root pinning for PINNEDPUBLICKEY
  13.13 Make sure we forbid TLS 1.3 post-handshake authentication
  13.14 Support the clienthello extension
- 13.15 Support mbedTLS 3.0
 
  14. GnuTLS
  14.2 check connection
@@ -131,12 +133,10 @@
  16. SASL
  16.1 Other authentication mechanisms
  16.2 Add QOP support to GSSAPI authentication
- 16.3 Support binary messages (i.e.: non-base64)
 
  17. SSH protocols
  17.1 Multiplexing
  17.2 Handle growing SFTP files
- 17.3 Support better than MD5 hostkey hash
  17.4 Support CURLOPT_PREQUOTE
  17.5 SSH over HTTPS proxy with more backends
 
@@ -170,8 +170,9 @@
  19. Build
  19.1 roffit
  19.2 Enable PIE and RELRO by default
- 19.3 Don't use GNU libtool on OpenBSD
+ 19.3 Do not use GNU libtool on OpenBSD
  19.4 Package curl for Windows in a signed installer
+ 19.5 make configure use --cache-file more and better
 
  20. Test suite
  20.1 SSL tunnel
@@ -200,7 +201,7 @@
 
 1.2 Consult %APPDATA% also for .netrc
 
- %APPDATA%\.netrc is not considered when running on Windows. Shouldn't it?
+ %APPDATA%\.netrc is not considered when running on Windows. should not it?
 
  See https://github.com/curl/curl/issues/4016
 
@@ -224,7 +225,7 @@
 
  Currently the libssh2 SSH based code uses it, but to remove PATH_MAX from
  there we need libssh2 to properly tell us when we pass in a too small buffer
- and its current API (as of libssh2 1.2.7) doesn't.
+ and its current API (as of libssh2 1.2.7) does not.
 
 1.6 native IDN support on macOS
 
@@ -281,7 +282,7 @@
  is may cause name resolves to fail unless res_init() is called. We should
  consider calling res_init() + retry once unconditionally on all name resolve
  failures to mitigate against this. Firefox works like that. Note that Windows
- doesn't have res_init() or an alternative.
+ does not have res_init() or an alternative.
 
  https://github.com/curl/curl/issues/2251
 
@@ -291,7 +292,7 @@
  close them with the CURLOPT_CLOSESOCKETFUNCTION callback. However, c-ares
  does not use those functions and instead opens and closes the sockets
  itself. This means that when curl passes the c-ares socket to the
- CURLMOPT_SOCKETFUNCTION it isn't owned by the application like other sockets.
+ CURLMOPT_SOCKETFUNCTION it is not owned by the application like other sockets.
 
  See https://github.com/curl/curl/issues/2734
 
@@ -321,7 +322,7 @@
  reuse purpose it is verified that it is still alive.
 
  Those connections may get closed by the server side for idleness or they may
- get a HTTP/2 ping from the peer to verify that they're still alive. By adding
+ get a HTTP/2 ping from the peer to verify that they are still alive. By adding
  monitoring of the connections while in the pool, libcurl can detect dead
  connections (and close them) better and earlier, and it can handle HTTP/2
  pings to keep such ones alive even when not actively doing transfers on them.
@@ -344,7 +345,7 @@
  To make that work smoothly for curl users even on Windows, curl would
  probably need to be able to convert from several input encodings.
 
-1.18 try next proxy if one doesn't work
+1.18 try next proxy if one does not work
 
  Allow an application to specify a list of proxies to try, and failing to
  connect to the first go on and try the next instead until the list is
@@ -434,11 +435,29 @@
 
  See https://github.com/curl/curl/issues/3698
 
+1.31 erase secrets from heap/stack after use
+
+ Introducing a concept and system to erase secrets from memory after use, it
+ could help mitigate and lessen the impact of (future) security problems etc.
+ However: most secrets are passed to libcurl as clear text from the
+ application and then clearing them within the library adds nothing...
+
+ https://github.com/curl/curl/issues/7268
+
+1.32 add asynch getaddrinfo support
+
+ Use getaddrinfo_a() to provide an asynch name resolver backend to libcurl
+ that does not use threads and does not depend on c-ares. The getaddrinfo_a
+ function is (probably?) glibc specific but that is a widely used libc among
+ our users.
+
+ https://github.com/curl/curl/pull/6746
+
 2. libcurl - multi interface
 
 2.1 More non-blocking
 
- Make sure we don't ever loop because of non-blocking sockets returning
+ Make sure we do not ever loop because of non-blocking sockets returning
  EWOULDBLOCK or similar. Blocking cases include:
 
  - Name resolves on non-windows unless c-ares or the threaded resolver is used.
@@ -477,7 +496,7 @@
 2.4 Split connect and authentication process
 
  The multi interface treats the authentication process as part of the connect
- phase. As such any failures during authentication won't trigger the relevant
+ phase. As such any failures during authentication will not trigger the relevant
  QUIT or LOGOFF for protocols such as IMAP, POP3 and SMTP.
 
 2.5 Edge-triggered sockets should work
@@ -506,7 +525,7 @@
 
 2.8 dynamically decide to use socketpair
 
- For users who don't use curl_multi_wait() or don't care for
+ For users who do not use curl_multi_wait() or do not care for
  curl_multi_wakeup(), we could introduce a way to make libcurl NOT
  create a socketpair in the multi handle.
 
@@ -514,6 +533,10 @@
 
 3. Documentation
 
+3.1 Improve documentation about fork safety
+
+ See https://github.com/curl/curl/issues/6968
+
 3.2 Provide cmake config-file
 
  A config-file package is a set of files provided by us to allow applications
@@ -543,7 +566,7 @@
 
 4.5 ASCII support
 
- FTP ASCII transfers do not follow RFC959. They don't convert the data
+ FTP ASCII transfers do not follow RFC959. They do not convert the data
  accordingly.
 
 4.6 GSSAPI via Windows SSPI
@@ -613,7 +636,7 @@
 
  Additionally this should be implemented for proxy base URLs as well.
 
-5.6 alt-svc should fallback if alt-svc doesn't work
+5.6 alt-svc should fallback if alt-svc does not work
 
  The alt-svc: header provides a set of alternative services for curl to use
  instead of the original. If the first attempted one fails, it should try the
@@ -632,7 +655,7 @@
 6.2 ditch telnet-specific select
 
  Move the telnet support's network select() loop go away and merge the code
- into the main transfer loop. Until this is done, the multi interface won't
+ into the main transfer loop. Until this is done, the multi interface will not
  work for telnet.
 
 6.3 feature negotiation debug data
@@ -712,7 +735,7 @@
 11.4 Create remote directories
 
  Support for creating remote directories when uploading a file to a directory
- that doesn't exist on the server, just like --ftp-create-dirs.
+ that does not exist on the server, just like --ftp-create-dirs.
 
 
 12. FILE
@@ -745,7 +768,7 @@
  "Look at SSL cafile - quick traces look to me like these are done on every
  request as well, when they should only be necessary once per SSL context (or
  once per handle)". The major improvement we can rather easily do is to make
- sure we don't create and kill a new SSL "context" for every request, but
+ sure we do not create and kill a new SSL "context" for every request, but
  instead make one for every connection and re-use that SSL context in the same
  style connections are re-used. It will make us use slightly more memory but
  it will libcurl do less creations and deletions of SSL contexts.
@@ -767,7 +790,7 @@
 13.6 Provide callback for cert verification
 
  OpenSSL supports a callback for customised verification of the peer
- certificate, but this doesn't seem to be exposed in the libcurl APIs. Could
+ certificate, but this does not seem to be exposed in the libcurl APIs. Could
  it be? There's so much that could be done if it were!
 
 13.8 Support DANE
@@ -797,7 +820,7 @@
 
  AIA can provide various things like CRLs but more importantly information
  about intermediate CA certificates that can allow validation path to be
- fulfilled when the HTTPS server doesn't itself provide them.
+ fulfilled when the HTTPS server does not itself provide them.
 
  Since AIA is about downloading certs on demand to complete a TLS handshake,
  it is probably a bit tricky to get done right.
@@ -809,7 +832,7 @@
  CURLOPT_PINNEDPUBLICKEY does not consider the hashes of intermediate & root
  certificates when comparing the pinned keys. Therefore it is not compatible
  with "HTTP Public Key Pinning" as there also intermediate and root
- certificates can be pinned. This is very useful as it prevents webadmins from
+ certificates can be pinned. This is useful as it prevents webadmins from
  "locking themselves out of their servers".
 
  Adding this feature would make curls pinning 100% compatible to HPKP and
@@ -832,13 +855,6 @@
  https://tools.ietf.org/html/rfc7685
  https://github.com/curl/curl/issues/2299
 
-13.15 Support mbedTLS 3.0
-
- Version 3.0 is not backwards compatible with pre-3.0 versions, and curl no
- longer builds due to breaking changes in the API.
-
- See https://github.com/curl/curl/issues/7385
-
 14. GnuTLS
 
 14.2 check connection
@@ -885,10 +901,6 @@
  with integrity protection) and auth-conf (Authentication with integrity and
  privacy protection).
 
-16.3 Support binary messages (i.e.: non-base64)
-
-  Mandatory to support LDAP SASL authentication.
-
 
 17. SSH protocols
 
@@ -907,21 +919,12 @@
 
  The SFTP code in libcurl checks the file size *before* a transfer starts and
  then proceeds to transfer exactly that amount of data. If the remote file
- grows while the transfer is in progress libcurl won't notice and will not
+ grows while the transfer is in progress libcurl will not notice and will not
  adapt. The OpenSSH SFTP command line tool does and libcurl could also just
  attempt to download more to see if there is more to get...
 
  https://github.com/curl/curl/issues/4344
 
-17.3 Support better than MD5 hostkey hash
-
- libcurl offers the CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 option for verifying the
- server's key. MD5 is generally being deprecated so we should implement
- support for stronger hashing algorithms. libssh2 itself is what provides this
- underlying functionality and it supports at least SHA-1 as an alternative.
- SHA-1 is also being deprecated these days so we should consider working with
- libssh2 to instead offer support for SHA-256 or similar.
-
 17.4 Support CURLOPT_PREQUOTE
 
  The two other QUOTE options are supported for SFTP, but this was left out for
@@ -929,7 +932,7 @@
 
 17.5 SSH over HTTPS proxy with more backends
 
- The SSH based protocols SFTP and SCP didn't work over HTTPS proxy at
+ The SSH based protocols SFTP and SCP did not work over HTTPS proxy at
  all until PR https://github.com/curl/curl/pull/6021 brought the
  functionality with the libssh2 backend. Presumably, this support
  can/could be added for the other backends as well.
@@ -978,8 +981,8 @@
 18.6 Option to make -Z merge lined based outputs on stdout
 
  When a user requests multiple lined based files using -Z and sends them to
- stdout, curl will not "merge" and send complete lines fine but may very well
- send partial lines from several sources.
+ stdout, curl will not "merge" and send complete lines fine but may send
+ partial lines from several sources.
 
  https://github.com/curl/curl/issues/5175
 
@@ -1066,7 +1069,7 @@
 
  When --retry is used and curl actually retries transfer, it should use the
  already transferred data and do a resumed transfer for the rest (when
- possible) so that it doesn't have to transfer the same data again that was
+ possible) so that it does not have to transfer the same data again that was
  already transferred before the retry.
 
  See https://github.com/curl/curl/issues/1084
@@ -1093,7 +1096,7 @@
  provides the "may overwrite any file" risk.
 
  This is extra tricky if the original URL has no file name part at all since
- then the current code path will error out with an error message, and we can't
+ then the current code path will error out with an error message, and we cannot
  *know* already at that point if curl will be redirected to a URL that has a
  file name...
 
@@ -1158,7 +1161,7 @@
  - If splitting up the work improves the transfer rate, it could then be done
    again. Then again, etc up to a limit.
 
- This way, if transfer B fails (because Range: isn't supported) it will let
+ This way, if transfer B fails (because Range: is not supported) it will let
  transfer A remain the single one. N and M could be set to some sensible
  defaults.
 
@@ -1176,7 +1179,7 @@
 
  Users who are for example doing large downloads in CI or remote setups might
  want the occasional progress meter update to see that the transfer is
- progressing and hasn't stuck, but they may not appreciate the
+ progressing and has not stuck, but they may not appreciate the
  many-times-a-second frequency curl can end up doing it with now.
 
 19. Build
@@ -1198,7 +1201,7 @@
  to no impact, neither on the performance nor on the general functionality of
  curl.
 
-19.3 Don't use GNU libtool on OpenBSD
+19.3 Do not use GNU libtool on OpenBSD
  When compiling curl on OpenBSD with "--enable-debug" it will give linking
  errors when you use GNU libtool. This can be fixed by using the libtool
  provided by OpenBSD itself. However for this the user always needs to invoke
@@ -1212,6 +1215,13 @@
 
  See https://github.com/curl/curl/issues/5424
 
+19.5 make configure use --cache-file more and better
+
+ The configure script can be improved to cache more values so that repeated
+ invokes run much faster.
+
+ See https://github.com/curl/curl/issues/7753
+
 20. Test suite
 
 20.1 SSL tunnel
@@ -1222,8 +1232,8 @@
 
 20.2 nicer lacking perl message
 
- If perl wasn't found by the configure script, don't attempt to run the tests
- but explain something nice why it doesn't.
+ If perl was not found by the configure script, do not attempt to run the tests
+ but explain something nice why it does not.
 
 20.3 more protocols supported
 
@@ -1238,15 +1248,15 @@
 20.5 Add support for concurrent connections
 
  Tests 836, 882 and 938 were designed to verify that separate connections
- aren't used when using different login credentials in protocols that
- shouldn't re-use a connection under such circumstances.
+ are not used when using different login credentials in protocols that
+ should not re-use a connection under such circumstances.
 
- Unfortunately, ftpserver.pl doesn't appear to support multiple concurrent
+ Unfortunately, ftpserver.pl does not appear to support multiple concurrent
  connections. The read while() loop seems to loop until it receives a
  disconnect from the client, where it then enters the waiting for connections
  loop. When the client opens a second connection to the server, the first
- connection hasn't been dropped (unless it has been forced - which we
- shouldn't do in these tests) and thus the wait for connections loop is never
+ connection has not been dropped (unless it has been forced - which we
+ should not do in these tests) and thus the wait for connections loop is never
  entered to receive the second connection.
 
 20.6 Use the RFC6265 test suite
@@ -1260,7 +1270,7 @@
 
 20.7 Support LD_PRELOAD on macOS
 
- LD_RELOAD doesn't work on macOS, but there are tests which require it to run
+ LD_RELOAD does not work on macOS, but there are tests which require it to run
  properly. Look into making the preload support in runtests.pl portable such
  that it uses DYLD_INSERT_LIBRARIES on macOS.
 
diff --git a/docs/TheArtOfHttpScripting.md b/docs/TheArtOfHttpScripting.md
index a6eb8b3..83b0905 100644
--- a/docs/TheArtOfHttpScripting.md
+++ b/docs/TheArtOfHttpScripting.md
@@ -2,7 +2,7 @@
 
 ## Background
 
- This document assumes that you're familiar with HTML and general networking.
+ This document assumes that you are familiar with HTML and general networking.
 
  The increasing amount of applications moving to the web has made "HTTP
  Scripting" more frequently requested and wanted. To be able to automatically
@@ -21,7 +21,7 @@
 
 ## The HTTP Protocol
 
- HTTP is the protocol used to fetch data from web servers. It is a very simple
+ HTTP is the protocol used to fetch data from web servers. It is a simple
  protocol that is built upon TCP/IP. The protocol also allows information to
  get sent to the server from the client using a few different methods, as will
  be shown here.
@@ -59,7 +59,7 @@
  want to know the amount of milliseconds between two points in a transfer. For
  those, and other similar situations, the
  [`--trace-time`](https://curl.se/docs/manpage.html#--trace-time) option
- is what you need. It'll prepend the time to each trace output line:
+ is what you need. it will prepend the time to each trace output line:
 
     curl --trace-ascii d.txt --trace-time http://example.com/
 
@@ -73,14 +73,14 @@
 ## Spec
 
  The Uniform Resource Locator format is how you specify the address of a
- particular resource on the Internet. You know these, you've seen URLs like
+ particular resource on the Internet. You know these, you have seen URLs like
  https://curl.se or https://yourbank.com a million times. RFC 3986 is the
  canonical spec. And yeah, the formal name is not URL, it is URI.
 
 ## Host
 
  The host name is usually resolved using DNS or your /etc/hosts file to an IP
- address and that's what curl will communicate with. Alternatively you specify
+ address and that is what curl will communicate with. Alternatively you specify
  the IP address directly in the URL instead of a name.
 
  For development and other trying out situations, you can point to a different
@@ -92,7 +92,7 @@
 ## Port number
 
  Each protocol curl supports operates on a default port number, be it over TCP
- or in some cases UDP. Normally you don't have to take that into
+ or in some cases UDP. Normally you do not have to take that into
  consideration, but at times you run test servers on other ports or
  similar. Then you can specify the port number in the URL with a colon and a
  number immediately following the host name. Like when doing HTTP to port
@@ -166,7 +166,7 @@
 
  A single curl command line may involve one or many URLs. The most common case
  is probably to just use one, but you can specify any amount of URLs. Yes
- any. No limits. You'll then get requests repeated over and over for all the
+ any. No limits. you will then get requests repeated over and over for all the
  given URLs.
 
  Example, send two GETs:
@@ -185,13 +185,13 @@
 ## Multiple HTTP methods in a single command line
 
  Sometimes you need to operate on several URLs in a single command line and do
- different HTTP methods on each. For this, you'll enjoy the
+ different HTTP methods on each. For this, you will enjoy the
  [`--next`](https://curl.se/docs/manpage.html#-:) option. It is basically
  a separator that separates a bunch of options from the next. All the URLs
  before `--next` will get the same method and will get all the POST data
  merged into one.
 
- When curl reaches the `--next` on the command line, it'll sort of reset the
+ When curl reaches the `--next` on the command line, it will sort of reset the
  method and the POST data and allow a new set.
 
  Perhaps this is best shown with a few examples. To send first a HEAD and then
@@ -236,7 +236,7 @@
  previous URL.
 
  If the original form was seen on the page `www.example.com/when/birth.html`,
- the second page you'll get will become
+ the second page you will get will become
  `www.example.com/when/junk.cgi?birthyear=1905&press=OK`.
 
  Most search engines work this way.
@@ -249,16 +249,16 @@
 ## POST
 
  The GET method makes all input field names get displayed in the URL field of
- your browser. That's generally a good thing when you want to be able to
+ your browser. That is generally a good thing when you want to be able to
  bookmark that page with your given data, but it is an obvious disadvantage if
  you entered secret information in one of the fields or if there are a large
- amount of fields creating a very long and unreadable URL.
+ amount of fields creating a long and unreadable URL.
 
  The HTTP protocol then offers the POST method. This way the client sends the
- data separated from the URL and thus you won't see any of it in the URL
+ data separated from the URL and thus you will not see any of it in the URL
  address field.
 
- The form would look very similar to the previous one:
+ The form would look similar to the previous one:
 
 ```html
 <form method="POST" action="junk.cgi">
@@ -313,10 +313,10 @@
 
 ## Hidden Fields
 
- A very common way for HTML based applications to pass state information
- between pages is to add hidden fields to the forms. Hidden fields are already
- filled in, they aren't displayed to the user and they get passed along just
- as all the other fields.
+ A common way for HTML based applications to pass state information between
+ pages is to add hidden fields to the forms. Hidden fields are already filled
+ in, they are not displayed to the user and they get passed along just as all
+ the other fields.
 
  A similar example form with one visible field, one hidden field and one
  submit button could look like:
@@ -329,16 +329,16 @@
 </form>
 ```
 
- To POST this with curl, you won't have to think about if the fields are
- hidden or not. To curl they're all the same:
+ To POST this with curl, you will not have to think about if the fields are
+ hidden or not. To curl they are all the same:
 
     curl --data "birthyear=1905&press=OK&person=daniel" [URL]
 
 ## Figure Out What A POST Looks Like
 
- When you're about fill in a form and send to a server by using curl instead
- of a browser, you're of course very interested in sending a POST exactly the
- way your browser does.
+ When you are about fill in a form and send to a server by using curl instead
+ of a browser, you are of course interested in sending a POST exactly the way
+ your browser does.
 
  An easy way to get to see this, is to save the HTML page with the form on
  your local disk, modify the 'method' to a GET, and press the submit button
@@ -364,7 +364,7 @@
 ## Basic Authentication
 
  HTTP Authentication is the ability to tell the server your username and
- password so that it can verify that you're allowed to do the request you're
+ password so that it can verify that you are allowed to do the request you are
  doing. The Basic authentication used in HTTP (which is the type curl uses by
  default) is **plain text** based, which means it sends username and password
  only slightly obfuscated, but still fully readable by anyone that sniffs on
@@ -408,9 +408,9 @@
  able to watch your passwords if you pass them as plain command line
  options. There are ways to circumvent this.
 
- It is worth noting that while this is how HTTP Authentication works, very
- many websites will not use this concept when they provide logins etc. See the
- Web Login chapter further below for more details on that.
+ It is worth noting that while this is how HTTP Authentication works, many
+ websites will not use this concept when they provide logins etc. See the Web
+ Login chapter further below for more details on that.
 
 # More HTTP Headers
 
@@ -419,7 +419,7 @@
  A HTTP request may include a 'referer' field (yes it is misspelled), which
  can be used to tell from which URL the client got to this particular
  resource. Some programs/scripts check the referer field of requests to verify
- that this wasn't arriving from an external site or an unknown page. While
+ that this was not arriving from an external site or an unknown page. While
  this is a stupid way to check something so easily forged, many scripts still
  do it. Using curl, you can put anything you want in the referer-field and
  thus more easily be able to fool the server into serving your request.
@@ -430,7 +430,7 @@
 
 ## User Agent
 
- Very similar to the referer field, all HTTP requests may set the User-Agent
+ Similar to the referer field, all HTTP requests may set the User-Agent
  field. It names what user agent (client) that is being used. Many
  applications use this information to decide how to display pages. Silly web
  programmers try to make different pages for users of different browsers to
@@ -439,14 +439,14 @@
 
  At times, you will see that getting a page with curl will not return the same
  page that you see when getting the page with your browser. Then you know it
- is time to set the User Agent field to fool the server into thinking you're
+ is time to set the User Agent field to fool the server into thinking you are
  one of those browsers.
 
  To make curl look like Internet Explorer 5 on a Windows 2000 box:
 
     curl --user-agent "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)" [URL]
 
- Or why not look like you're using Netscape 4.73 on an old Linux box:
+ Or why not look like you are using Netscape 4.73 on an old Linux box:
 
     curl --user-agent "Mozilla/4.73 [en] (X11; U; Linux 2.2.15 i686)" [URL]
 
@@ -477,7 +477,7 @@
 ## Other redirects
 
  Browser typically support at least two other ways of redirects that curl
- doesn't: first the html may contain a meta refresh tag that asks the browser
+ does not: first the html may contain a meta refresh tag that asks the browser
  to load a specific URL after a set number of seconds, or it may use
  javascript to do it.
 
@@ -529,7 +529,7 @@
  Curl's "cookie engine" gets enabled when you use the
  [`--cookie`](https://curl.se/docs/manpage.html#-b) option. If you only
  want curl to understand received cookies, use `--cookie` with a file that
- doesn't exist. Example, if you want to let curl understand cookies from a
+ does not exist. Example, if you want to let curl understand cookies from a
  page and follow a location (and thus possibly send back cookies it received),
  you can invoke it like:
 
@@ -539,7 +539,7 @@
  format that Netscape and Mozilla once used. It is a convenient way to share
  cookies between scripts or invokes. The `--cookie` (`-b`) switch
  automatically detects if a given file is such a cookie file and parses it,
- and by using the `--cookie-jar` (`-c`) option you'll make curl write a new
+ and by using the `--cookie-jar` (`-c`) option you will make curl write a new
  cookie file at the end of an operation:
 
     curl --cookie cookies.txt --cookie-jar newcookies.txt \
@@ -580,7 +580,7 @@
  verifying the server's certificate against a locally stored CA cert
  bundle. Failing the verification will cause curl to deny the connection. You
  must then use [`--insecure`](https://curl.se/docs/manpage.html#-k)
- (`-k`) in case you want to tell curl to ignore that the server can't be
+ (`-k`) in case you want to tell curl to ignore that the server cannot be
  verified.
 
  More about server certificate verification and ca cert bundles can be read in
@@ -628,7 +628,7 @@
 
     curl -X POST http://example.org/
 
- ... but curl will still think and act as if it sent a GET so it won't send
+ ... but curl will still think and act as if it sent a GET so it will not send
  any request body etc.
 
 # Web Login
@@ -651,7 +651,7 @@
  Some web-based login systems feature various amounts of javascript, and
  sometimes they use such code to set or modify cookie contents. Possibly they
  do that to prevent programmed logins, like this manual describes how to...
- Anyway, if reading the code isn't enough to let you repeat the behavior
+ Anyway, if reading the code is not enough to let you repeat the behavior
  manually, capturing the HTTP requests done by your browsers and analyzing the
  sent cookies is usually a working method to work out how to shortcut the
  javascript need.
@@ -666,7 +666,7 @@
 
 ## Some debug tricks
 
- Many times when you run curl on a site, you'll notice that the site doesn't
+ Many times when you run curl on a site, you will notice that the site does not
  seem to respond the same way to your curl requests as it does to your
  browser's.
 
@@ -690,9 +690,9 @@
 
 ## Check what the browsers do
 
- A very good helper to make sure you do this right, is the web browsers'
- developers tools that let you view all headers you send and receive (even
- when using HTTPS).
+ A good helper to make sure you do this right, is the web browsers' developers
+ tools that let you view all headers you send and receive (even when using
+ HTTPS).
 
  A more raw approach is to capture the HTTP traffic on the network with tools
  such as Wireshark or tcpdump and check what headers that were sent and
diff --git a/docs/URL-SYNTAX.md b/docs/URL-SYNTAX.md
index a97eb0d..8b11236 100644
--- a/docs/URL-SYNTAX.md
+++ b/docs/URL-SYNTAX.md
@@ -5,7 +5,8 @@
 The official "URL syntax" is primarily defined in these two different
 specifications:
 
- - [RFC 3986](https://tools.ietf.org/html/rfc3986) (although URL is called "URI" in there)
+ - [RFC 3986](https://tools.ietf.org/html/rfc3986) (although URL is called
+   "URI" in there)
  - [The WHATWG URL Specification](https://url.spec.whatwg.org/)
 
 RFC 3986 is the earlier one, and curl has always tried to adhere to that one
@@ -19,7 +20,7 @@
 URL parsers as implemented in browsers, libraries and tools usually opt to
 support one of the mentioned specifications. Bugs, differences in
 interpretations and the moving nature of the WHATWG spec does however make it
-very unlikely that multiple parsers treat URLs the exact same way!
+unlikely that multiple parsers treat URLs the exact same way!
 
 ## Security
 
@@ -41,8 +42,8 @@
 
 1. If you have an application that runs as or in a server application, getting
    an unfiltered URL can trick your application to access a local resource
-   instead of a remote resource. Protecting yourself against localhost accesses is very
-   hard when accepting user provided URLs.
+   instead of a remote resource. Protecting yourself against localhost accesses
+   is hard when accepting user provided URLs.
 
 2. Such custom URLs can access other ports than you planned as port numbers
    are part of the regular URL format. The combination of a local host and a
@@ -149,7 +150,7 @@
 security risk.
 
 URLs for IMAP, POP3 and SMTP also support *login options* as part of the
-userinfo field. They're provided as a semicolon after the password and then
+userinfo field. they are provided as a semicolon after the password and then
 the options.
 
 ## Hostname
@@ -231,7 +232,7 @@
 
 ### Windows-specific FILE details
 
-curl accepts that the FILE URL's path starts with a "drive letter". That's a
+curl accepts that the FILE URL's path starts with a "drive letter". That is a
 single letter `a` to `z` followed by a colon or a pipe character (`|`).
 
 The Windows operating system itself will convert some file accesses to perform
@@ -285,8 +286,26 @@
 
     imap://user:password@mail.example.com/INBOX?SUBJECT%20shadows
 
-For more information about the individual components of an IMAP URL please see
-RFC 5092.
+Searching via the query part of the URL `?` is a search request for the results
+to be returned as message sequence numbers (MAILINDEX). It is possible to make
+a search request for results to be returned as unique ID numbers (UID) by using
+a custom curl request via `-X`. UID numbers are unique per session (and
+multiple sessions when UIDVALIDITY is the same). For example, if you are
+searching for `"foo bar"` in header+body (TEXT) and you want the matching
+MAILINDEX numbers returned then you could search via URL:
+
+    imap://user:password@mail.example.com/INBOX?TEXT%20%22foo%20bar%22
+
+.. but if you wanted matching UID numbers you would have to use a custom request:
+
+    imap://user:password@mail.example.com/INBOX -X "UID SEARCH TEXT \"foo bar\""
+
+For more information about IMAP commands please see RFC 9051. For more
+information about the individual components of an IMAP URL please see RFC 5092.
+
+* Note old curl versions would FETCH by message sequence number when UID was
+specified in the URL. That was a bug fixed in 7.62.0, which added MAILINDEX to
+FETCH by mail sequence number.
 
 ## LDAP
 
diff --git a/docs/VERSIONS.md b/docs/VERSIONS.md
index bcc7474..de0b0d4 100644
--- a/docs/VERSIONS.md
+++ b/docs/VERSIONS.md
@@ -1,7 +1,7 @@
 Version Numbers and Releases
 ============================
 
- Curl is not only curl. Curl is also libcurl. They're actually individually
+ Curl is not only curl. Curl is also libcurl. they are actually individually
  versioned, but they usually follow each other closely.
 
  The version numbering is always built up using the same system:
diff --git a/docs/cmdline-opts/MANPAGE.md b/docs/cmdline-opts/MANPAGE.md
index b903bc2..f7f09eb 100644
--- a/docs/cmdline-opts/MANPAGE.md
+++ b/docs/cmdline-opts/MANPAGE.md
@@ -28,6 +28,7 @@
     Requires: (space separated list of features this requires, no dashes)
     See-also: (space separated list of related options, no dashes)
     Help: (short text for the --help output for this option)
+    Example: (example command line, without "curl" and can use `$URL`)
     --- (end of meta-data)
 
 ### Body
diff --git a/docs/cmdline-opts/Makefile.inc b/docs/cmdline-opts/Makefile.inc
index 6e04552..506025a 100644
--- a/docs/cmdline-opts/Makefile.inc
+++ b/docs/cmdline-opts/Makefile.inc
@@ -96,6 +96,7 @@
   header.d \
   help.d \
   hostpubmd5.d \
+  hostpubsha256.d \
   hsts.d \
   http0.9.d \
   http1.0.d \
diff --git a/docs/cmdline-opts/abstract-unix-socket.d b/docs/cmdline-opts/abstract-unix-socket.d
index 8403cab..e26048f 100644
--- a/docs/cmdline-opts/abstract-unix-socket.d
+++ b/docs/cmdline-opts/abstract-unix-socket.d
@@ -4,6 +4,7 @@
 Added: 7.53.0
 Protocols: HTTP
 Category: connection
+Example: --abstract-unix-socket socketpath $URL
 ---
 Connect through an abstract Unix domain socket, instead of using the network.
 Note: netstat shows the path of an abstract socket prefixed with '@', however
diff --git a/docs/cmdline-opts/alt-svc.d b/docs/cmdline-opts/alt-svc.d
index 5598b59..914b1fb 100644
--- a/docs/cmdline-opts/alt-svc.d
+++ b/docs/cmdline-opts/alt-svc.d
@@ -4,9 +4,8 @@
 Help: Enable alt-svc with this cache file
 Added: 7.64.1
 Category: http
+Example: --alt-svc svc.txt $URL
 ---
-WARNING: this option is experimental. Do not use in production.
-
 This option enables the alt-svc parser in curl. If the file name points to an
 existing alt-svc cache file, that will be used. After a completed transfer,
 the cache will be saved to the file name again if it has been modified.
diff --git a/docs/cmdline-opts/anyauth.d b/docs/cmdline-opts/anyauth.d
index bec0c0c..1092341 100644
--- a/docs/cmdline-opts/anyauth.d
+++ b/docs/cmdline-opts/anyauth.d
@@ -3,6 +3,8 @@
 Protocols: HTTP
 See-also: proxy-anyauth basic digest
 Category: http proxy auth
+Example: --anyauth --user me:pwd $URL
+Added: 7.10.6
 ---
 Tells curl to figure out authentication method by itself, and use the most
 secure one the remote site claims to support. This is done by first doing a
diff --git a/docs/cmdline-opts/append.d b/docs/cmdline-opts/append.d
index 8bdb259..c332b7b 100644
--- a/docs/cmdline-opts/append.d
+++ b/docs/cmdline-opts/append.d
@@ -3,7 +3,9 @@
 Help: Append to target file when uploading
 Protocols: FTP SFTP
 Category: ftp sftp
+Example: --upload-file local --append ftp://example.com/
+Added: 4.8
 ---
 When used in an upload, this makes curl append to the target file instead of
-overwriting it. If the remote file doesn't exist, it will be created.  Note
+overwriting it. If the remote file does not exist, it will be created.  Note
 that this flag is ignored by some SFTP servers (including OpenSSH).
diff --git a/docs/cmdline-opts/aws-sigv4.d b/docs/cmdline-opts/aws-sigv4.d
index 26546df..db98864 100644
--- a/docs/cmdline-opts/aws-sigv4.d
+++ b/docs/cmdline-opts/aws-sigv4.d
@@ -3,6 +3,7 @@
 Help: Use AWS V4 signature authentication
 Category: auth http
 Added: 7.75.0
+Example: --aws-sigv4 "aws:amz:east-2:es" --user "key:secret" $URL
 ---
 Use AWS V4 signature authentication in the transfer.
 
diff --git a/docs/cmdline-opts/basic.d b/docs/cmdline-opts/basic.d
index e222c51..abab7d0 100644
--- a/docs/cmdline-opts/basic.d
+++ b/docs/cmdline-opts/basic.d
@@ -3,6 +3,8 @@
 See-also: proxy-basic
 Protocols: HTTP
 Category: auth
+Example: -u name:password --basic $URL
+Added: 7.10.6
 ---
 Tells curl to use HTTP Basic authentication with the remote host. This is the
 default and this option is usually pointless, unless you use it to override a
diff --git a/docs/cmdline-opts/cacert.d b/docs/cmdline-opts/cacert.d
index 793d8c1..07612e4 100644
--- a/docs/cmdline-opts/cacert.d
+++ b/docs/cmdline-opts/cacert.d
@@ -3,6 +3,8 @@
 Help: CA certificate to verify peer against
 Protocols: TLS
 Category: tls
+Example: --cacert CA-file.txt $URL
+Added: 7.5
 ---
 Tells curl to use the specified certificate file to verify the peer. The file
 may contain multiple CA certificates. The certificate(s) must be in PEM
@@ -14,7 +16,7 @@
 overrides that variable.
 
 The windows version of curl will automatically look for a CA certs file named
-\'curl-ca-bundle.crt\', either in the same directory as curl.exe, or in the
+'curl-ca-bundle.crt', either in the same directory as curl.exe, or in the
 Current Working Directory, or in any folder along your PATH.
 
 If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module
@@ -26,9 +28,9 @@
 certificates in the system and user Keychain to verify the peer, which is the
 preferred method of verifying the peer's certificate chain.
 
-(Schannel only) This option is supported for Schannel in Windows 7 or later with
-libcurl 7.60 or later. This option is supported for backward compatibility
-with other SSL engines; instead it is recommended to use Windows' store of
-root certificates (the default for Schannel).
+(Schannel only) This option is supported for Schannel in Windows 7 or later
+with libcurl 7.60 or later. This option is supported for backward
+compatibility with other SSL engines; instead it is recommended to use
+Windows' store of root certificates (the default for Schannel).
 
 If this option is used several times, the last one will be used.
diff --git a/docs/cmdline-opts/capath.d b/docs/cmdline-opts/capath.d
index 4ce077a..190aa4d 100644
--- a/docs/cmdline-opts/capath.d
+++ b/docs/cmdline-opts/capath.d
@@ -3,6 +3,8 @@
 Help: CA directory to verify peer against
 Protocols: TLS
 Category: tls
+Example: --capath /local/directory $URL
+Added: 7.9.8
 ---
 Tells curl to use the specified certificate directory to verify the
 peer. Multiple paths can be provided by separating them with ":" (e.g.
diff --git a/docs/cmdline-opts/cert-status.d b/docs/cmdline-opts/cert-status.d
index 63e3520..360e5c9 100644
--- a/docs/cmdline-opts/cert-status.d
+++ b/docs/cmdline-opts/cert-status.d
@@ -3,6 +3,7 @@
 Added: 7.41.0
 Help: Verify the status of the server cert via OCSP-staple
 Category: tls
+Example: --cert-status $URL
 ---
 Tells curl to verify the status of the server certificate by using the
 Certificate Status Request (aka. OCSP stapling) TLS extension.
diff --git a/docs/cmdline-opts/cert-type.d b/docs/cmdline-opts/cert-type.d
index b041bcb..61bd65c 100644
--- a/docs/cmdline-opts/cert-type.d
+++ b/docs/cmdline-opts/cert-type.d
@@ -4,6 +4,8 @@
 Help: Certificate type (DER/PEM/ENG)
 See-also: cert key key-type
 Category: tls
+Example: --cert-type PEM --cert file $URL
+Added: 7.9.3
 ---
 Tells curl what type the provided client certificate is using. PEM, DER, ENG
 and P12 are recognized types.  If not specified, PEM is assumed.
diff --git a/docs/cmdline-opts/cert.d b/docs/cmdline-opts/cert.d
index 2938e57..325e4b3 100644
--- a/docs/cmdline-opts/cert.d
+++ b/docs/cmdline-opts/cert.d
@@ -5,11 +5,13 @@
 Protocols: TLS
 See-also: cert-type key key-type
 Category: tls
+Example: --cert certfile --key keyfile $URL
+Added: 5.0
 ---
 Tells curl to use the specified client certificate file when getting a file
 with HTTPS, FTPS or another SSL-based protocol. The certificate must be in
 PKCS#12 format if using Secure Transport, or PEM format if using any other
-engine.  If the optional password isn't specified, it will be queried for on
+engine.  If the optional password is not specified, it will be queried for on
 the terminal. Note that this option assumes a \&"certificate" file that is the
 private key and the client certificate concatenated! See --cert and --key to
 specify them independently.
diff --git a/docs/cmdline-opts/ciphers.d b/docs/cmdline-opts/ciphers.d
index 723b959..985acc8 100644
--- a/docs/cmdline-opts/ciphers.d
+++ b/docs/cmdline-opts/ciphers.d
@@ -3,6 +3,8 @@
 Help: SSL ciphers to use
 Protocols: TLS
 Category: tls
+Example: --ciphers ECDHE-ECDSA-AES256-CCM8 $URL
+Added: 7.9
 ---
 Specifies which ciphers to use in the connection. The list of ciphers must
 specify valid ciphers. Read up on SSL cipher list details on this URL:
diff --git a/docs/cmdline-opts/compressed-ssh.d b/docs/cmdline-opts/compressed-ssh.d
index 849fe18..d95c6ad 100644
--- a/docs/cmdline-opts/compressed-ssh.d
+++ b/docs/cmdline-opts/compressed-ssh.d
@@ -3,6 +3,7 @@
 Protocols: SCP SFTP
 Added: 7.56.0
 Category: scp ssh
+Example: --compressed-ssh sftp://example.com/
 ---
 Enables built-in SSH compression.
 This is a request, not an order; the server may or may not do it.
diff --git a/docs/cmdline-opts/compressed.d b/docs/cmdline-opts/compressed.d
index 26bc151..fe26902 100644
--- a/docs/cmdline-opts/compressed.d
+++ b/docs/cmdline-opts/compressed.d
@@ -2,9 +2,12 @@
 Help: Request compressed response
 Protocols: HTTP
 Category: http
+Example: --compressed $URL
+Added: 7.10
 ---
 Request a compressed response using one of the algorithms curl supports, and
 automatically decompress the content. Headers are not modified.
 
 If this option is used and the server sends an unsupported encoding, curl will
-report an error.
+report an error. This is a request, not an order; the server may or may not
+deliver data compressed.
diff --git a/docs/cmdline-opts/config.d b/docs/cmdline-opts/config.d
index 1c46e41..e356dc9 100644
--- a/docs/cmdline-opts/config.d
+++ b/docs/cmdline-opts/config.d
@@ -3,8 +3,9 @@
 Help: Read config from a file
 Short: K
 Category: curl
+Example: --config file.txt $URL
+Added: 4.10
 ---
-
 Specify a text file to read curl arguments from. The command line arguments
 found in the text file will be used as if they were provided on the command
 line.
@@ -35,8 +36,8 @@
 url = "https://curl.se/docs/"
 
 When curl is invoked, it (unless --disable is used) checks for a default
-config file and uses it if found. The default config file is checked for in
-the following places in this order:
+config file and uses it if found, even when this option is used. The default
+config file is checked for in the following places in this order:
 
 1) Use the CURL_HOME environment variable if set
 
@@ -48,7 +49,7 @@
 
 5) Windows: use APPDATA if set
 
-6) Windows: use "USERPROFILE\Application Data" if set
+6) Windows: use "USERPROFILE\\Application Data" if set
 
 7) On windows, if there is no .curlrc file in the home dir, it checks for one
 in the same dir the curl executable is placed. On Unix-like systems, it will
diff --git a/docs/cmdline-opts/connect-timeout.d b/docs/cmdline-opts/connect-timeout.d
index fa32772..89152ba 100644
--- a/docs/cmdline-opts/connect-timeout.d
+++ b/docs/cmdline-opts/connect-timeout.d
@@ -1,8 +1,11 @@
 Long: connect-timeout
-Arg: <seconds>
+Arg: <fractional seconds>
 Help: Maximum time allowed for connection
 See-also: max-time
 Category: connection
+Example: --connect-timeout 20 $URL
+Example: --connect-timeout 3.14 $URL
+Added: 7.7
 ---
 Maximum time in seconds that you allow curl's connection to take.  This only
 limits the connection phase, so if curl connects within the given period it
diff --git a/docs/cmdline-opts/connect-to.d b/docs/cmdline-opts/connect-to.d
index 2f015f8..ebea9b9 100644
--- a/docs/cmdline-opts/connect-to.d
+++ b/docs/cmdline-opts/connect-to.d
@@ -4,6 +4,7 @@
 Added: 7.49.0
 See-also: resolve header
 Category: connection
+Example: --connect-to example.com:443:example.net:8443 $URL
 ---
 
 For a request to the given HOST1:PORT1 pair, connect to HOST2:PORT2 instead.
diff --git a/docs/cmdline-opts/continue-at.d b/docs/cmdline-opts/continue-at.d
index c44d2f4..66fa34e 100644
--- a/docs/cmdline-opts/continue-at.d
+++ b/docs/cmdline-opts/continue-at.d
@@ -4,6 +4,9 @@
 Help: Resumed transfer offset
 See-also: range
 Category: connection
+Example: -C - $URL
+Example: -C 400 $URL
+Added: 4.8
 ---
 Continue/Resume a previous file transfer at the given offset. The given offset
 is the exact number of bytes that will be skipped, counting from the beginning
diff --git a/docs/cmdline-opts/cookie-jar.d b/docs/cmdline-opts/cookie-jar.d
index f11991f..234ba48 100644
--- a/docs/cmdline-opts/cookie-jar.d
+++ b/docs/cmdline-opts/cookie-jar.d
@@ -4,6 +4,9 @@
 Protocols: HTTP
 Help: Write cookies to <filename> after operation
 Category: http
+Example: -c store-here.txt $URL
+Example: -c store-here.txt -b read-these $URL
+Added: 7.9
 ---
 Specify to which file you want curl to write all cookies after a completed
 operation. Curl writes all cookies from its in-memory cookie storage to the
@@ -16,10 +19,10 @@
 record and use cookies. Another way to activate it is to use the --cookie
 option.
 
-If the cookie jar can't be created or written to, the whole curl operation
-won't fail or even report an error clearly. Using --verbose will get a warning
-displayed, but that is the only visible feedback you get about this possibly
-lethal situation.
+If the cookie jar cannot be created or written to, the whole curl operation
+will not fail or even report an error clearly. Using --verbose will get a
+warning displayed, but that is the only visible feedback you get about this
+possibly lethal situation.
 
 If this option is used several times, the last specified file name will be
 used.
diff --git a/docs/cmdline-opts/cookie.d b/docs/cmdline-opts/cookie.d
index 5c40cf2..a4be033 100644
--- a/docs/cmdline-opts/cookie.d
+++ b/docs/cmdline-opts/cookie.d
@@ -4,6 +4,9 @@
 Protocols: HTTP
 Help: Send cookies from string/file
 Category: http
+Example: -b cookiefile $URL
+Example: -b cookiefile -c cookiefile $URL
+Added: 4.9
 ---
 Pass the data to the HTTP server in the Cookie header. It is supposedly
 the data previously received from the server in a "Set-Cookie:" line.  The
@@ -12,7 +15,7 @@
 If no '=' symbol is used in the argument, it is instead treated as a filename
 to read previously stored cookie from. This option also activates the cookie
 engine which will make curl record incoming cookies, which may be handy if
-you're using this in combination with the --location option or do multiple URL
+you are using this in combination with the --location option or do multiple URL
 transfers on the same invoke. If the file name is exactly a minus ("-"), curl
 will instead read the contents from stdin.
 
@@ -22,13 +25,13 @@
 The file specified with --cookie is only used as input. No cookies will be
 written to the file. To store cookies, use the --cookie-jar option.
 
-If you use the Set-Cookie file format and don't specify a domain then the
+If you use the Set-Cookie file format and do not specify a domain then the
 cookie is not sent since the domain will never match. To address this, set a
 domain in Set-Cookie line (doing that will include sub-domains) or preferably:
 use the Netscape format.
 
 This option can be used multiple times.
 
-Users very often want to both read cookies from a file and write updated
-cookies back to a file, so using both --cookie and --cookie-jar in the same
-command line is common.
+Users often want to both read cookies from a file and write updated cookies
+back to a file, so using both --cookie and --cookie-jar in the same command
+line is common.
diff --git a/docs/cmdline-opts/create-dirs.d b/docs/cmdline-opts/create-dirs.d
index 801e95d..742a1ea 100644
--- a/docs/cmdline-opts/create-dirs.d
+++ b/docs/cmdline-opts/create-dirs.d
@@ -1,6 +1,8 @@
 Long: create-dirs
 Help: Create necessary local directory hierarchy
 Category: curl
+Example: --create-dirs --output local/dir/file $URL
+Added: 7.10.3
 ---
 When used in conjunction with the --output option, curl will create the
 necessary local directory hierarchy as needed. This option creates the
diff --git a/docs/cmdline-opts/create-file-mode.d b/docs/cmdline-opts/create-file-mode.d
index 275fc6c..429b5ee 100644
--- a/docs/cmdline-opts/create-file-mode.d
+++ b/docs/cmdline-opts/create-file-mode.d
@@ -5,6 +5,7 @@
 Category: sftp scp file upload
 See-also: ftp-create-dirs
 Added: 7.75.0
+Example: --create-file-mode 0777 -T localfile sftp://example.com/new
 ---
 When curl is used to create files remotely using one of the supported
 protocols, this option allows the user to set which 'mode' to set on the file
diff --git a/docs/cmdline-opts/crlf.d b/docs/cmdline-opts/crlf.d
index 50c4bef..1266b64 100644
--- a/docs/cmdline-opts/crlf.d
+++ b/docs/cmdline-opts/crlf.d
@@ -2,6 +2,8 @@
 Help: Convert LF to CRLF in upload
 Protocols: FTP SMTP
 Category: ftp smtp
+Example: --crlf -T file ftp://example.com/
+Added: 5.7
 ---
 Convert LF to CRLF in upload. Useful for MVS (OS/390).
 
diff --git a/docs/cmdline-opts/crlfile.d b/docs/cmdline-opts/crlfile.d
index 360e668..21e86a8 100644
--- a/docs/cmdline-opts/crlfile.d
+++ b/docs/cmdline-opts/crlfile.d
@@ -1,9 +1,10 @@
 Long: crlfile
 Arg: <file>
 Protocols: TLS
-Help: Get a CRL list in PEM format from the given file
+Help: Use this CRL list
 Added: 7.19.7
 Category: tls
+Example: --crlfile rejects.txt $URL
 ---
 Provide a file using PEM format with a Certificate Revocation List that may
 specify peer certificates that are to be considered revoked.
diff --git a/docs/cmdline-opts/curves.d b/docs/cmdline-opts/curves.d
index 47870a2..ac5ab10 100644
--- a/docs/cmdline-opts/curves.d
+++ b/docs/cmdline-opts/curves.d
@@ -4,6 +4,7 @@
 Protocols: TLS
 Added: 7.73.0
 Category: tls
+Example: --curves X25519 $URL
 ---
 Tells curl to request specific curves to use during SSL session establishment
 according to RFC 8422, 5.1.  Multiple algorithms can be provided by separating
diff --git a/docs/cmdline-opts/data-ascii.d b/docs/cmdline-opts/data-ascii.d
index 3522f63..ff2c0bc 100644
--- a/docs/cmdline-opts/data-ascii.d
+++ b/docs/cmdline-opts/data-ascii.d
@@ -3,5 +3,7 @@
 Help: HTTP POST ASCII data
 Protocols: HTTP
 Category: http post upload
+Example: --data-ascii @file $URL
+Added: 7.2
 ---
 This is just an alias for --data.
diff --git a/docs/cmdline-opts/data-binary.d b/docs/cmdline-opts/data-binary.d
index c40785e..60951a4 100644
--- a/docs/cmdline-opts/data-binary.d
+++ b/docs/cmdline-opts/data-binary.d
@@ -3,6 +3,8 @@
 Help: HTTP POST binary data
 Protocols: HTTP
 Category: http post upload
+Example: --data-binary @filename $URL
+Added: 7.2
 ---
 This posts data exactly as specified with no extra processing whatsoever.
 
diff --git a/docs/cmdline-opts/data-raw.d b/docs/cmdline-opts/data-raw.d
index 4db83ae..b8cd0f7 100644
--- a/docs/cmdline-opts/data-raw.d
+++ b/docs/cmdline-opts/data-raw.d
@@ -5,6 +5,8 @@
 Added: 7.43.0
 See-also: data
 Category: http post upload
+Example: --data-raw "hello" $URL
+Example: --data-raw "@at@at@" $URL
 ---
 This posts data similarly to --data but without the special
 interpretation of the @ character.
diff --git a/docs/cmdline-opts/data-urlencode.d b/docs/cmdline-opts/data-urlencode.d
index 2205f9d..c9cecec 100644
--- a/docs/cmdline-opts/data-urlencode.d
+++ b/docs/cmdline-opts/data-urlencode.d
@@ -5,6 +5,10 @@
 See-also: data data-raw
 Added: 7.18.0
 Category: http post upload
+Example: --data-urlencode name=val $URL
+Example: --data-urlencode =encodethis $URL
+Example: --data-urlencode name@file $URL
+Example: --data-urlencode @fileonly $URL
 ---
 This posts data, similar to the other --data options with the exception
 that this performs URL-encoding.
@@ -15,7 +19,7 @@
 .RS
 .IP "content"
 This will make curl URL-encode the content and pass that on. Just be careful
-so that the content doesn't contain any = or @ symbols, as that will then make
+so that the content does not contain any = or @ symbols, as that will then make
 the syntax match one of the other cases below!
 .IP "=content"
 This will make curl URL-encode the content and pass that on. The preceding =
diff --git a/docs/cmdline-opts/data.d b/docs/cmdline-opts/data.d
index 53ba86b..9425ba2 100644
--- a/docs/cmdline-opts/data.d
+++ b/docs/cmdline-opts/data.d
@@ -6,6 +6,10 @@
 See-also: data-binary data-urlencode data-raw
 Mutexed: form head upload-file
 Category: important http post upload
+Example: -d "name=curl" $URL
+Example: -d "name=curl" -d "tool=cmdline" $URL
+Example: -d @filename $URL
+Added: 4.0
 ---
 Sends the specified data in a POST request to the HTTP server, in the same way
 that a browser does when a user has filled in an HTML form and presses the
@@ -26,5 +30,5 @@
 read the data from, or - if you want curl to read the data from stdin. Posting
 data from a file named \&'foobar' would thus be done with --data @foobar. When
 --data is told to read from a file like that, carriage returns and newlines
-will be stripped out. If you don't want the @ character to have a special
+will be stripped out. If you do not want the @ character to have a special
 interpretation use --data-raw instead.
diff --git a/docs/cmdline-opts/delegation.d b/docs/cmdline-opts/delegation.d
index 41fa940..3d7e59f 100644
--- a/docs/cmdline-opts/delegation.d
+++ b/docs/cmdline-opts/delegation.d
@@ -3,12 +3,14 @@
 Help: GSS-API delegation permission
 Protocols: GSS/kerberos
 Category: auth
+Example: --delegation "none" $URL
+Added: 7.22.0
 ---
 Set LEVEL to tell the server what it is allowed to delegate when it
 comes to user credentials.
 .RS
 .IP "none"
-Don't allow any delegation.
+Do not allow any delegation.
 .IP "policy"
 Delegates if and only if the OK-AS-DELEGATE flag is set in the Kerberos
 service ticket, which is a matter of realm policy.
diff --git a/docs/cmdline-opts/digest.d b/docs/cmdline-opts/digest.d
index da8c01e..4feb850 100644
--- a/docs/cmdline-opts/digest.d
+++ b/docs/cmdline-opts/digest.d
@@ -4,6 +4,8 @@
 Mutexed: basic ntlm negotiate
 See-also: user proxy-digest anyauth
 Category: proxy auth http
+Example: -u name:password --digest $URL
+Added: 7.10.6
 ---
 Enables HTTP Digest authentication. This is an authentication scheme that
 prevents the password from being sent over the wire in clear text. Use this in
diff --git a/docs/cmdline-opts/disable-eprt.d b/docs/cmdline-opts/disable-eprt.d
index ffcf684..9a927a9 100644
--- a/docs/cmdline-opts/disable-eprt.d
+++ b/docs/cmdline-opts/disable-eprt.d
@@ -2,6 +2,8 @@
 Help: Inhibit using EPRT or LPRT
 Protocols: FTP
 Category: ftp
+Example: --disable-eprt ftp://example.com/
+Added: 7.10.5
 ---
 Tell curl to disable the use of the EPRT and LPRT commands when doing active
 FTP transfers. Curl will normally always first attempt to use EPRT, then LPRT
diff --git a/docs/cmdline-opts/disable-epsv.d b/docs/cmdline-opts/disable-epsv.d
index dadef09..dfd8f73 100644
--- a/docs/cmdline-opts/disable-epsv.d
+++ b/docs/cmdline-opts/disable-epsv.d
@@ -2,6 +2,8 @@
 Help: Inhibit using EPSV
 Protocols: FTP
 Category: ftp
+Example: --disable-epsv ftp://example.com/
+Added: 7.9.2
 ---
 Tell curl to disable the use of the EPSV command when doing passive FTP
 transfers. Curl will normally always first attempt to use EPSV before
diff --git a/docs/cmdline-opts/disable.d b/docs/cmdline-opts/disable.d
index d909608..e7dd6c7 100644
--- a/docs/cmdline-opts/disable.d
+++ b/docs/cmdline-opts/disable.d
@@ -2,6 +2,8 @@
 Short: q
 Help: Disable .curlrc
 Category: curl
+Example: -q $URL
+Added: 5.0
 ---
 If used as the first parameter on the command line, the *curlrc* config
 file will not be read and used. See the --config for details on the default
diff --git a/docs/cmdline-opts/disallow-username-in-url.d b/docs/cmdline-opts/disallow-username-in-url.d
index e124f67..f3122ae 100644
--- a/docs/cmdline-opts/disallow-username-in-url.d
+++ b/docs/cmdline-opts/disallow-username-in-url.d
@@ -4,5 +4,7 @@
 Added: 7.61.0
 See-also: proto
 Category: curl http
+Example: --disallow-username-in-url $URL
 ---
-This tells curl to exit if passed a url containing a username.
+This tells curl to exit if passed a url containing a username. This is probably
+most useful when the URL is being provided at run-time or similar.
diff --git a/docs/cmdline-opts/dns-interface.d b/docs/cmdline-opts/dns-interface.d
index 3cb818a..fec7927 100644
--- a/docs/cmdline-opts/dns-interface.d
+++ b/docs/cmdline-opts/dns-interface.d
@@ -6,6 +6,7 @@
 Added: 7.33.0
 Requires: c-ares
 Category: dns
+Example: --dns-interface eth0 $URL
 ---
 Tell curl to send outgoing DNS requests through <interface>. This option is a
 counterpart to --interface (which does not affect DNS). The supplied string
diff --git a/docs/cmdline-opts/dns-ipv4-addr.d b/docs/cmdline-opts/dns-ipv4-addr.d
index 0d7bae6..e09153a 100644
--- a/docs/cmdline-opts/dns-ipv4-addr.d
+++ b/docs/cmdline-opts/dns-ipv4-addr.d
@@ -6,6 +6,7 @@
 Added: 7.33.0
 Requires: c-ares
 Category: dns
+Example: --dns-ipv4-addr 10.1.2.3 $URL
 ---
 Tell curl to bind to <ip-address> when making IPv4 DNS requests, so that
 the DNS requests originate from this address. The argument should be a
diff --git a/docs/cmdline-opts/dns-ipv6-addr.d b/docs/cmdline-opts/dns-ipv6-addr.d
index a964dbb..954cb98 100644
--- a/docs/cmdline-opts/dns-ipv6-addr.d
+++ b/docs/cmdline-opts/dns-ipv6-addr.d
@@ -6,6 +6,7 @@
 Added: 7.33.0
 Requires: c-ares
 Category: dns
+Example: --dns-ipv6-addr 2a04:4e42::561 $URL
 ---
 Tell curl to bind to <ip-address> when making IPv6 DNS requests, so that
 the DNS requests originate from this address. The argument should be a
diff --git a/docs/cmdline-opts/dns-servers.d b/docs/cmdline-opts/dns-servers.d
index a0954b3..0894735 100644
--- a/docs/cmdline-opts/dns-servers.d
+++ b/docs/cmdline-opts/dns-servers.d
@@ -4,6 +4,7 @@
 Requires: c-ares
 Added: 7.33.0
 Category: dns
+Example: --dns-servers 192.168.0.1,192.168.0.2 $URL
 ---
 Set the list of DNS servers to be used instead of the system default.
 The list of IP addresses should be separated with commas. Port numbers
diff --git a/docs/cmdline-opts/doh-cert-status.d b/docs/cmdline-opts/doh-cert-status.d
index 1442fc8..a760a6f 100644
--- a/docs/cmdline-opts/doh-cert-status.d
+++ b/docs/cmdline-opts/doh-cert-status.d
@@ -3,5 +3,6 @@
 Protocols: all
 Added: 7.76.0
 Category: dns tls
+Example: --doh-cert-status --doh-url https://doh.example $URL
 ---
 Same as --cert-status but used for DoH (DNS-over-HTTPS).
diff --git a/docs/cmdline-opts/doh-insecure.d b/docs/cmdline-opts/doh-insecure.d
index fe399a2..907a5dc 100644
--- a/docs/cmdline-opts/doh-insecure.d
+++ b/docs/cmdline-opts/doh-insecure.d
@@ -3,5 +3,6 @@
 Protocols: all
 Added: 7.76.0
 Category: dns tls
+Example: --doh-insecure --doh-url https://doh.example $URL
 ---
 Same as --insecure but used for DoH (DNS-over-HTTPS).
diff --git a/docs/cmdline-opts/doh-url.d b/docs/cmdline-opts/doh-url.d
index 612945a..80ff96c 100644
--- a/docs/cmdline-opts/doh-url.d
+++ b/docs/cmdline-opts/doh-url.d
@@ -4,6 +4,7 @@
 Protocols: all
 Added: 7.62.0
 Category: dns
+Example: --doh-url https://doh.example $URL
 ---
 Specifies which DNS-over-HTTPS (DoH) server to use to resolve hostnames,
 instead of using the default name resolver mechanism. The URL must be HTTPS.
diff --git a/docs/cmdline-opts/dump-header.d b/docs/cmdline-opts/dump-header.d
index aa3bd9e..8c617b9 100644
--- a/docs/cmdline-opts/dump-header.d
+++ b/docs/cmdline-opts/dump-header.d
@@ -5,6 +5,8 @@
 Protocols: HTTP FTP
 See-also: output
 Category: http ftp
+Example: --dump-header store.txt $URL
+Added: 5.7
 ---
 Write the received protocol headers to the specified file. If no headers are
 received, the use of this option will create an empty file.
diff --git a/docs/cmdline-opts/egd-file.d b/docs/cmdline-opts/egd-file.d
index 05ede9a..cd3450a 100644
--- a/docs/cmdline-opts/egd-file.d
+++ b/docs/cmdline-opts/egd-file.d
@@ -4,6 +4,8 @@
 Protocols: TLS
 See-also: random-file
 Category: tls
+Example: --egd-file /random/here $URL
+Added: 7.7
 ---
 Specify the path name to the Entropy Gathering Daemon socket. The socket is
 used to seed the random engine for SSL connections.
diff --git a/docs/cmdline-opts/engine.d b/docs/cmdline-opts/engine.d
index 034796c..16349e5 100644
--- a/docs/cmdline-opts/engine.d
+++ b/docs/cmdline-opts/engine.d
@@ -3,6 +3,8 @@
 Help: Crypto engine to use
 Protocols: TLS
 Category: tls
+Example: --engine flavor $URL
+Added: 7.9.3
 ---
 Select the OpenSSL crypto engine to use for cipher operations. Use --engine
 list to print a list of build-time supported engines. Note that not all (and
diff --git a/docs/cmdline-opts/etag-compare.d b/docs/cmdline-opts/etag-compare.d
index c984cc9..fa16762 100644
--- a/docs/cmdline-opts/etag-compare.d
+++ b/docs/cmdline-opts/etag-compare.d
@@ -4,6 +4,7 @@
 Protocols: HTTP
 Added: 7.68.0
 Category: http
+Example: --etag-compare etag.txt $URL
 ---
 This option makes a conditional HTTP request for the specific ETag read
 from the given file by sending a custom If-None-Match header using the
diff --git a/docs/cmdline-opts/etag-save.d b/docs/cmdline-opts/etag-save.d
index dc2484c..8efad90 100644
--- a/docs/cmdline-opts/etag-save.d
+++ b/docs/cmdline-opts/etag-save.d
@@ -4,6 +4,7 @@
 Protocols: HTTP
 Added: 7.68.0
 Category: http
+Example: --etag-save storetag.txt $URL
 ---
 This option saves an HTTP ETag to the specified file. An ETag is a
 caching related header, usually returned in a response.
diff --git a/docs/cmdline-opts/expect100-timeout.d b/docs/cmdline-opts/expect100-timeout.d
index 431a529..8855edd 100644
--- a/docs/cmdline-opts/expect100-timeout.d
+++ b/docs/cmdline-opts/expect100-timeout.d
@@ -5,6 +5,7 @@
 Added: 7.47.0
 See-also: connect-timeout
 Category: http
+Example: --expect100-timeout 2.5 -T file $URL
 ---
 Maximum time in seconds that you allow curl to wait for a 100-continue
 response when curl emits an Expects: 100-continue header in its request. By
diff --git a/docs/cmdline-opts/fail-early.d b/docs/cmdline-opts/fail-early.d
index 3fbe238..aad15c3 100644
--- a/docs/cmdline-opts/fail-early.d
+++ b/docs/cmdline-opts/fail-early.d
@@ -2,6 +2,7 @@
 Help: Fail on first transfer error, do not continue
 Added: 7.52.0
 Category: curl
+Example: --fail-early $URL https://two.example
 ---
 Fail and exit on the first detected transfer error.
 
diff --git a/docs/cmdline-opts/fail-with-body.d b/docs/cmdline-opts/fail-with-body.d
index 13609ff..9b8c7db 100644
--- a/docs/cmdline-opts/fail-with-body.d
+++ b/docs/cmdline-opts/fail-with-body.d
@@ -4,8 +4,8 @@
 Category: http output
 Added: 7.76.0
 See-also: fail
+Example: --fail-with-body $URL
 ---
-
 Return an error on server errors where the HTTP response code is 400 or
 greater). In normal cases when an HTTP server fails to deliver a document, it
 returns an HTML document stating so (which often also describes why and
diff --git a/docs/cmdline-opts/fail.d b/docs/cmdline-opts/fail.d
index d4d65fb..47adafb 100644
--- a/docs/cmdline-opts/fail.d
+++ b/docs/cmdline-opts/fail.d
@@ -4,6 +4,8 @@
 Help: Fail silently (no output at all) on HTTP errors
 See-also: fail-with-body
 Category: important http
+Example: --fail $URL
+Added: 4.0
 ---
 Fail silently (no output at all) on server errors. This is mostly done to
 enable scripts etc to better deal with failed attempts. In normal cases
diff --git a/docs/cmdline-opts/false-start.d b/docs/cmdline-opts/false-start.d
index abeff0e..de36962 100644
--- a/docs/cmdline-opts/false-start.d
+++ b/docs/cmdline-opts/false-start.d
@@ -3,6 +3,7 @@
 Protocols: TLS
 Added: 7.42.0
 Category: tls
+Example: --false-start $URL
 ---
 Tells curl to use false start during the TLS handshake. False start is a mode
 where a TLS client will start sending application data before verifying the
diff --git a/docs/cmdline-opts/form-string.d b/docs/cmdline-opts/form-string.d
index 04d2578..4b5b0d6 100644
--- a/docs/cmdline-opts/form-string.d
+++ b/docs/cmdline-opts/form-string.d
@@ -4,6 +4,8 @@
 Arg: <name=string>
 See-also: form
 Category: http upload
+Example: --form-string "data" $URL
+Added: 7.13.2
 ---
 Similar to --form except that the value string for the named parameter is used
 literally. Leading \&'@' and \&'<' characters, and the \&';type=' string in
diff --git a/docs/cmdline-opts/form.d b/docs/cmdline-opts/form.d
index eec9aac..737d2b3 100644
--- a/docs/cmdline-opts/form.d
+++ b/docs/cmdline-opts/form.d
@@ -5,6 +5,8 @@
 Protocols: HTTP SMTP IMAP
 Mutexed: data head upload-file
 Category: http upload
+Example: --form "name=curl" --form "file=@loadthis" $URL
+Added: 5.0
 ---
 For HTTP protocol family, this lets curl emulate a filled-in form in which a
 user has pressed the submit button. This causes curl to POST data using the
diff --git a/docs/cmdline-opts/ftp-account.d b/docs/cmdline-opts/ftp-account.d
index bc04ba0..ce816f1 100644
--- a/docs/cmdline-opts/ftp-account.d
+++ b/docs/cmdline-opts/ftp-account.d
@@ -4,6 +4,7 @@
 Protocols: FTP
 Added: 7.13.0
 Category: ftp auth
+Example: --ftp-account "mr.robot" ftp://example.com/
 ---
 When an FTP server asks for "account data" after user name and password has
 been provided, this data is sent off using the ACCT command.
diff --git a/docs/cmdline-opts/ftp-alternative-to-user.d b/docs/cmdline-opts/ftp-alternative-to-user.d
index 1714849..a5fb985 100644
--- a/docs/cmdline-opts/ftp-alternative-to-user.d
+++ b/docs/cmdline-opts/ftp-alternative-to-user.d
@@ -4,6 +4,7 @@
 Protocols: FTP
 Added: 7.15.5
 Category: ftp
+Example: --ftp-alternative-to-user "U53r" ftp://example.com
 ---
 If authenticating with the USER and PASS commands fails, send this command.
 When connecting to Tumbleweed's Secure Transport server over FTPS using a
diff --git a/docs/cmdline-opts/ftp-create-dirs.d b/docs/cmdline-opts/ftp-create-dirs.d
index 5d9dfda..9b85950 100644
--- a/docs/cmdline-opts/ftp-create-dirs.d
+++ b/docs/cmdline-opts/ftp-create-dirs.d
@@ -3,7 +3,9 @@
 Help: Create the remote dirs if not present
 See-also: create-dirs
 Category: ftp sftp curl
+Example: --ftp-create-dirs -T file ftp://example.com/remote/path/file
+Added: 7.10.7
 ---
-When an FTP or SFTP URL/operation uses a path that doesn't currently exist on
+When an FTP or SFTP URL/operation uses a path that does not currently exist on
 the server, the standard behavior of curl is to fail. Using this option, curl
 will instead attempt to create missing directories.
diff --git a/docs/cmdline-opts/ftp-method.d b/docs/cmdline-opts/ftp-method.d
index 149340b..82ab481 100644
--- a/docs/cmdline-opts/ftp-method.d
+++ b/docs/cmdline-opts/ftp-method.d
@@ -4,13 +4,16 @@
 Protocols: FTP
 Added: 7.15.1
 Category: ftp
+Example: --ftp-method multicwd ftp://example.com/dir1/dir2/file
+Example: --ftp-method nocwd ftp://example.com/dir1/dir2/file
+Example: --ftp-method singlecwd ftp://example.com/dir1/dir2/file
 ---
 Control what method curl should use to reach a file on an FTP(S)
 server. The method argument should be one of the following alternatives:
 .RS
 .IP multicwd
 curl does a single CWD operation for each path part in the given URL. For deep
-hierarchies this means very many commands. This is how RFC 1738 says it should
+hierarchies this means many commands. This is how RFC 1738 says it should
 be done. This is the default but the slowest behavior.
 .IP nocwd
 curl does no CWD at all. curl will do SIZE, RETR, STOR etc and give a full
diff --git a/docs/cmdline-opts/ftp-pasv.d b/docs/cmdline-opts/ftp-pasv.d
index cbd548d..8c6c979 100644
--- a/docs/cmdline-opts/ftp-pasv.d
+++ b/docs/cmdline-opts/ftp-pasv.d
@@ -4,13 +4,14 @@
 Added: 7.11.0
 See-also: disable-epsv
 Category: ftp
+Example: --ftp-pasv ftp://example.com/
 ---
 Use passive mode for the data connection. Passive is the internal default
 behavior, but using this option can be used to override a previous --ftp-port
 option.
 
 If this option is used several times, only the first one is used. Undoing an
-enforced passive really isn't doable but you must then instead enforce the
+enforced passive really is not doable but you must then instead enforce the
 correct --ftp-port again.
 
 Passive mode means that curl will try the EPSV command first and then PASV,
diff --git a/docs/cmdline-opts/ftp-port.d b/docs/cmdline-opts/ftp-port.d
index 9bb1d43..cb6ab2a 100644
--- a/docs/cmdline-opts/ftp-port.d
+++ b/docs/cmdline-opts/ftp-port.d
@@ -5,6 +5,10 @@
 Protocols: FTP
 See-also: ftp-pasv disable-eprt
 Category: ftp
+Example: -P - ftp:/example.com
+Example: -P eth0 ftp:/example.com
+Example: -P 192.168.0.2 ftp:/example.com
+Added: 4.0
 ---
 Reverses the default initiator/listener roles when connecting with FTP. This
 option makes curl use active mode. curl then tells the server to connect back
@@ -27,7 +31,8 @@
 use of PORT with --ftp-pasv. Disable the attempt to use the EPRT command
 instead of PORT by using --disable-eprt. EPRT is really PORT++.
 
-Since 7.19.5, you can append \&":[start]-[end]\&" to the right of the address,
-to tell curl what TCP port range to use. That means you specify a port range,
-from a lower to a higher number. A single number works as well, but do note
-that it increases the risk of failure since the port may not be available.
+You can also append \&":[start]-[end]\&" to the right of the address, to tell
+curl what TCP port range to use. That means you specify a port range, from a
+lower to a higher number. A single number works as well, but do note that it
+increases the risk of failure since the port may not be available.
+(Added in 7.19.5)
diff --git a/docs/cmdline-opts/ftp-pret.d b/docs/cmdline-opts/ftp-pret.d
index e9c7d25..453d8cf 100644
--- a/docs/cmdline-opts/ftp-pret.d
+++ b/docs/cmdline-opts/ftp-pret.d
@@ -3,6 +3,7 @@
 Protocols: FTP
 Added: 7.20.0
 Category: ftp
+Example: --ftp-pret ftp://example.com/
 ---
 Tell curl to send a PRET command before PASV (and EPSV). Certain FTP servers,
 mainly drftpd, require this non-standard command for directory listings as
diff --git a/docs/cmdline-opts/ftp-skip-pasv-ip.d b/docs/cmdline-opts/ftp-skip-pasv-ip.d
index bcf4e7e..36f9e6d 100644
--- a/docs/cmdline-opts/ftp-skip-pasv-ip.d
+++ b/docs/cmdline-opts/ftp-skip-pasv-ip.d
@@ -4,6 +4,7 @@
 Added: 7.14.2
 See-also: ftp-pasv
 Category: ftp
+Example: --ftp-skip-pasv-ip ftp://example.com/
 ---
 Tell curl to not use the IP address the server suggests in its response
 to curl's PASV command when curl connects the data connection. Instead curl
diff --git a/docs/cmdline-opts/ftp-ssl-ccc-mode.d b/docs/cmdline-opts/ftp-ssl-ccc-mode.d
index 6289e54..15ad1f5 100644
--- a/docs/cmdline-opts/ftp-ssl-ccc-mode.d
+++ b/docs/cmdline-opts/ftp-ssl-ccc-mode.d
@@ -5,6 +5,7 @@
 Added: 7.16.2
 See-also: ftp-ssl-ccc
 Category: ftp tls
+Example: --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/
 ---
 Sets the CCC mode. The passive mode will not initiate the shutdown, but
 instead wait for the server to do it, and will not reply to the shutdown from
diff --git a/docs/cmdline-opts/ftp-ssl-ccc.d b/docs/cmdline-opts/ftp-ssl-ccc.d
index 33cab43..bfaf431 100644
--- a/docs/cmdline-opts/ftp-ssl-ccc.d
+++ b/docs/cmdline-opts/ftp-ssl-ccc.d
@@ -4,6 +4,7 @@
 See-also: ssl ftp-ssl-ccc-mode
 Added: 7.16.1
 Category: ftp tls
+Example: --ftp-ssl-ccc ftps://example.com/
 ---
 Use CCC (Clear Command Channel) Shuts down the SSL/TLS layer after
 authenticating. The rest of the control channel communication will be
diff --git a/docs/cmdline-opts/ftp-ssl-control.d b/docs/cmdline-opts/ftp-ssl-control.d
index 5191353..c2dee31 100644
--- a/docs/cmdline-opts/ftp-ssl-control.d
+++ b/docs/cmdline-opts/ftp-ssl-control.d
@@ -3,7 +3,8 @@
 Protocols: FTP
 Added: 7.16.0
 Category: ftp tls
+Example: --ftp-ssl-control ftp://example.com
 ---
 Require SSL/TLS for the FTP login, clear for transfer.  Allows secure
 authentication, but non-encrypted data transfers for efficiency.  Fails the
-transfer if the server doesn't support SSL/TLS.
+transfer if the server does not support SSL/TLS.
diff --git a/docs/cmdline-opts/gen.pl b/docs/cmdline-opts/gen.pl
index e651f02..e891f67 100755
--- a/docs/cmdline-opts/gen.pl
+++ b/docs/cmdline-opts/gen.pl
@@ -45,6 +45,20 @@
 my %protolong;
 my %catlong;
 
+use POSIX qw(strftime);
+my $date = strftime "%B %d %Y", localtime;
+my $year = strftime "%Y", localtime;
+my $version = "unknown";
+
+open(INC, "<../../include/curl/curlver.h");
+while(<INC>) {
+    if($_ =~ /^#define LIBCURL_VERSION \"([0-9.]*)/) {
+        $version = $1;
+        last;
+    }
+}
+close(INC);
+
 # get the long name version, return the man page string
 sub manpageify {
     my ($k)=@_;
@@ -63,6 +77,12 @@
 sub printdesc {
     my @desc = @_;
     for my $d (@desc) {
+        if($d =~ /\(Added in ([0-9.]+)\)/i) {
+            my $ver = $1;
+            if(too_old($ver)) {
+                $d =~ s/ *\(Added in $ver\)//gi;
+            }
+        }
         if($d !~ /^.\\"/) {
             # **bold**
             $d =~ s/\*\*([^ ]*)\*\*/\\fB$1\\fP/g;
@@ -79,6 +99,8 @@
         # quote "bare" minuses in the output
         $d =~ s/( |\\fI|^)--/$1\\-\\-/g;
         $d =~ s/([ -]|\\fI|^)-/$1\\-/g;
+        # handle single quotes first on the line
+        $d =~ s/(\s*)\'/$1\\(aq/;
         print $d;
     }
 }
@@ -114,8 +136,29 @@
     }
 }
 
+sub too_old {
+    my ($version)=@_;
+    my $a = 999999;
+    if($version =~ /^(\d+)\.(\d+)\.(\d+)/) {
+        $a = $1 * 1000 + $2 * 10 + $3;
+    }
+    elsif($version =~ /^(\d+)\.(\d+)/) {
+        $a = $1 * 1000 + $2 * 10;
+    }
+    if($a < 7300) {
+        # we consider everything before 7.30.0 to be too old to mention
+        # specific changes for
+        return 1;
+    }
+    return 0;
+}
+
 sub added {
     my ($standalone, $data)=@_;
+    if(too_old($data)) {
+        # don't mention ancient additions
+        return "";
+    }
     if($standalone) {
         return ".SH \"ADDED\"\nAdded in curl version $data\n";
     }
@@ -138,8 +181,11 @@
     my $requires;
     my $category;
     my $seealso;
+    my @examples; # there can be more than one
     my $magic; # cmdline special option
+    my $line;
     while(<F>) {
+        $line++;
         if(/^Short: *(.)/i) {
             $short=$1;
         }
@@ -173,6 +219,9 @@
         elsif(/^Category: *(.*)/i) {
             $category=$1;
         }
+        elsif(/^Example: *(.*)/i) {
+            push @examples, $1;
+        }
         elsif(/^Help: *(.*)/i) {
             ;
         }
@@ -185,6 +234,14 @@
                 print STDERR "ERROR: no 'Category:' in $f\n";
                 exit 2;
             }
+            if(!$examples[0]) {
+                print STDERR "$f:$line:1:ERROR: no 'Example:' present\n";
+                exit 2;
+            }
+            if(!$added) {
+                print STDERR "$f:$line:1:ERROR: no 'Added:' version present\n";
+                exit 2;
+            }
             last;
         }
         else {
@@ -276,6 +333,16 @@
         }
         push @foot, overrides($standalone, "This option overrides $mstr. ");
     }
+    if($examples[0]) {
+        my $s ="";
+        $s="s" if($examples[1]);
+        print "\nExample$s:\n.nf\n";
+        foreach my $e (@examples) {
+            $e =~ s!\$URL!https://example.com!g;
+            print " curl $e\n";
+        }
+        print ".fi\n";
+    }
     if($added) {
         push @foot, added($standalone, $added);
     }
@@ -345,6 +412,8 @@
     open(F, "<:crlf", "$f");
     my @d;
     while(<F>) {
+        s/%DATE/$date/g;
+        s/%VERSION/$version/g;
         push @d, $_;
     }
     close(F);
@@ -352,6 +421,42 @@
 }
 
 sub listhelp {
+    print <<HEAD
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \\| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \\___|\\___/|_| \\_\\_____|
+ *
+ * Copyright (C) 1998 - $year, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+#include "tool_help.h"
+
+/*
+ * DO NOT edit tool_listhelp.c manually.
+ * This source file is generated with the following command:
+
+  cd \$srcroot/docs/cmdline-opts
+  ./gen.pl listhelp *.d > \$srcroot/src/tool_listhelp.c
+ */
+
+const struct helptxt helptext[] = {
+HEAD
+        ;
     foreach my $f (sort keys %helplong) {
         my $long = $f;
         my $short = $optlong{$long};
@@ -389,6 +494,11 @@
         }
         print $line;
     }
+    print <<FOOT
+  { NULL, NULL, CURLHELP_HIDDEN }
+};
+FOOT
+        ;
 }
 
 sub listcats {
diff --git a/docs/cmdline-opts/get.d b/docs/cmdline-opts/get.d
index d529bb4..22a5522 100644
--- a/docs/cmdline-opts/get.d
+++ b/docs/cmdline-opts/get.d
@@ -2,6 +2,10 @@
 Short: G
 Help: Put the post data in the URL and use GET
 Category: http upload
+Example: --get $URL
+Example: --get -d "tool=curl" -d "age=old" $URL
+Example: --get -I -d "tool=curl" $URL
+Added: 7.8.1
 ---
 When used, this option will make all data specified with --data, --data-binary
 or --data-urlencode to be used in an HTTP GET request instead of the POST
@@ -12,5 +16,5 @@
 the URL with a HEAD request.
 
 If this option is used several times, only the first one is used. This is
-because undoing a GET doesn't make sense, but you should then instead enforce
+because undoing a GET does not make sense, but you should then instead enforce
 the alternative method you prefer.
diff --git a/docs/cmdline-opts/globoff.d b/docs/cmdline-opts/globoff.d
index 1db0fa2..642cb4b 100644
--- a/docs/cmdline-opts/globoff.d
+++ b/docs/cmdline-opts/globoff.d
@@ -2,6 +2,8 @@
 Short: g
 Help: Disable URL sequences and ranges using {} and []
 Category: curl
+Example: -g "https://example.com/{[]}}}}"
+Added: 7.6
 ---
 This option switches off the "URL globbing parser". When you set this option,
 you can specify URLs that contain the letters {}[] without having curl itself
diff --git a/docs/cmdline-opts/happy-eyeballs-timeout-ms.d b/docs/cmdline-opts/happy-eyeballs-timeout-ms.d
index ceff2a7..c3b2a51 100644
--- a/docs/cmdline-opts/happy-eyeballs-timeout-ms.d
+++ b/docs/cmdline-opts/happy-eyeballs-timeout-ms.d
@@ -3,12 +3,13 @@
 Help: Time for IPv6 before trying IPv4
 Added: 7.59.0
 Category: connection
+Example: --happy-eyeballs-timeout-ms 500 $URL
 ---
-Happy eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6
-addresses for dual-stack hosts, preferring IPv6 first for the number of
-milliseconds. If the IPv6 address cannot be connected to within that time then
-a connection attempt is made to the IPv4 address in parallel. The first
-connection to be established is the one that is used.
+Happy Eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6
+addresses for dual-stack hosts, giving IPv6 a head-start of the specified
+number of milliseconds. If the IPv6 address cannot be connected to within that
+time, then a connection attempt is made to the IPv4 address in parallel. The
+first connection to be established is the one that is used.
 
 The range of suggested useful values is limited. Happy Eyeballs RFC 6555 says
 "It is RECOMMENDED that connection attempts be paced 150-250 ms apart to
diff --git a/docs/cmdline-opts/haproxy-protocol.d b/docs/cmdline-opts/haproxy-protocol.d
index 8358204..446dc65 100644
--- a/docs/cmdline-opts/haproxy-protocol.d
+++ b/docs/cmdline-opts/haproxy-protocol.d
@@ -3,10 +3,11 @@
 Protocols: HTTP
 Added: 7.60.0
 Category: http proxy
+Example: --haproxy-protocol $URL
 ---
-Send a HAProxy PROXY protocol v1 header at the beginning of the connection. This
-is used by some load balancers and reverse proxies to indicate the client's
-true IP address and port.
+Send a HAProxy PROXY protocol v1 header at the beginning of the
+connection. This is used by some load balancers and reverse proxies to
+indicate the client's true IP address and port.
 
 This option is primarily useful when sending test requests to a service that
 expects this header.
diff --git a/docs/cmdline-opts/head.d b/docs/cmdline-opts/head.d
index 6fe4685..c8297c0 100644
--- a/docs/cmdline-opts/head.d
+++ b/docs/cmdline-opts/head.d
@@ -3,6 +3,8 @@
 Help: Show document info only
 Protocols: HTTP FTP FILE
 Category: http ftp file
+Example: -I $URL
+Added: 4.0
 ---
 Fetch the headers only! HTTP-servers feature the command HEAD which this uses
 to get nothing but the header of a document. When used on an FTP or FILE file,
diff --git a/docs/cmdline-opts/header.d b/docs/cmdline-opts/header.d
index 121285a..143f426 100644
--- a/docs/cmdline-opts/header.d
+++ b/docs/cmdline-opts/header.d
@@ -5,13 +5,17 @@
 Protocols: HTTP
 Category: http
 See-also: user-agent referer
+Example: -H "X-First-Name: Joe" $URL
+Example: -H "User-Agent: yes-please/2000" $URL
+Example: -H "Host:" $URL
+Added: 5.0
 ---
 Extra header to include in the request when sending HTTP to a server. You may
 specify any number of extra headers. Note that if you should add a custom
 header that has the same name as one of the internal ones curl would use, your
 externally set header will be used instead of the internal one. This allows
 you to make even trickier stuff than curl would normally do. You should not
-replace internally set headers without knowing perfectly well what you're
+replace internally set headers without knowing perfectly well what you are
 doing. Remove an internal header by giving a replacement without content on
 the right side of the colon, as in: -H \&"Host:". If you send the custom
 header with no-value then its header must be terminated with a semicolon, such
@@ -32,10 +36,6 @@
 Passing on a "Transfer-Encoding: chunked" header when doing a HTTP request
 with a request body, will make curl send the data using chunked encoding.
 
-Example:
-
- curl -H "X-First-Name: Joe" http://example.com/
-
 **WARNING**: headers set with this option will be set in all requests - even
 after redirects are followed, like when told with --location. This can lead to
 the header being sent to other hosts than the original host, so sensitive
diff --git a/docs/cmdline-opts/help.d b/docs/cmdline-opts/help.d
index b7c6823..1600b8b 100644
--- a/docs/cmdline-opts/help.d
+++ b/docs/cmdline-opts/help.d
@@ -3,6 +3,8 @@
 Short: h
 Help: Get help for commands
 Category: important curl
+Example: --help all
+Added: 4.0
 ---
 Usage help. This lists all commands of the <category>.
 If no arg was provided, curl will display the most important
diff --git a/docs/cmdline-opts/hostpubmd5.d b/docs/cmdline-opts/hostpubmd5.d
index c926ed8..833db95 100644
--- a/docs/cmdline-opts/hostpubmd5.d
+++ b/docs/cmdline-opts/hostpubmd5.d
@@ -4,6 +4,7 @@
 Protocols: SFTP SCP
 Added: 7.17.1
 Category: sftp scp
+Example: --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/
 ---
 Pass a string containing 32 hexadecimal digits. The string should
 be the 128 bit MD5 checksum of the remote host's public key, curl will refuse
diff --git a/docs/cmdline-opts/hostpubsha256.d b/docs/cmdline-opts/hostpubsha256.d
new file mode 100644
index 0000000..81e6f98
--- /dev/null
+++ b/docs/cmdline-opts/hostpubsha256.d
@@ -0,0 +1,11 @@
+Long: hostpubsha256
+Arg: <sha256>
+Help: Acceptable SHA256 hash of the host public key
+Protocols: SFTP SCP
+Added: 7.80.0
+Category: sftp scp
+Example: --hostpubsha256 NDVkMTQxMGQ1ODdmMjQ3MjczYjAyOTY5MmRkMjVmNDQ= sftp://example.com/
+---
+Pass a string containing a Base64-encoded SHA256 hash of the remote
+host's public key. Curl will refuse the connection with the host
+unless the hashes match.
diff --git a/docs/cmdline-opts/hsts.d b/docs/cmdline-opts/hsts.d
index 2399084..f9cd453 100644
--- a/docs/cmdline-opts/hsts.d
+++ b/docs/cmdline-opts/hsts.d
@@ -4,9 +4,8 @@
 Help: Enable HSTS with this cache file
 Added: 7.74.0
 Category: http
+Example: --hsts cache.txt $URL
 ---
-WARNING: this option is experimental. Do not use in production.
-
 This option enables HSTS for the transfer. If the file name points to an
 existing HSTS cache file, that will be used. After a completed transfer, the
 cache will be saved to the file name again if it has been modified.
diff --git a/docs/cmdline-opts/http0.9.d b/docs/cmdline-opts/http0.9.d
index 954c22a..03def27 100644
--- a/docs/cmdline-opts/http0.9.d
+++ b/docs/cmdline-opts/http0.9.d
@@ -1,9 +1,10 @@
 Long: http0.9
 Tags: Versions
 Protocols: HTTP
-Added:
 Help: Allow HTTP 0.9 responses
 Category: http
+Example: --http0.9 $URL
+Added: 7.64.0
 ---
 Tells curl to be fine with HTTP version 0.9 response.
 
diff --git a/docs/cmdline-opts/http1.0.d b/docs/cmdline-opts/http1.0.d
index a4059db..3060a13 100644
--- a/docs/cmdline-opts/http1.0.d
+++ b/docs/cmdline-opts/http1.0.d
@@ -2,10 +2,11 @@
 Long: http1.0
 Tags: Versions
 Protocols: HTTP
-Added:
+Added: 7.9.1
 Mutexed: http1.1 http2
 Help: Use HTTP 1.0
 Category: http
+Example: --http1.0 $URL
 ---
 Tells curl to use HTTP version 1.0 instead of using its internally preferred
 HTTP version.
diff --git a/docs/cmdline-opts/http1.1.d b/docs/cmdline-opts/http1.1.d
index a71a40b..01fa76d 100644
--- a/docs/cmdline-opts/http1.1.d
+++ b/docs/cmdline-opts/http1.1.d
@@ -5,5 +5,6 @@
 Mutexed: http1.0 http2
 Help: Use HTTP 1.1
 Category: http
+Example: --http1.1 $URL
 ---
 Tells curl to use HTTP version 1.1.
diff --git a/docs/cmdline-opts/http2-prior-knowledge.d b/docs/cmdline-opts/http2-prior-knowledge.d
index ea2906e..e3b32f6 100644
--- a/docs/cmdline-opts/http2-prior-knowledge.d
+++ b/docs/cmdline-opts/http2-prior-knowledge.d
@@ -6,6 +6,7 @@
 Requires: HTTP/2
 Help: Use HTTP 2 without HTTP/1.1 Upgrade
 Category: http
+Example: --http2-prior-knowledge $URL
 ---
 Tells curl to issue its non-TLS HTTP requests using HTTP/2 without HTTP/1.1
 Upgrade. It requires prior knowledge that the server supports HTTP/2 straight
diff --git a/docs/cmdline-opts/http2.d b/docs/cmdline-opts/http2.d
index 197515e..2a85db6 100644
--- a/docs/cmdline-opts/http2.d
+++ b/docs/cmdline-opts/http2.d
@@ -8,5 +8,12 @@
 Help: Use HTTP 2
 See-also: http1.1 http3
 Category: http
+Example: --http2 $URL
 ---
 Tells curl to use HTTP version 2.
+
+For HTTPS, this means curl will attempt to negotiate HTTP/2 in the TLS
+handshake. curl does this by default.
+
+For HTTP, this means curl will attempt to upgrade the request to HTTP/2 using
+the Upgrade: request header.
diff --git a/docs/cmdline-opts/http3.d b/docs/cmdline-opts/http3.d
index 8e3c301..f6c92b3 100644
--- a/docs/cmdline-opts/http3.d
+++ b/docs/cmdline-opts/http3.d
@@ -7,9 +7,9 @@
 Help: Use HTTP v3
 See-also: http1.1 http2
 Category: http
+Example: --http3 $URL
 ---
-
-WARNING: this option is experimental. Do not use in production.
+**WARNING**: this option is experimental. Do not use in production.
 
 Tells curl to use HTTP version 3 directly to the host and port number used in
 the URL. A normal HTTP/3 transaction will be done to a host and then get
diff --git a/docs/cmdline-opts/ignore-content-length.d b/docs/cmdline-opts/ignore-content-length.d
index cec990a..8badf4e 100644
--- a/docs/cmdline-opts/ignore-content-length.d
+++ b/docs/cmdline-opts/ignore-content-length.d
@@ -2,6 +2,8 @@
 Help: Ignore the size of the remote resource
 Protocols: FTP HTTP
 Category: http ftp
+Example: --ignore-content-length $URL
+Added: 7.14.1
 ---
 For HTTP, Ignore the Content-Length header. This is particularly useful for
 servers running Apache 1.x, which will report incorrect Content-Length for
@@ -10,4 +12,4 @@
 For FTP (since 7.46.0), skip the RETR command to figure out the size before
 downloading a file.
 
-This option doesn't work if libcurl was built to use hyper for HTTP.
+This option does not work for HTTP if libcurl was built to use hyper.
diff --git a/docs/cmdline-opts/include.d b/docs/cmdline-opts/include.d
index 250d4ac..85831f8 100644
--- a/docs/cmdline-opts/include.d
+++ b/docs/cmdline-opts/include.d
@@ -3,6 +3,8 @@
 Help: Include protocol response headers in the output
 See-also: verbose
 Category: important verbose
+Example: -i $URL
+Added: 4.8
 ---
 Include the HTTP response headers in the output. The HTTP response headers can
 include things like server name, cookies, date of the document, HTTP version
diff --git a/docs/cmdline-opts/insecure.d b/docs/cmdline-opts/insecure.d
index 636f121..5f39a33 100644
--- a/docs/cmdline-opts/insecure.d
+++ b/docs/cmdline-opts/insecure.d
@@ -4,8 +4,9 @@
 Protocols: TLS
 See-also: proxy-insecure cacert
 Category: tls
+Example: --insecure $URL
+Added: 7.10
 ---
-
 By default, every SSL connection curl makes is verified to be secure. This
 option allows curl to proceed and operate even for server connections
 otherwise considered insecure.
@@ -15,3 +16,5 @@
 
 See this online resource for further details:
  https://curl.se/docs/sslcerts.html
+
+**WARNING**: this makes the transfer insecure.
diff --git a/docs/cmdline-opts/interface.d b/docs/cmdline-opts/interface.d
index 196e7ef..fb21ea2 100644
--- a/docs/cmdline-opts/interface.d
+++ b/docs/cmdline-opts/interface.d
@@ -3,8 +3,9 @@
 Help: Use network INTERFACE (or address)
 See-also: dns-interface
 Category: connection
+Example: --interface eth0 $URL
+Added: 7.3
 ---
-
 Perform an operation using a specified interface. You can enter interface
 name, IP address or host name. An example could look like:
 
diff --git a/docs/cmdline-opts/ipv4.d b/docs/cmdline-opts/ipv4.d
index a669137..a5cae4e 100644
--- a/docs/cmdline-opts/ipv4.d
+++ b/docs/cmdline-opts/ipv4.d
@@ -2,12 +2,13 @@
 Long: ipv4
 Tags: Versions
 Protocols:
-Added:
+Added: 7.10.8
 Mutexed: ipv6
 Requires:
 See-also: http1.1 http2
 Help: Resolve names to IPv4 addresses
 Category: connection dns
+Example: --ipv4 $URL
 ---
 This option tells curl to resolve names to IPv4 addresses only, and not for
 example try IPv6.
diff --git a/docs/cmdline-opts/ipv6.d b/docs/cmdline-opts/ipv6.d
index ce0415c..869c668 100644
--- a/docs/cmdline-opts/ipv6.d
+++ b/docs/cmdline-opts/ipv6.d
@@ -2,12 +2,13 @@
 Long: ipv6
 Tags: Versions
 Protocols:
-Added:
+Added: 7.10.8
 Mutexed: ipv4
 Requires:
 See-also: http1.1 http2
 Help: Resolve names to IPv6 addresses
 Category: connection dns
+Example: --ipv6 $URL
 ---
 This option tells curl to resolve names to IPv6 addresses only, and not for
 example try IPv4.
diff --git a/docs/cmdline-opts/junk-session-cookies.d b/docs/cmdline-opts/junk-session-cookies.d
index 993b77f..cbc2692 100644
--- a/docs/cmdline-opts/junk-session-cookies.d
+++ b/docs/cmdline-opts/junk-session-cookies.d
@@ -4,8 +4,10 @@
 Protocols: HTTP
 See-also: cookie cookie-jar
 Category: http
+Example: --junk-session-cookies -b cookies.txt $URL
+Added: 7.9.7
 ---
 When curl is told to read cookies from a given file, this option will make it
 discard all "session cookies". This will basically have the same effect as if
 a new session is started. Typical browsers always discard session cookies when
-they're closed down.
+they are closed down.
diff --git a/docs/cmdline-opts/keepalive-time.d b/docs/cmdline-opts/keepalive-time.d
index 4126153..1b96c4d 100644
--- a/docs/cmdline-opts/keepalive-time.d
+++ b/docs/cmdline-opts/keepalive-time.d
@@ -3,6 +3,7 @@
 Help: Interval time for keepalive probes
 Added: 7.18.0
 Category: connection
+Example: --keepalive-time 20 $URL
 ---
 This option sets the time a connection needs to remain idle before sending
 keepalive probes and the time between individual keepalive probes. It is
diff --git a/docs/cmdline-opts/key-type.d b/docs/cmdline-opts/key-type.d
index 50a0686..6fbec77 100644
--- a/docs/cmdline-opts/key-type.d
+++ b/docs/cmdline-opts/key-type.d
@@ -3,6 +3,8 @@
 Help: Private key file type (DER/PEM/ENG)
 Protocols: TLS
 Category: tls
+Example: --key-type DER --key here $URL
+Added: 7.9.3
 ---
 Private key file type. Specify which type your --key provided private key
 is. DER, PEM, and ENG are supported. If not specified, PEM is assumed.
diff --git a/docs/cmdline-opts/key.d b/docs/cmdline-opts/key.d
index a762e6f..b8a3738 100644
--- a/docs/cmdline-opts/key.d
+++ b/docs/cmdline-opts/key.d
@@ -3,6 +3,8 @@
 Protocols: TLS SSH
 Help: Private key file name
 Category: tls ssh
+Example: --cert certificate --key here $URL
+Added: 7.9.3
 ---
 Private key file name. Allows you to provide your private key in this separate
 file. For SSH, if not specified, curl tries the following candidates in order:
diff --git a/docs/cmdline-opts/krb.d b/docs/cmdline-opts/krb.d
index 7759cfb..36a0847 100644
--- a/docs/cmdline-opts/krb.d
+++ b/docs/cmdline-opts/krb.d
@@ -4,6 +4,8 @@
 Protocols: FTP
 Requires: Kerberos
 Category: ftp
+Example: --krb clear ftp://example.com/
+Added: 7.3
 ---
 Enable Kerberos authentication and use. The level must be entered and should
 be one of 'clear', 'safe', 'confidential', or 'private'. Should you use a
diff --git a/docs/cmdline-opts/libcurl.d b/docs/cmdline-opts/libcurl.d
index 60921f5..b7371ff 100644
--- a/docs/cmdline-opts/libcurl.d
+++ b/docs/cmdline-opts/libcurl.d
@@ -3,10 +3,14 @@
 Help: Dump libcurl equivalent code of this command line
 Added: 7.16.1
 Category: curl
+Example: --libcurl client.c $URL
 ---
 Append this option to any ordinary curl command line, and you will get
 libcurl-using C source code written to the file that does the equivalent
 of what your command-line operation does!
 
+This option is global and does not need to be specified for each use of
+--next.
+
 If this option is used several times, the last given file name will be
 used.
diff --git a/docs/cmdline-opts/limit-rate.d b/docs/cmdline-opts/limit-rate.d
index cb3a860..6a46c00 100644
--- a/docs/cmdline-opts/limit-rate.d
+++ b/docs/cmdline-opts/limit-rate.d
@@ -2,15 +2,23 @@
 Arg: <speed>
 Help: Limit transfer speed to RATE
 Category: connection
+Example: --limit-rate 100K $URL
+Example: --limit-rate 1000 $URL
+Example: --limit-rate 10M $URL
+Added: 7.10
 ---
 Specify the maximum transfer rate you want curl to use - for both downloads
-and uploads. This feature is useful if you have a limited pipe and you'd like
+and uploads. This feature is useful if you have a limited pipe and you would like
 your transfer not to use your entire bandwidth. To make it slower than it
 otherwise would be.
 
 The given speed is measured in bytes/second, unless a suffix is appended.
 Appending 'k' or 'K' will count the number as kilobytes, 'm' or 'M' makes it
-megabytes, while 'g' or 'G' makes it gigabytes. Examples: 200K, 3m and 1G.
+megabytes, while 'g' or 'G' makes it gigabytes. The suffixes (k, M, G, T, P)
+are 1024 based. For example 1k is 1024. Examples: 200K, 3m and 1G.
+
+The rate limiting logic works on averaging the transfer speed to no more than
+the set threshold over a period of multiple seconds.
 
 If you also use the --speed-limit option, that option will take precedence and
 might cripple the rate-limiting slightly, to help keeping the speed-limit
diff --git a/docs/cmdline-opts/list-only.d b/docs/cmdline-opts/list-only.d
index ac39906..c7bf7b4 100644
--- a/docs/cmdline-opts/list-only.d
+++ b/docs/cmdline-opts/list-only.d
@@ -4,11 +4,12 @@
 Help: List only mode
 Added: 4.0
 Category: ftp pop3
+Example: --list-only ftp://example.com/dir/
 ---
 (FTP)
 When listing an FTP directory, this switch forces a name-only view. This is
 especially useful if the user wants to machine-parse the contents of an FTP
-directory since the normal directory view doesn't use a standard look or
+directory since the normal directory view does not use a standard look or
 format. When used like this, the option causes an NLST command to be sent to
 the server instead of LIST.
 
diff --git a/docs/cmdline-opts/local-port.d b/docs/cmdline-opts/local-port.d
index 3f7a0e0..7766417 100644
--- a/docs/cmdline-opts/local-port.d
+++ b/docs/cmdline-opts/local-port.d
@@ -3,6 +3,7 @@
 Help: Force use of RANGE for local port numbers
 Added: 7.15.2
 Category: connection
+Example: --local-port 1000-3000 $URL
 ---
 Set a preferred single number or range (FROM-TO) of local port numbers to use
 for the connection(s).  Note that port numbers by nature are a scarce resource
diff --git a/docs/cmdline-opts/location-trusted.d b/docs/cmdline-opts/location-trusted.d
index f01d842..0277aa7 100644
--- a/docs/cmdline-opts/location-trusted.d
+++ b/docs/cmdline-opts/location-trusted.d
@@ -3,8 +3,10 @@
 Protocols: HTTP
 See-also: user
 Category: http auth
+Example: --location-trusted -u user:password $URL
+Added: 7.10.4
 ---
 Like --location, but will allow sending the name + password to all hosts that
 the site may redirect to. This may or may not introduce a security breach if
-the site redirects you to a site to which you'll send your authentication info
-(which is plaintext in the case of HTTP Basic authentication).
+the site redirects you to a site to which you will send your authentication
+info (which is plaintext in the case of HTTP Basic authentication).
diff --git a/docs/cmdline-opts/location.d b/docs/cmdline-opts/location.d
index c70b2eb..941390a 100644
--- a/docs/cmdline-opts/location.d
+++ b/docs/cmdline-opts/location.d
@@ -3,18 +3,20 @@
 Help: Follow redirects
 Protocols: HTTP
 Category: http
+Example: -L $URL
+Added: 4.9
 ---
 If the server reports that the requested page has moved to a different
 location (indicated with a Location: header and a 3XX response code), this
 option will make curl redo the request on the new place. If used together with
 --include or --head, headers from all requested pages will be shown. When
 authentication is used, curl only sends its credentials to the initial
-host. If a redirect takes curl to a different host, it won't be able to
+host. If a redirect takes curl to a different host, it will not be able to
 intercept the user+password. See also --location-trusted on how to change
 this. You can limit the amount of redirects to follow by using the
 --max-redirs option.
 
-When curl follows a redirect and if the request is a POST, it will do the
+When curl follows a redirect and if the request is a POST, it will send the
 following request with a GET if the HTTP response was 301, 302, or 303. If the
 response code was any other 3xx code, curl will re-send the following request
 using the same unmodified method.
diff --git a/docs/cmdline-opts/login-options.d b/docs/cmdline-opts/login-options.d
index b122468..de77288 100644
--- a/docs/cmdline-opts/login-options.d
+++ b/docs/cmdline-opts/login-options.d
@@ -4,6 +4,7 @@
 Help: Server login options
 Added: 7.34.0
 Category: imap pop3 smtp auth
+Example: --login-options 'AUTH=*' imap://example.com
 ---
 Specify the login options to use during server authentication.
 
diff --git a/docs/cmdline-opts/mail-auth.d b/docs/cmdline-opts/mail-auth.d
index 5299971..49a02d5 100644
--- a/docs/cmdline-opts/mail-auth.d
+++ b/docs/cmdline-opts/mail-auth.d
@@ -5,6 +5,7 @@
 Added: 7.25.0
 See-also: mail-rcpt mail-from
 Category: smtp
+Example: --mail-auth user@example.come -T mail smtp://example.com/
 ---
 Specify a single address. This will be used to specify the authentication
 address (identity) of a submitted message that is being relayed to another
diff --git a/docs/cmdline-opts/mail-from.d b/docs/cmdline-opts/mail-from.d
index faf48e2..be0547c 100644
--- a/docs/cmdline-opts/mail-from.d
+++ b/docs/cmdline-opts/mail-from.d
@@ -5,5 +5,6 @@
 Added: 7.20.0
 See-also: mail-rcpt mail-auth
 Category: smtp
+Example: --mail-from user@example.com -T mail smtp://example.com/
 ---
 Specify a single address that the given mail should get sent from.
diff --git a/docs/cmdline-opts/mail-rcpt-allowfails.d b/docs/cmdline-opts/mail-rcpt-allowfails.d
index 76457c3..36d555e 100644
--- a/docs/cmdline-opts/mail-rcpt-allowfails.d
+++ b/docs/cmdline-opts/mail-rcpt-allowfails.d
@@ -3,6 +3,7 @@
 Protocols: SMTP
 Added: 7.69.0
 Category: smtp
+Example: --mail-rcpt-allowfails --mail-rcpt dest@example.com smtp://example.com
 ---
 When sending data to multiple recipients, by default curl will abort SMTP
 conversation if at least one of the recipients causes RCPT TO command to
@@ -12,5 +13,6 @@
 command-line option which will make curl ignore errors and proceed with the
 remaining valid recipients.
 
-In case when all recipients cause RCPT TO command to fail, curl will abort SMTP
-conversation and return the error received from to the last RCPT TO command.
\ No newline at end of file
+If all recipients trigger RCPT TO failures and this flag is specified, curl
+will still abort the SMTP conversation and return the error received from to
+the last RCPT TO command.
diff --git a/docs/cmdline-opts/mail-rcpt.d b/docs/cmdline-opts/mail-rcpt.d
index d8ae046..d4a2502 100644
--- a/docs/cmdline-opts/mail-rcpt.d
+++ b/docs/cmdline-opts/mail-rcpt.d
@@ -4,13 +4,11 @@
 Protocols: SMTP
 Added: 7.20.0
 Category: smtp
+Example: --mail-rcpt user@example.net smtp://example.com
 ---
-Specify a single address, user name or mailing list name. Repeat this
+Specify a single e-mail address, user name or mailing list name. Repeat this
 option several times to send to multiple recipients.
 
-When performing a mail transfer, the recipient should specify a valid email
-address to send the mail to.
-
 When performing an address verification (VRFY command), the recipient should be
 specified as the user name or user name and domain (as per Section 3.5 of
 RFC5321). (Added in 7.34.0)
diff --git a/docs/cmdline-opts/manual.d b/docs/cmdline-opts/manual.d
index 25ed08d..b4ebf3e 100644
--- a/docs/cmdline-opts/manual.d
+++ b/docs/cmdline-opts/manual.d
@@ -2,5 +2,7 @@
 Short: M
 Help: Display the full manual
 Category: curl
+Example: --manual
+Added: 5.2
 ---
 Manual. Display the huge help text.
diff --git a/docs/cmdline-opts/max-filesize.d b/docs/cmdline-opts/max-filesize.d
index 2f82998..9e3abca 100644
--- a/docs/cmdline-opts/max-filesize.d
+++ b/docs/cmdline-opts/max-filesize.d
@@ -1,8 +1,11 @@
 Long: max-filesize
 Arg: <bytes>
 Help: Maximum file size to download
+Protocols: FTP HTTP MQTT
 See-also: limit-rate
 Category: connection
+Example: --max-filesize 100K $URL
+Added: 7.10.8
 ---
 Specify the maximum size (in bytes) of a file to download. If the file
 requested is larger than this value, the transfer will not start and curl will
@@ -12,6 +15,6 @@
 number as kilobytes, 'm' or 'M' makes it megabytes, while 'g' or 'G' makes it
 gigabytes. Examples: 200K, 3m and 1G. (Added in 7.58.0)
 
-**NOTE**: For protocols where the size is not known in advance (including FTP
-and HTTP) this option has no effect even if the file transfer ends up being
-larger than the given limit.
+**NOTE**: The file size is not always known prior to download, and for such
+files this option has no effect even if the file transfer ends up being larger
+than this given limit.
\ No newline at end of file
diff --git a/docs/cmdline-opts/max-redirs.d b/docs/cmdline-opts/max-redirs.d
index 1b5de5b..bb04514 100644
--- a/docs/cmdline-opts/max-redirs.d
+++ b/docs/cmdline-opts/max-redirs.d
@@ -3,6 +3,8 @@
 Help: Maximum number of redirects allowed
 Protocols: HTTP
 Category: http
+Example: --max-redirs 3 --location $URL
+Added: 7.5
 ---
 Set maximum number of redirections to follow. When --location is used, to
 prevent curl from following too many redirects, by default, the limit is
diff --git a/docs/cmdline-opts/max-time.d b/docs/cmdline-opts/max-time.d
index c4e4ed7..7246f61 100644
--- a/docs/cmdline-opts/max-time.d
+++ b/docs/cmdline-opts/max-time.d
@@ -1,9 +1,12 @@
 Long: max-time
 Short: m
-Arg: <seconds>
-Help: Maximum time allowed for the transfer
+Arg: <fractional seconds>
+Help: Maximum time allowed for transfer
 See-also: connect-timeout
 Category: connection
+Example: --max-time 10 $URL
+Example: --max-time 2.92 $URL
+Added: 4.0
 ---
 Maximum time in seconds that you allow the whole operation to take.  This is
 useful for preventing your batch jobs from hanging for hours due to slow
diff --git a/docs/cmdline-opts/metalink.d b/docs/cmdline-opts/metalink.d
index 4725b38..1fc1087 100644
--- a/docs/cmdline-opts/metalink.d
+++ b/docs/cmdline-opts/metalink.d
@@ -2,6 +2,7 @@
 Help: Process given URLs as metalink XML file
 Added: 7.27.0
 Category: misc
+Example: --metalink file $URL
 ---
 This option was previously used to specify a metalink resource. Metalink
 support has been disabled in curl since 7.78.0 for security reasons.
diff --git a/docs/cmdline-opts/negotiate.d b/docs/cmdline-opts/negotiate.d
index e247bfb..69a0e6c 100644
--- a/docs/cmdline-opts/negotiate.d
+++ b/docs/cmdline-opts/negotiate.d
@@ -3,6 +3,8 @@
 Protocols: HTTP
 See-also: basic ntlm anyauth proxy-negotiate
 Category: auth http
+Example: --negotiate -u : $URL
+Added: 7.10.6
 ---
 Enables Negotiate (SPNEGO) authentication.
 
@@ -11,6 +13,6 @@
 
 When using this option, you must also provide a fake --user option to activate
 the authentication code properly. Sending a '-u :' is enough as the user name
-and password from the --user option aren't actually used.
+and password from the --user option are not actually used.
 
 If this option is used several times, only the first one is used.
diff --git a/docs/cmdline-opts/netrc-file.d b/docs/cmdline-opts/netrc-file.d
index 95fb265..df89d51 100644
--- a/docs/cmdline-opts/netrc-file.d
+++ b/docs/cmdline-opts/netrc-file.d
@@ -4,6 +4,7 @@
 Added: 7.21.5
 Mutexed: netrc
 Category: curl
+Example: --netrc-file netrc $URL
 ---
 This option is similar to --netrc, except that you provide the path (absolute
 or relative) to the netrc file that curl should use.  You can only specify one
diff --git a/docs/cmdline-opts/netrc-optional.d b/docs/cmdline-opts/netrc-optional.d
index e0b59d1..5f6fea6 100644
--- a/docs/cmdline-opts/netrc-optional.d
+++ b/docs/cmdline-opts/netrc-optional.d
@@ -3,6 +3,8 @@
 Mutexed: netrc
 See-also: netrc-file
 Category: curl
+Example: --netrc-optional $URL
+Added: 7.9.8
 ---
-Very similar to --netrc, but this option makes the .netrc usage **optional**
+Similar to --netrc, but this option makes the .netrc usage **optional**
 and not mandatory as the --netrc option does.
diff --git a/docs/cmdline-opts/netrc.d b/docs/cmdline-opts/netrc.d
index a31e2ed..8a366bd 100644
--- a/docs/cmdline-opts/netrc.d
+++ b/docs/cmdline-opts/netrc.d
@@ -2,17 +2,19 @@
 Short: n
 Help: Must read .netrc for user name and password
 Category: curl
+Example: --netrc $URL
+Added: 4.6
 ---
 Makes curl scan the *.netrc* (*_netrc* on Windows) file in the user's home
 directory for login name and password. This is typically used for FTP on
 Unix. If used with HTTP, curl will enable user authentication. See
 *netrc(5)* and *ftp(1)* for details on the file format. Curl will not
-complain if that file doesn't have the right permissions (it should be
+complain if that file does not have the right permissions (it should be
 neither world- nor group-readable). The environment variable "HOME" is used
 to find the home directory.
 
-A quick and very simple example of how to setup a *.netrc* to allow curl
-to FTP to the machine host.domain.com with user name \&'myself' and password
-\&'secret' should look similar to:
+A quick and simple example of how to setup a *.netrc* to allow curl to FTP to
+the machine host.domain.com with user name \&'myself' and password \&'secret'
+should look similar to:
 
 .B "machine host.domain.com login myself password secret"
diff --git a/docs/cmdline-opts/next.d b/docs/cmdline-opts/next.d
index 1adcc75..bcbad68 100644
--- a/docs/cmdline-opts/next.d
+++ b/docs/cmdline-opts/next.d
@@ -6,6 +6,8 @@
 Magic: divider
 Help: Make next URL use its separate set of options
 Category: curl
+Example: $URL --next -d postthis www2.example.com
+Example: -I $URL --next https://example.net/
 ---
 Tells curl to use a separate operation for the following URL and associated
 options. This allows you to send several URL requests, each with their own
@@ -18,4 +20,6 @@
 
 For example, you can do both a GET and a POST in a single command line:
 
+.nf
  curl www1.example.com --next -d postthis www2.example.com
+.fi
diff --git a/docs/cmdline-opts/no-alpn.d b/docs/cmdline-opts/no-alpn.d
index 8031b4f..bc62076 100644
--- a/docs/cmdline-opts/no-alpn.d
+++ b/docs/cmdline-opts/no-alpn.d
@@ -6,6 +6,7 @@
 Requires: TLS
 Help: Disable the ALPN TLS extension
 Category: tls http
+Example: --no-alpn $URL
 ---
 Disable the ALPN TLS extension. ALPN is enabled by default if libcurl was built
 with an SSL library that supports ALPN. ALPN is used by a libcurl that supports
diff --git a/docs/cmdline-opts/no-buffer.d b/docs/cmdline-opts/no-buffer.d
index 1079f47..fe19292 100644
--- a/docs/cmdline-opts/no-buffer.d
+++ b/docs/cmdline-opts/no-buffer.d
@@ -2,6 +2,8 @@
 Short: N
 Help: Disable buffering of the output stream
 Category: curl
+Example: --no-buffer $URL
+Added: 6.5
 ---
 Disables the buffering of the output stream. In normal work situations, curl
 will use a standard buffered output stream that will have the effect that it
diff --git a/docs/cmdline-opts/no-keepalive.d b/docs/cmdline-opts/no-keepalive.d
index 72f3bc9..e62f8d8 100644
--- a/docs/cmdline-opts/no-keepalive.d
+++ b/docs/cmdline-opts/no-keepalive.d
@@ -1,6 +1,8 @@
 Long: no-keepalive
 Help: Disable TCP keepalive on the connection
 Category: connection
+Example: --no-keepalive $URL
+Added: 7.18.0
 ---
 Disables the use of keepalive messages on the TCP connection. curl otherwise
 enables them by default.
diff --git a/docs/cmdline-opts/no-npn.d b/docs/cmdline-opts/no-npn.d
index 27e5974..7a9239d 100644
--- a/docs/cmdline-opts/no-npn.d
+++ b/docs/cmdline-opts/no-npn.d
@@ -7,6 +7,7 @@
 Requires: TLS
 Help: Disable the NPN TLS extension
 Category: tls http
+Example: --no-npn $URL
 ---
 Disable the NPN TLS extension. NPN is enabled by default if libcurl was built
 with an SSL library that supports NPN. NPN is used by a libcurl that supports
diff --git a/docs/cmdline-opts/no-progress-meter.d b/docs/cmdline-opts/no-progress-meter.d
index bf28d63..9c7413e 100644
--- a/docs/cmdline-opts/no-progress-meter.d
+++ b/docs/cmdline-opts/no-progress-meter.d
@@ -3,6 +3,7 @@
 See-also: verbose silent
 Added: 7.67.0
 Category: verbose
+Example: --no-progress-meter -o store $URL
 ---
 Option to switch off the progress meter output without muting or otherwise
 affecting warning and informational messages like --silent does.
diff --git a/docs/cmdline-opts/no-sessionid.d b/docs/cmdline-opts/no-sessionid.d
index 013ca4c..70a3221 100644
--- a/docs/cmdline-opts/no-sessionid.d
+++ b/docs/cmdline-opts/no-sessionid.d
@@ -3,6 +3,7 @@
 Protocols: TLS
 Added: 7.16.0
 Category: tls
+Example: --no-sessionid $URL
 ---
 Disable curl's use of SSL session-ID caching.  By default all transfers are
 done using the cache. Note that while nothing should ever get hurt by
diff --git a/docs/cmdline-opts/noproxy.d b/docs/cmdline-opts/noproxy.d
index c49e6d1..ee0978e 100644
--- a/docs/cmdline-opts/noproxy.d
+++ b/docs/cmdline-opts/noproxy.d
@@ -3,6 +3,7 @@
 Help: List of hosts which do not use proxy
 Added: 7.19.4
 Category: proxy
+Example: --noproxy "www.example" $URL
 ---
 Comma-separated list of hosts for which not to use a proxy, if one is
 specified. The only wildcard is a single * character, which matches all hosts,
diff --git a/docs/cmdline-opts/ntlm-wb.d b/docs/cmdline-opts/ntlm-wb.d
index 4a2f7e1..c8e72c3 100644
--- a/docs/cmdline-opts/ntlm-wb.d
+++ b/docs/cmdline-opts/ntlm-wb.d
@@ -3,6 +3,8 @@
 Protocols: HTTP
 See-also: ntlm proxy-ntlm
 Category: auth http
+Example: --ntlm-wb -u user:password $URL
+Added: 7.22.0
 ---
 Enables NTLM much in the style --ntlm does, but hand over the authentication
 to the separate binary ntlmauth application that is executed when needed.
diff --git a/docs/cmdline-opts/ntlm.d b/docs/cmdline-opts/ntlm.d
index c63c086..658218a 100644
--- a/docs/cmdline-opts/ntlm.d
+++ b/docs/cmdline-opts/ntlm.d
@@ -5,6 +5,8 @@
 Protocols: HTTP
 Requires: TLS
 Category: auth http
+Example: --ntlm -u user:password $URL
+Added: 7.10.6
 ---
 Enables NTLM authentication. The NTLM authentication method was designed by
 Microsoft and is used by IIS web servers. It is a proprietary protocol,
diff --git a/docs/cmdline-opts/oauth2-bearer.d b/docs/cmdline-opts/oauth2-bearer.d
index e0ea210..4969162 100644
--- a/docs/cmdline-opts/oauth2-bearer.d
+++ b/docs/cmdline-opts/oauth2-bearer.d
@@ -3,6 +3,8 @@
 Arg: <token>
 Protocols: IMAP POP3 SMTP HTTP
 Category: auth
+Example: --oauth2-bearer "mF_9.B5f-4.1JqM" $URL
+Added: 7.33.0
 ---
 Specify the Bearer Token for OAUTH 2.0 server authentication. The Bearer Token
 is used in conjunction with the user name which can be specified as part of
diff --git a/docs/cmdline-opts/output-dir.d b/docs/cmdline-opts/output-dir.d
index d2ff773..230ebee 100644
--- a/docs/cmdline-opts/output-dir.d
+++ b/docs/cmdline-opts/output-dir.d
@@ -4,6 +4,7 @@
 Added: 7.73.0
 See-also: remote-name remote-header-name
 Category: curl
+Example: --output-dir "tmp" -O $URL
 ---
 
 This option specifies the directory in which files should be stored, when
@@ -12,7 +13,7 @@
 The given output directory is used for all URLs and output options on the
 command line, up until the first --next.
 
-If the specified target directory doesn't exist, the operation will fail
+If the specified target directory does not exist, the operation will fail
 unless --create-dirs is also used.
 
 If this option is used multiple times, the last specified directory will be
diff --git a/docs/cmdline-opts/output.d b/docs/cmdline-opts/output.d
index bf35bf4..15ddd52 100644
--- a/docs/cmdline-opts/output.d
+++ b/docs/cmdline-opts/output.d
@@ -4,6 +4,11 @@
 Help: Write to file instead of stdout
 See-also: remote-name remote-name-all remote-header-name
 Category: important curl
+Example: -o file $URL
+Example: "http://{one,two}.example.com" -o "file_#1.txt"
+Example: "http://{site,host}.host[1-5].com" -o "#1_#2"
+Example: -o file $URL -o file2 https://example.net
+Added: 4.0
 ---
 Write output to <file> instead of stdout. If you are using {} or [] to fetch
 multiple documents, you should quote the URL and you can use '#' followed by a
@@ -22,7 +27,7 @@
 
   curl -o aa example.com -o bb example.net
 
-and the order of the -o options and the URLs doesn't matter, just that the
+and the order of the -o options and the URLs does not matter, just that the
 first -o is for the first URL and so on, so the above command line can also be
 written as
 
@@ -31,3 +36,11 @@
 See also the --create-dirs option to create the local directories
 dynamically. Specifying the output as '-' (a single dash) will force the
 output to be done to stdout.
+
+To suppress response bodies, you can redirect output to /dev/null:
+
+  curl example.com -o /dev/null
+
+Or for Windows use nul:
+
+  curl example.com -o nul
diff --git a/docs/cmdline-opts/page-footer b/docs/cmdline-opts/page-footer
index c88cd5f..a0ce018 100644
--- a/docs/cmdline-opts/page-footer
+++ b/docs/cmdline-opts/page-footer
@@ -21,7 +21,7 @@
 .IP "ALL_PROXY [protocol://]<host>[:port]"
 Sets the proxy server to use if no protocol-specific proxy is set.
 .IP "NO_PROXY <comma-separated list of hosts/domains>"
-list of host names that shouldn't go through any proxy. If set to an asterisk
+list of host names that should not go through any proxy. If set to an asterisk
 \&'*' only, it matches all hosts. Each name in this list is matched as either
 a domain name which contains the hostname, or the hostname itself.
 
@@ -38,13 +38,13 @@
 versions should then be given without enclosing brackets.
 
 IPv6 numerical addresses are compared as strings, so they will only match if
-the representations are the same: "::1" is the same as "::0:1" but they don't
+the representations are the same: "::1" is the same as "::0:1" but they do not
 match.
 .IP "CURL_SSL_BACKEND <TLS backend>"
 If curl was built with support for "MultiSSL", meaning that it has built-in
 support for more than one TLS backend, this environment variable can be set to
 the case insensitive name of the particular backend to use when curl is
-invoked. Setting a name that isn't a built-in alternative will make curl
+invoked. Setting a name that is not a built-in alternative will make curl
 stay with the default.
 
 SSL backend names (case-insensitive): bearssl, gnutls, gskit, mbedtls,
@@ -61,10 +61,10 @@
 Wireshark. This works with the following TLS backends: OpenSSL, libressl,
 BoringSSL, GnuTLS, NSS and wolfSSL.
 .SH "PROXY PROTOCOL PREFIXES"
-Since curl version 7.21.7, the proxy string may be specified with a
-protocol:// prefix to specify alternative proxy protocols.
+The proxy string may be specified with a protocol:// prefix to specify
+alternative proxy protocols. (Added in 7.21.7)
 
-If no protocol is specified in the proxy string or if the string doesn't match
+If no protocol is specified in the proxy string or if the string does not match
 a supported one, the proxy will be treated as an HTTP proxy.
 
 The supported proxy protocol prefixes are as follows:
@@ -95,42 +95,42 @@
 enabled or was explicitly disabled at build-time. To make curl able to do
 this, you probably need another build of libcurl!
 .IP 5
-Couldn't resolve proxy. The given proxy host could not be resolved.
+Could not resolve proxy. The given proxy host could not be resolved.
 .IP 6
-Couldn't resolve host. The given remote host could not be resolved.
+Could not resolve host. The given remote host could not be resolved.
 .IP 7
 Failed to connect to host.
 .IP 8
-Weird server reply. The server sent data curl couldn't parse.
+Weird server reply. The server sent data curl could not parse.
 .IP 9
 FTP access denied. The server denied login or denied access to the particular
 resource or directory you wanted to reach. Most often you tried to change to a
-directory that doesn't exist on the server.
+directory that does not exist on the server.
 .IP 10
 FTP accept failed. While waiting for the server to connect back when an active
 FTP session is used, an error code was sent over the control connection or
 similar.
 .IP 11
-FTP weird PASS reply. Curl couldn't parse the reply sent to the PASS request.
+FTP weird PASS reply. Curl could not parse the reply sent to the PASS request.
 .IP 12
 During an active FTP session while waiting for the server to connect back to
 curl, the timeout expired.
 .IP 13
-FTP weird PASV reply, Curl couldn't parse the reply sent to the PASV request.
+FTP weird PASV reply, Curl could not parse the reply sent to the PASV request.
 .IP 14
-FTP weird 227 format. Curl couldn't parse the 227-line the server sent.
+FTP weird 227 format. Curl could not parse the 227-line the server sent.
 .IP 15
-FTP can't get host. Couldn't resolve the host IP we got in the 227-line.
+FTP cannot use host. Could not resolve the host IP we got in the 227-line.
 .IP 16
 HTTP/2 error. A problem was detected in the HTTP2 framing layer. This is
 somewhat generic and can be one out of several problems, see the error message
 for details.
 .IP 17
-FTP couldn't set binary. Couldn't change transfer method to binary.
+FTP could not set binary. Could not change transfer method to binary.
 .IP 18
 Partial file. Only a part of the file was transferred.
 .IP 19
-FTP couldn't download/access the given file, the RETR (or similar) command
+FTP could not download/access the given file, the RETR (or similar) command
 failed.
 .IP 21
 FTP quote error. A quote command returned error from the server.
@@ -139,9 +139,9 @@
 error with the HTTP error code being 400 or above. This return code only
 appears if --fail is used.
 .IP 23
-Write error. Curl couldn't write data to a local filesystem or similar.
+Write error. Curl could not write data to a local filesystem or similar.
 .IP 25
-FTP couldn't STOR file. The server denied the STOR operation, used for FTP
+FTP could not STOR file. The server denied the STOR operation, used for FTP
 uploading.
 .IP 26
 Read error. Various reading problems.
@@ -154,18 +154,18 @@
 FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT
 command, try doing a transfer using PASV instead!
 .IP 31
-FTP couldn't use REST. The REST command failed. This command is used for
+FTP could not use REST. The REST command failed. This command is used for
 resumed FTP transfers.
 .IP 33
-HTTP range error. The range "command" didn't work.
+HTTP range error. The range "command" did not work.
 .IP 34
 HTTP post error. Internal post-request generation error.
 .IP 35
 SSL connect error. The SSL handshaking failed.
 .IP 36
-Bad download resume. Couldn't continue an earlier aborted download.
+Bad download resume. Could not continue an earlier aborted download.
 .IP 37
-FILE couldn't read file. Failed to open the file. Permissions?
+FILE could not read file. Failed to open the file. Permissions?
 .IP 38
 LDAP cannot bind. LDAP bind operation failed.
 .IP 39
@@ -189,7 +189,7 @@
 .IP 51
 The peer's SSL certificate or SSH MD5 fingerprint was not OK.
 .IP 52
-The server didn't reply anything, which here is considered an error.
+The server did not reply anything, which here is considered an error.
 .IP 53
 SSL crypto engine not found.
 .IP 54
@@ -201,7 +201,7 @@
 .IP 58
 Problem with the local certificate.
 .IP 59
-Couldn't use specified SSL cipher.
+Could not use specified SSL cipher.
 .IP 60
 Peer certificate cannot be authenticated with known CA certificates.
 .IP 61
diff --git a/docs/cmdline-opts/page-header b/docs/cmdline-opts/page-header
index f96ed65..db57930 100644
--- a/docs/cmdline-opts/page-header
+++ b/docs/cmdline-opts/page-header
@@ -22,17 +22,16 @@
 .\"
 .\" DO NOT EDIT. Generated by the curl project gen.pl man page generator.
 .\"
-.TH curl 1 "16 Dec 2016" "Curl 7.52.0" "Curl Manual"
+.TH curl 1 "%DATE" "curl %VERSION" "curl Manual"
 .SH NAME
 curl \- transfer a URL
 .SH SYNOPSIS
 .B curl [options / URLs]
 .SH DESCRIPTION
-.B curl
-is a tool to transfer data from or to a server, using one of the supported
-protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP,
-LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP,
-SMTPS, TELNET or TFTP). The command is designed to work without user
+**curl** is a tool for transferring data from or to a server. It supports these
+protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS,
+LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP,
+SMTPS, TELNET or TFTP. The command is designed to work without user
 interaction.
 
 curl offers a busload of useful tricks like proxy support, user
@@ -43,7 +42,7 @@
 curl is powered by libcurl for all transfer-related features. See
 *libcurl(3)* for details.
 .SH URL
-The URL syntax is protocol-dependent. You'll find a detailed description in
+The URL syntax is protocol-dependent. You find a detailed description in
 RFC 3986.
 
 You can specify multiple URLs or parts of URLs by writing part sets within
@@ -120,7 +119,7 @@
 .IP FTP(S)
 curl supports the File Transfer Protocol with a lot of tweaks and levers. With
 or without using TLS.
-.IP GOPHER
+.IP GOPHER(S)
 Retrieve files.
 .IP HTTP(S)
 curl supports HTTP with numerous options and variations. It can speak HTTP
@@ -133,8 +132,8 @@
 curl can do directory lookups for you, with or without TLS.
 .IP MQTT
 curl supports MQTT version 3. Downloading over MQTT equals "subscribe" to a
-topic while uploading/posting equals "publish" on a topic. MQTT support is
-experimental and TLS based MQTT is not supported (yet).
+topic while uploading/posting equals "publish" on a topic. MQTT over TLS is
+not supported (yet).
 .IP POP3(S)
 Downloading from a pop3 server means getting a mail. With or without using
 TLS.
@@ -188,13 +187,11 @@
 separator. The long "double-dash" form, --data for example, requires a space
 between it and its value.
 
-Short version options that don't need any additional values can be used
+Short version options that do not need any additional values can be used
 immediately next to each other, like for example you can specify all the
 options -O, -L and -v at once as -OLv.
 
 In general, all boolean options are enabled with --**option** and yet again
 disabled with --**no-**option. That is, you use the exact same option name
 but prefix it with "no-". However, in this list we mostly only list and show
-the --option version of them. (This concept with --no options was added in
-7.19.0. Previously most options were toggled on/off through repeated use of
-the same command line option.)
+the --option version of them.
diff --git a/docs/cmdline-opts/parallel-immediate.d b/docs/cmdline-opts/parallel-immediate.d
index 95c8afc..4f7468d 100644
--- a/docs/cmdline-opts/parallel-immediate.d
+++ b/docs/cmdline-opts/parallel-immediate.d
@@ -3,8 +3,12 @@
 Added: 7.68.0
 See-also: parallel parallel-max
 Category: connection curl
+Example: --parallel-immediate -Z $URL -o file1 $URL -o file2
 ---
 When doing parallel transfers, this option will instruct curl that it should
 rather prefer opening up more connections in parallel at once rather than
 waiting to see if new transfers can be added as multiplexed streams on another
 connection.
+
+This option is global and does not need to be specified for each use of
+--next.
diff --git a/docs/cmdline-opts/parallel-max.d b/docs/cmdline-opts/parallel-max.d
index c265b72..1f22fcb 100644
--- a/docs/cmdline-opts/parallel-max.d
+++ b/docs/cmdline-opts/parallel-max.d
@@ -4,8 +4,12 @@
 Added: 7.66.0
 See-also: parallel
 Category: connection curl
+Example: --parallel-max 100 -Z $URL ftp://example.com/
 ---
 When asked to do parallel transfers, using --parallel, this option controls
 the maximum amount of transfers to do simultaneously.
 
+This option is global and does not need to be specified for each use of
+--next.
+
 The default is 50.
diff --git a/docs/cmdline-opts/parallel.d b/docs/cmdline-opts/parallel.d
index d6b4aff..2a0ca43 100644
--- a/docs/cmdline-opts/parallel.d
+++ b/docs/cmdline-opts/parallel.d
@@ -3,6 +3,10 @@
 Help: Perform transfers in parallel
 Added: 7.66.0
 Category: connection curl
+Example: --parallel $URL -o file1 $URL -o file2
 ---
 Makes curl perform its transfers in parallel as compared to the regular serial
 manner.
+
+This option is global and does not need to be specified for each use of
+--next.
diff --git a/docs/cmdline-opts/pass.d b/docs/cmdline-opts/pass.d
index e3fb97a..3c85c5e 100644
--- a/docs/cmdline-opts/pass.d
+++ b/docs/cmdline-opts/pass.d
@@ -3,6 +3,8 @@
 Help: Pass phrase for the private key
 Protocols: SSH TLS
 Category: ssh tls auth
+Example: --pass secret --key file $URL
+Added: 7.9.3
 ---
 Passphrase for the private key.
 
diff --git a/docs/cmdline-opts/path-as-is.d b/docs/cmdline-opts/path-as-is.d
index 0bfaf66..fb87def 100644
--- a/docs/cmdline-opts/path-as-is.d
+++ b/docs/cmdline-opts/path-as-is.d
@@ -2,6 +2,7 @@
 Help: Do not squash .. sequences in URL path
 Added: 7.42.0
 Category: curl
+Example: --path-as-is https://example.com/../../etc/passwd
 ---
 Tell curl to not handle sequences of /../ or /./ in the given URL
 path. Normally curl will squash or merge them according to standards but with
diff --git a/docs/cmdline-opts/pinnedpubkey.d b/docs/cmdline-opts/pinnedpubkey.d
index 4e0ed5e..7985cb2 100644
--- a/docs/cmdline-opts/pinnedpubkey.d
+++ b/docs/cmdline-opts/pinnedpubkey.d
@@ -3,11 +3,14 @@
 Help: FILE/HASHES Public key to verify peer against
 Protocols: TLS
 Category: tls
+Example: --pinnedpubkey keyfile $URL
+Example: --pinnedpubkey 'sha256//ce118b51897f4452dc' $URL
+Added: 7.39.0
 ---
 Tells curl to use the specified public key file (or hashes) to verify the
 peer. This can be a path to a file which contains a single public key in PEM
 or DER format, or any number of base64 encoded sha256 hashes preceded by
-\'sha256//\' and separated by \';\'
+'sha256//' and separated by ';'.
 
 When negotiating a TLS or SSL connection, the server sends a certificate
 indicating its identity. A public key is extracted from this certificate and
diff --git a/docs/cmdline-opts/post301.d b/docs/cmdline-opts/post301.d
index 64ead05..744ef58 100644
--- a/docs/cmdline-opts/post301.d
+++ b/docs/cmdline-opts/post301.d
@@ -4,6 +4,7 @@
 See-also: post302 post303 location
 Added: 7.17.1
 Category: http post
+Example: --post301 --location -d "data" $URL
 ---
 Tells curl to respect RFC 7231/6.4.2 and not convert POST requests into GET
 requests when following a 301 redirection. The non-RFC behavior is ubiquitous
diff --git a/docs/cmdline-opts/post302.d b/docs/cmdline-opts/post302.d
index d73cb9d..2c6d4b6 100644
--- a/docs/cmdline-opts/post302.d
+++ b/docs/cmdline-opts/post302.d
@@ -4,6 +4,7 @@
 See-also: post301 post303 location
 Added: 7.19.1
 Category: http post
+Example: --post302 --location -d "data" $URL
 ---
 Tells curl to respect RFC 7231/6.4.3 and not convert POST requests into GET
 requests when following a 302 redirection. The non-RFC behavior is ubiquitous
diff --git a/docs/cmdline-opts/post303.d b/docs/cmdline-opts/post303.d
index 1a67e13..a2fec18 100644
--- a/docs/cmdline-opts/post303.d
+++ b/docs/cmdline-opts/post303.d
@@ -4,6 +4,7 @@
 See-also: post302 post301 location
 Added: 7.26.0
 Category: http post
+Example: --post303 --location -d "data" $URL
 ---
 Tells curl to violate RFC 7231/6.4.4 and not convert POST requests into GET
 requests when following 303 redirections. A server may require a POST to
diff --git a/docs/cmdline-opts/preproxy.d b/docs/cmdline-opts/preproxy.d
index a917c16..c91565c 100644
--- a/docs/cmdline-opts/preproxy.d
+++ b/docs/cmdline-opts/preproxy.d
@@ -3,6 +3,7 @@
 Help: Use this proxy first
 Added: 7.52.0
 Category: proxy
+Example: --preproxy socks5://proxy.example -x http://http.example $URL
 ---
 Use the specified SOCKS proxy before connecting to an HTTP or HTTPS --proxy. In
 such a case curl first connects to the SOCKS proxy and then connects (through
diff --git a/docs/cmdline-opts/progress-bar.d b/docs/cmdline-opts/progress-bar.d
index 299d538..f00be88 100644
--- a/docs/cmdline-opts/progress-bar.d
+++ b/docs/cmdline-opts/progress-bar.d
@@ -2,6 +2,8 @@
 Long: progress-bar
 Help: Display transfer progress as a bar
 Category: verbose
+Example: -# -O $URL
+Added: 5.10
 ---
 Make curl display transfer progress as a simple progress bar instead of the
 standard, more informational, meter.
@@ -11,3 +13,6 @@
 known size, there will be space ship (-=o=-) that moves back and forth but
 only while data is being transferred, with a set of flying hash sign symbols on
 top.
+
+This option is global and does not need to be specified for each use of
+--next.
diff --git a/docs/cmdline-opts/proto-default.d b/docs/cmdline-opts/proto-default.d
index 74d3932..a659b84 100644
--- a/docs/cmdline-opts/proto-default.d
+++ b/docs/cmdline-opts/proto-default.d
@@ -3,17 +3,14 @@
 Arg: <protocol>
 Added: 7.45.0
 Category: connection curl
+Example: --proto-default https ftp.example.com
 ---
 Tells curl to use *protocol* for any URL missing a scheme name.
 
-Example:
-
- curl --proto-default https ftp.mozilla.org
-
 An unknown or unsupported protocol causes error
 *CURLE_UNSUPPORTED_PROTOCOL* (1).
 
 This option does not change the default proxy protocol (http).
 
-Without this option curl would make a guess based on the host, see --url for
-details.
+Without this option set, curl guesses protocol based on the host name, see
+--url for details.
diff --git a/docs/cmdline-opts/proto-redir.d b/docs/cmdline-opts/proto-redir.d
index 10580ad..73a27d0 100644
--- a/docs/cmdline-opts/proto-redir.d
+++ b/docs/cmdline-opts/proto-redir.d
@@ -3,6 +3,7 @@
 Help: Enable/disable PROTOCOLS on redirect
 Added: 7.20.2
 Category: connection curl
+Example: --proto-redir =http,https $URL
 ---
 Tells curl to limit what protocols it may use on redirect. Protocols denied by
 --proto are not overridden by this option. See --proto for how protocols are
@@ -12,8 +13,6 @@
 
  curl --proto-redir -all,http,https http://example.com
 
-By default curl will allow HTTP, HTTPS, FTP and FTPS on redirect (7.65.2).
-Older versions of curl allowed all protocols on redirect except several
-disabled for security reasons: Since 7.19.4 FILE and SCP are disabled, and
-since 7.40.0 SMB and SMBS are also disabled. Specifying *all* or *+all*
-enables all protocols on redirect, including those disabled for security.
+By default curl will only allow HTTP, HTTPS, FTP and FTPS on redirect (since
+7.65.2). Specifying *all* or *+all* enables all protocols on redirects, which
+is not good for security.
diff --git a/docs/cmdline-opts/proto.d b/docs/cmdline-opts/proto.d
index 1e269a5..6ff52c4 100644
--- a/docs/cmdline-opts/proto.d
+++ b/docs/cmdline-opts/proto.d
@@ -4,6 +4,7 @@
 See-also: proto-redir proto-default
 Added: 7.20.2
 Category: connection curl
+Example: --proto =http,https,sftp $URL
 ---
 Tells curl to limit what protocols it may use for transfers. Protocols are
 evaluated left to right, are comma separated, and are each a protocol name or
diff --git a/docs/cmdline-opts/proxy-anyauth.d b/docs/cmdline-opts/proxy-anyauth.d
index 6410c0e..80f2b97 100644
--- a/docs/cmdline-opts/proxy-anyauth.d
+++ b/docs/cmdline-opts/proxy-anyauth.d
@@ -3,6 +3,7 @@
 Added: 7.13.2
 See-also: proxy proxy-basic proxy-digest
 Category: proxy auth
+Example: --proxy-anyauth --proxy-user user:passwd -x proxy $URL
 ---
 Tells curl to pick a suitable authentication method when communicating with
 the given HTTP proxy. This might cause an extra request/response round-trip.
diff --git a/docs/cmdline-opts/proxy-basic.d b/docs/cmdline-opts/proxy-basic.d
index e842f99..c651bad 100644
--- a/docs/cmdline-opts/proxy-basic.d
+++ b/docs/cmdline-opts/proxy-basic.d
@@ -2,6 +2,8 @@
 Help: Use Basic authentication on the proxy
 See-also: proxy proxy-anyauth proxy-digest
 Category: proxy auth
+Example: --proxy-basic --proxy-user user:passwd -x proxy $URL
+Added: 7.12.0
 ---
 Tells curl to use HTTP Basic authentication when communicating with the given
 proxy. Use --basic for enabling HTTP Basic with a remote host. Basic is the
diff --git a/docs/cmdline-opts/proxy-cacert.d b/docs/cmdline-opts/proxy-cacert.d
index bbc731a..5c32944 100644
--- a/docs/cmdline-opts/proxy-cacert.d
+++ b/docs/cmdline-opts/proxy-cacert.d
@@ -4,5 +4,6 @@
 Added: 7.52.0
 See-also: proxy-capath cacert capath proxy
 Category: proxy tls
+Example: --proxy-cacert CA-file.txt -x https://proxy $URL
 ---
 Same as --cacert but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-capath.d b/docs/cmdline-opts/proxy-capath.d
index cc342b7..0429984 100644
--- a/docs/cmdline-opts/proxy-capath.d
+++ b/docs/cmdline-opts/proxy-capath.d
@@ -4,5 +4,6 @@
 Added: 7.52.0
 See-also: proxy-cacert proxy capath
 Category: proxy tls
+Example: --proxy-capath /local/directory -x https://proxy $URL
 ---
 Same as --capath but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-cert-type.d b/docs/cmdline-opts/proxy-cert-type.d
index fb7596c..2152f53 100644
--- a/docs/cmdline-opts/proxy-cert-type.d
+++ b/docs/cmdline-opts/proxy-cert-type.d
@@ -3,5 +3,6 @@
 Added: 7.52.0
 Help: Client certificate type for HTTPS proxy
 Category: proxy tls
+Example: --proxy-cert-type PEM --proxy-cert file -x https://proxy $URL
 ---
 Same as --cert-type but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-cert.d b/docs/cmdline-opts/proxy-cert.d
index 7df2712..3cf54b7 100644
--- a/docs/cmdline-opts/proxy-cert.d
+++ b/docs/cmdline-opts/proxy-cert.d
@@ -3,5 +3,6 @@
 Help: Set client certificate for proxy
 Added: 7.52.0
 Category: proxy tls
+Example: --proxy-cert file -x https://proxy $URL
 ---
 Same as --cert but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-ciphers.d b/docs/cmdline-opts/proxy-ciphers.d
index 3665556..b4c3580 100644
--- a/docs/cmdline-opts/proxy-ciphers.d
+++ b/docs/cmdline-opts/proxy-ciphers.d
@@ -3,5 +3,6 @@
 Help: SSL ciphers to use for proxy
 Added: 7.52.0
 Category: proxy tls
+Example: --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy $URL
 ---
 Same as --ciphers but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-crlfile.d b/docs/cmdline-opts/proxy-crlfile.d
index 580dc50..1ac1999 100644
--- a/docs/cmdline-opts/proxy-crlfile.d
+++ b/docs/cmdline-opts/proxy-crlfile.d
@@ -3,5 +3,6 @@
 Help: Set a CRL list for proxy
 Added: 7.52.0
 Category: proxy tls
+Example: --proxy-crlfile rejects.txt -x https://proxy $URL
 ---
 Same as --crlfile but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-digest.d b/docs/cmdline-opts/proxy-digest.d
index 52f1fcc..9677e92 100644
--- a/docs/cmdline-opts/proxy-digest.d
+++ b/docs/cmdline-opts/proxy-digest.d
@@ -2,6 +2,8 @@
 Help: Use Digest authentication on the proxy
 See-also: proxy proxy-anyauth proxy-basic
 Category: proxy tls
+Example: --proxy-digest --proxy-user user:passwd -x proxy $URL
+Added: 7.12.0
 ---
 Tells curl to use HTTP Digest authentication when communicating with the given
 proxy. Use --digest for enabling HTTP Digest with a remote host.
diff --git a/docs/cmdline-opts/proxy-header.d b/docs/cmdline-opts/proxy-header.d
index c2b0928..273a773 100644
--- a/docs/cmdline-opts/proxy-header.d
+++ b/docs/cmdline-opts/proxy-header.d
@@ -4,6 +4,9 @@
 Protocols: HTTP
 Added: 7.37.0
 Category: proxy
+Example: --proxy-header "X-First-Name: Joe" -x http://proxy $URL
+Example: --proxy-header "User-Agent: surprise" -x http://proxy $URL
+Example: --proxy-header "Host:" -x http://proxy $URL
 ---
 Extra header to include in the request when sending HTTP to a proxy. You may
 specify any number of extra headers. This is the equivalent option to --header
diff --git a/docs/cmdline-opts/proxy-insecure.d b/docs/cmdline-opts/proxy-insecure.d
index e123f40..3f4f7c1 100644
--- a/docs/cmdline-opts/proxy-insecure.d
+++ b/docs/cmdline-opts/proxy-insecure.d
@@ -2,5 +2,6 @@
 Help: Do HTTPS proxy connections without verifying the proxy
 Added: 7.52.0
 Category: proxy tls
+Example: --proxy-insecure -x https://proxy $URL
 ---
 Same as --insecure but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-key-type.d b/docs/cmdline-opts/proxy-key-type.d
index 1906872..31f47af 100644
--- a/docs/cmdline-opts/proxy-key-type.d
+++ b/docs/cmdline-opts/proxy-key-type.d
@@ -3,5 +3,6 @@
 Help: Private key file type for proxy
 Added: 7.52.0
 Category: proxy tls
+Example: --proxy-key-type DER --proxy-key here -x https://proxy $URL
 ---
 Same as --key-type but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-key.d b/docs/cmdline-opts/proxy-key.d
index 57d469f..d0b2c13 100644
--- a/docs/cmdline-opts/proxy-key.d
+++ b/docs/cmdline-opts/proxy-key.d
@@ -2,5 +2,7 @@
 Help: Private key for HTTPS proxy
 Arg: <key>
 Category: proxy tls
+Example: --proxy-key here -x https://proxy $URL
+Added: 7.52.0
 ---
 Same as --key but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-negotiate.d b/docs/cmdline-opts/proxy-negotiate.d
index 72f3596..5085a7c 100644
--- a/docs/cmdline-opts/proxy-negotiate.d
+++ b/docs/cmdline-opts/proxy-negotiate.d
@@ -3,6 +3,7 @@
 Added: 7.17.1
 See-also: proxy-anyauth proxy-basic
 Category: proxy auth
+Example: --proxy-negotiate --proxy-user user:passwd -x proxy $URL
 ---
 Tells curl to use HTTP Negotiate (SPNEGO) authentication when communicating
 with the given proxy. Use --negotiate for enabling HTTP Negotiate (SPNEGO)
diff --git a/docs/cmdline-opts/proxy-ntlm.d b/docs/cmdline-opts/proxy-ntlm.d
index cb1ba7b..03d2d17 100644
--- a/docs/cmdline-opts/proxy-ntlm.d
+++ b/docs/cmdline-opts/proxy-ntlm.d
@@ -2,6 +2,8 @@
 Help: Use NTLM authentication on the proxy
 See-also: proxy-negotiate proxy-anyauth
 Category: proxy auth
+Example: --proxy-ntlm --proxy-user user:passwd -x http://proxy $URL
+Added: 7.10.7
 ---
 Tells curl to use HTTP NTLM authentication when communicating with the given
 proxy. Use --ntlm for enabling NTLM with a remote host.
diff --git a/docs/cmdline-opts/proxy-pass.d b/docs/cmdline-opts/proxy-pass.d
index 627451b..b714684 100644
--- a/docs/cmdline-opts/proxy-pass.d
+++ b/docs/cmdline-opts/proxy-pass.d
@@ -3,5 +3,6 @@
 Help: Pass phrase for the private key for HTTPS proxy
 Added: 7.52.0
 Category: proxy tls auth
+Example: --proxy-pass secret --proxy-key here -x https://proxy $URL
 ---
 Same as --pass but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-pinnedpubkey.d b/docs/cmdline-opts/proxy-pinnedpubkey.d
index 2ab79f1..17a57ff 100644
--- a/docs/cmdline-opts/proxy-pinnedpubkey.d
+++ b/docs/cmdline-opts/proxy-pinnedpubkey.d
@@ -3,11 +3,14 @@
 Help: FILE/HASHES public key to verify proxy with
 Protocols: TLS
 Category: proxy tls
+Example: --proxy-pinnedpubkey keyfile $URL
+Example: --proxy-pinnedpubkey 'sha256//ce118b51897f4452dc' $URL
+Added: 7.59.0
 ---
 Tells curl to use the specified public key file (or hashes) to verify the
 proxy. This can be a path to a file which contains a single public key in PEM
 or DER format, or any number of base64 encoded sha256 hashes preceded by
-\'sha256//\' and separated by \';\'
+'sha256//' and separated by ';'.
 
 When negotiating a TLS or SSL connection, the server sends a certificate
 indicating its identity. A public key is extracted from this certificate and
diff --git a/docs/cmdline-opts/proxy-service-name.d b/docs/cmdline-opts/proxy-service-name.d
index f780729..fbed175 100644
--- a/docs/cmdline-opts/proxy-service-name.d
+++ b/docs/cmdline-opts/proxy-service-name.d
@@ -3,5 +3,6 @@
 Help: SPNEGO proxy service name
 Added: 7.43.0
 Category: proxy tls
+Example: --proxy-service-name "shrubbery" -x proxy $URL
 ---
 This option allows you to change the service name for proxy negotiation.
diff --git a/docs/cmdline-opts/proxy-ssl-allow-beast.d b/docs/cmdline-opts/proxy-ssl-allow-beast.d
index 138001b..b3e701f 100644
--- a/docs/cmdline-opts/proxy-ssl-allow-beast.d
+++ b/docs/cmdline-opts/proxy-ssl-allow-beast.d
@@ -2,5 +2,6 @@
 Help: Allow security flaw for interop for HTTPS proxy
 Added: 7.52.0
 Category: proxy tls
+Example: --proxy-ssl-allow-beast -x https://proxy $URL
 ---
 Same as --ssl-allow-beast but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-ssl-auto-client-cert.d b/docs/cmdline-opts/proxy-ssl-auto-client-cert.d
index 0541754..7c071d7 100644
--- a/docs/cmdline-opts/proxy-ssl-auto-client-cert.d
+++ b/docs/cmdline-opts/proxy-ssl-auto-client-cert.d
@@ -2,5 +2,6 @@
 Help: Use auto client certificate for proxy (Schannel)
 Added: 7.77.0
 Category: proxy tls
+Example: --proxy-ssl-auto-client-cert -x https://proxy $URL
 ---
 Same as --ssl-auto-client-cert but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-tls13-ciphers.d b/docs/cmdline-opts/proxy-tls13-ciphers.d
index 9f03f13..e952451 100644
--- a/docs/cmdline-opts/proxy-tls13-ciphers.d
+++ b/docs/cmdline-opts/proxy-tls13-ciphers.d
@@ -3,6 +3,8 @@
 help: TLS 1.3 proxy cipher suites
 Protocols: TLS
 Category: proxy tls
+Example: --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy $URL
+Added: 7.61.0
 ---
 Specifies which cipher suites to use in the connection to your HTTPS proxy
 when it negotiates TLS 1.3. The list of ciphers suites must specify valid
diff --git a/docs/cmdline-opts/proxy-tlsauthtype.d b/docs/cmdline-opts/proxy-tlsauthtype.d
index 5649a0f..c00928e 100644
--- a/docs/cmdline-opts/proxy-tlsauthtype.d
+++ b/docs/cmdline-opts/proxy-tlsauthtype.d
@@ -3,5 +3,6 @@
 Help: TLS authentication type for HTTPS proxy
 Added: 7.52.0
 Category: proxy tls auth
+Example: --proxy-tlsauthtype SRP -x https://proxy $URL
 ---
 Same as --tlsauthtype but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-tlspassword.d b/docs/cmdline-opts/proxy-tlspassword.d
index 38a33d4..89b551d 100644
--- a/docs/cmdline-opts/proxy-tlspassword.d
+++ b/docs/cmdline-opts/proxy-tlspassword.d
@@ -3,5 +3,6 @@
 Help: TLS password for HTTPS proxy
 Added: 7.52.0
 Category: proxy tls auth
+Example: --proxy-tlspassword passwd -x https://proxy $URL
 ---
 Same as --tlspassword but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-tlsuser.d b/docs/cmdline-opts/proxy-tlsuser.d
index 587f7f5..b3c400e 100644
--- a/docs/cmdline-opts/proxy-tlsuser.d
+++ b/docs/cmdline-opts/proxy-tlsuser.d
@@ -3,5 +3,6 @@
 Help: TLS username for HTTPS proxy
 Added: 7.52.0
 Category: proxy tls auth
+Example: --proxy-tlsuser smith -x https://proxy $URL
 ---
 Same as --tlsuser but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-tlsv1.d b/docs/cmdline-opts/proxy-tlsv1.d
index 5003f5f..c54782e 100644
--- a/docs/cmdline-opts/proxy-tlsv1.d
+++ b/docs/cmdline-opts/proxy-tlsv1.d
@@ -2,5 +2,6 @@
 Help: Use TLSv1 for HTTPS proxy
 Added: 7.52.0
 Category: proxy tls auth
+Example: --proxy-tlsv1 -x https://proxy $URL
 ---
 Same as --tlsv1 but used in HTTPS proxy context.
diff --git a/docs/cmdline-opts/proxy-user.d b/docs/cmdline-opts/proxy-user.d
index 82fc517..1d63f4d 100644
--- a/docs/cmdline-opts/proxy-user.d
+++ b/docs/cmdline-opts/proxy-user.d
@@ -3,6 +3,8 @@
 Arg: <user:password>
 Help: Proxy user and password
 Category: proxy auth
+Example: --proxy-user name:pwd -x proxy $URL
+Added: 4.0
 ---
 Specify the user name and password to use for proxy authentication.
 
diff --git a/docs/cmdline-opts/proxy.d b/docs/cmdline-opts/proxy.d
index 0592f13..3f6ef7a 100644
--- a/docs/cmdline-opts/proxy.d
+++ b/docs/cmdline-opts/proxy.d
@@ -3,13 +3,15 @@
 Arg: [protocol://]host[:port]
 Help: Use this proxy
 Category: proxy
+Example: --proxy http://proxy.example $URL
+Added: 4.0
 ---
 Use the specified proxy.
 
 The proxy string can be specified with a protocol:// prefix. No protocol
 specified or http:// will be treated as HTTP proxy. Use socks4://, socks4a://,
 socks5:// or socks5h:// to request a specific SOCKS version to be used.
-(The protocol support was added in curl 7.21.7)
+(Added in 7.21.7)
 
 HTTPS proxy support via https:// protocol prefix was added in 7.52.0 for
 OpenSSL, GnuTLS and NSS.
diff --git a/docs/cmdline-opts/proxy1.0.d b/docs/cmdline-opts/proxy1.0.d
index b8a232b..8aea3ab 100644
--- a/docs/cmdline-opts/proxy1.0.d
+++ b/docs/cmdline-opts/proxy1.0.d
@@ -2,6 +2,8 @@
 Arg: <host[:port]>
 Help: Use HTTP/1.0 proxy on given port
 Category: proxy
+Example: --proxy1.0 -x http://proxy $URL
+Added: 7.19.4
 ---
 Use the specified HTTP 1.0 proxy. If the port number is not specified, it is
 assumed at port 1080.
diff --git a/docs/cmdline-opts/proxytunnel.d b/docs/cmdline-opts/proxytunnel.d
index 94dae99..a62cbb6 100644
--- a/docs/cmdline-opts/proxytunnel.d
+++ b/docs/cmdline-opts/proxytunnel.d
@@ -3,6 +3,8 @@
 Help: Operate through an HTTP proxy tunnel (using CONNECT)
 See-also: proxy
 Category: proxy
+Example: --proxytunnel -x http://proxy $URL
+Added: 7.3
 ---
 When an HTTP proxy is used --proxy, this option will make curl tunnel through
 the proxy. The tunnel approach is made with the HTTP proxy CONNECT request and
diff --git a/docs/cmdline-opts/pubkey.d b/docs/cmdline-opts/pubkey.d
index 692daf6..cbd60f7 100644
--- a/docs/cmdline-opts/pubkey.d
+++ b/docs/cmdline-opts/pubkey.d
@@ -3,6 +3,8 @@
 Protocols: SFTP SCP
 Help: SSH Public key file name
 Category: sftp scp auth
+Example: --pubkey file.pub sftp://example.com/
+Added: 7.16.2
 ---
 Public key file name. Allows you to provide your public key in this separate
 file.
diff --git a/docs/cmdline-opts/quote.d b/docs/cmdline-opts/quote.d
index 6e4fd08..25da93f 100644
--- a/docs/cmdline-opts/quote.d
+++ b/docs/cmdline-opts/quote.d
@@ -4,8 +4,9 @@
 Help: Send command(s) to server before transfer
 Protocols: FTP SFTP
 Category: ftp sftp
+Example: --quote "DELE file" ftp://example.com/foo
+Added: 5.3
 ---
-
 Send an arbitrary command to the remote FTP or SFTP server. Quote commands are
 sent BEFORE the transfer takes place (just after the initial PWD command in an
 FTP transfer, to be exact). To make commands take place after a successful
@@ -14,12 +15,13 @@
 the command with a '+' (this is only supported for FTP). You may specify any
 number of commands.
 
-If the server returns failure for one of the commands, the entire operation
-will be aborted. You must send syntactically correct FTP commands as RFC 959
-defines to FTP servers, or one of the commands listed below to SFTP servers.
+By default curl will stop at first failure. To make curl continue even if the
+command fails, prefix the command with an asterisk (*). Otherwise, if the
+server returns failure for one of the commands, the entire operation will be
+aborted.
 
-Prefix the command with an asterisk (*) to make curl continue even if the
-command fails as by default curl will stop at first failure.
+You must send syntactically correct FTP commands as RFC 959 defines to FTP
+servers, or one of the commands listed below to SFTP servers.
 
 This option can be used multiple times.
 
diff --git a/docs/cmdline-opts/random-file.d b/docs/cmdline-opts/random-file.d
index c57f523..d74148a 100644
--- a/docs/cmdline-opts/random-file.d
+++ b/docs/cmdline-opts/random-file.d
@@ -2,6 +2,8 @@
 Arg: <file>
 Help: File for reading random data from
 Category: misc
+Example: --random-file rubbish $URL
+Added: 7.7
 ---
 Specify the path name to file containing what will be considered as random
 data. The data may be used to seed the random engine for SSL connections.  See
diff --git a/docs/cmdline-opts/range.d b/docs/cmdline-opts/range.d
index e2d1f62..90c74b1 100644
--- a/docs/cmdline-opts/range.d
+++ b/docs/cmdline-opts/range.d
@@ -4,6 +4,8 @@
 Arg: <range>
 Protocols: HTTP FTP SFTP FILE
 Category: http ftp sftp file
+Example: --range 22-44 $URL
+Added: 4.0
 ---
 Retrieve a byte range (i.e. a partial document) from an HTTP/1.1, FTP or SFTP
 server or a local FILE. Ranges can be specified in a number of ways.
@@ -38,8 +40,8 @@
 configuration.
 
 You should also be aware that many HTTP/1.1 servers do not have this feature
-enabled, so that when you attempt to get a range, you'll instead get the whole
-document.
+enabled, so that when you attempt to get a range, you will instead get the
+whole document.
 
 FTP and SFTP range downloads only support the simple 'start-stop' syntax
 (optionally with one of the numbers omitted). FTP use depends on the extended
diff --git a/docs/cmdline-opts/raw.d b/docs/cmdline-opts/raw.d
index 90e7772..c44d33f 100644
--- a/docs/cmdline-opts/raw.d
+++ b/docs/cmdline-opts/raw.d
@@ -3,6 +3,7 @@
 Added: 7.16.2
 Protocols: HTTP
 Category: http
+Example: --raw $URL
 ---
 When used, it disables all internal HTTP decoding of content or transfer
 encodings and instead makes them passed on unaltered, raw.
diff --git a/docs/cmdline-opts/referer.d b/docs/cmdline-opts/referer.d
index 8b2057b..1eb39cc 100644
--- a/docs/cmdline-opts/referer.d
+++ b/docs/cmdline-opts/referer.d
@@ -5,11 +5,15 @@
 Help: Referrer URL
 See-also: user-agent header
 Category: http
+Example: --referer "https://fake.example" $URL
+Example: --referer "https://fake.example;auto" -L $URL
+Example: --referer ";auto" -L $URL
+Added: 4.0
 ---
 Sends the "Referrer Page" information to the HTTP server. This can also be set
 with the --header flag of course.  When used with --location you can append
 ";auto" to the --referer URL to make curl automatically set the previous URL
 when it follows a Location: header. The \&";auto" string can be used alone,
-even if you don't set an initial --referer.
+even if you do not set an initial --referer.
 
 If this option is used several times, the last one will be used.
diff --git a/docs/cmdline-opts/remote-header-name.d b/docs/cmdline-opts/remote-header-name.d
index 325dade..12a805f 100644
--- a/docs/cmdline-opts/remote-header-name.d
+++ b/docs/cmdline-opts/remote-header-name.d
@@ -3,13 +3,15 @@
 Protocols: HTTP
 Help: Use the header-provided filename
 Category: output
+Example: -OJ https://example.com/file
+Added: 7.20.0
 ---
 This option tells the --remote-name option to use the server-specified
 Content-Disposition filename instead of extracting a filename from the URL.
 
 If the server specifies a file name and a file with that name already exists
 in the current working directory it will not be overwritten and an error will
-occur. If the server doesn't specify a file name then this option has no
+occur. If the server does not specify a file name then this option has no
 effect.
 
 There's no attempt to decode %-sequences (yet) in the provided file name, so
diff --git a/docs/cmdline-opts/remote-name-all.d b/docs/cmdline-opts/remote-name-all.d
index 299684c..e27bd5f 100644
--- a/docs/cmdline-opts/remote-name-all.d
+++ b/docs/cmdline-opts/remote-name-all.d
@@ -2,6 +2,7 @@
 Help: Use the remote file name for all URLs
 Added: 7.19.0
 Category: output
+Example: --remote-name-all ftp://example.com/file1 ftp://example.com/file2
 ---
 This option changes the default action for all given URLs to be dealt with as
 if --remote-name were used for each one. So if you want to disable that for a
diff --git a/docs/cmdline-opts/remote-name.d b/docs/cmdline-opts/remote-name.d
index 184c32e..f7e03f4 100644
--- a/docs/cmdline-opts/remote-name.d
+++ b/docs/cmdline-opts/remote-name.d
@@ -2,6 +2,8 @@
 Short: O
 Help: Write output to a file named as the remote file
 Category: important output
+Example: -O https://example.com/filename
+Added: 4.0
 ---
 Write output to a local file named like the remote file we get. (Only the file
 part of the remote file is used, the path is cut off.)
diff --git a/docs/cmdline-opts/remote-time.d b/docs/cmdline-opts/remote-time.d
index 96fb4fb..c8bd168 100644
--- a/docs/cmdline-opts/remote-time.d
+++ b/docs/cmdline-opts/remote-time.d
@@ -2,6 +2,8 @@
 Short: R
 Help: Set the remote file's time on the local output
 Category: output
+Example: --remote-time -o foo $URL
+Added: 7.9
 ---
 When used, this will make curl attempt to figure out the timestamp of the
 remote file, and if that is available make the local file get that same
diff --git a/docs/cmdline-opts/request-target.d b/docs/cmdline-opts/request-target.d
index 4422611..6e21a6b 100644
--- a/docs/cmdline-opts/request-target.d
+++ b/docs/cmdline-opts/request-target.d
@@ -4,8 +4,9 @@
 Protocols: HTTP
 Added: 7.55.0
 Category: http
+Example: --request-target "*" -X OPTIONS $URL
 ---
 Tells curl to use an alternative "target" (path) instead of using the path as
 provided in the URL. Particularly useful when wanting to issue HTTP requests
-without leading slash or other data that doesn't follow the regular URL
+without leading slash or other data that does not follow the regular URL
 pattern, like "OPTIONS *".
diff --git a/docs/cmdline-opts/request.d b/docs/cmdline-opts/request.d
index 47c4c8b..b73e782 100644
--- a/docs/cmdline-opts/request.d
+++ b/docs/cmdline-opts/request.d
@@ -3,6 +3,9 @@
 Arg: <command>
 Help: Specify request command to use
 Category: connection
+Example: -X "DELETE" $URL
+Example: -X NLST ftp://example.com/
+Added: 6.0
 ---
 (HTTP) Specifies a custom request method to use when communicating with the
 HTTP server.  The specified request method will be used instead of the method
@@ -11,7 +14,7 @@
 DELETE, but related technologies like WebDAV offers PROPFIND, COPY, MOVE and
 more.
 
-Normally you don't need this option. All sorts of GET, HEAD, POST and PUT
+Normally you do not need this option. All sorts of GET, HEAD, POST and PUT
 requests are rather invoked by using dedicated command line options.
 
 This option only changes the actual word used in the HTTP request, it does not
@@ -20,7 +23,7 @@
 
 The method string you set with --request will be used for all requests, which
 if you for example use --location may cause unintended side-effects when curl
-doesn't change request method according to the HTTP 30x response codes - and
+does not change request method according to the HTTP 30x response codes - and
 similar.
 
 (FTP)
@@ -28,8 +31,8 @@
 with FTP.
 
 (POP3)
-Specifies a custom POP3 command to use instead of LIST or RETR. (Added in
-7.26.0)
+Specifies a custom POP3 command to use instead of LIST or RETR.
+(Added in 7.26.0)
 
 (IMAP)
 Specifies a custom IMAP command to use instead of LIST. (Added in 7.30.0)
diff --git a/docs/cmdline-opts/resolve.d b/docs/cmdline-opts/resolve.d
index ff10f28..6464c42 100644
--- a/docs/cmdline-opts/resolve.d
+++ b/docs/cmdline-opts/resolve.d
@@ -3,6 +3,7 @@
 Help: Resolve the host+port to this address
 Added: 7.21.3
 Category: connection
+Example: --resolve example.com:443:127.0.0.1 $URL
 ---
 Provide a custom address for a specific host and port pair. Using this, you
 can make the curl requests(s) use a specified address and prevent the
diff --git a/docs/cmdline-opts/retry-all-errors.d b/docs/cmdline-opts/retry-all-errors.d
index 5ad1da0..2a9c552 100644
--- a/docs/cmdline-opts/retry-all-errors.d
+++ b/docs/cmdline-opts/retry-all-errors.d
@@ -2,6 +2,7 @@
 Help: Retry all errors (use with --retry)
 Added: 7.71.0
 Category: curl
+Example: --retry-all-errors $URL
 ---
 Retry on any error. This option is used together with --retry.
 
@@ -11,13 +12,14 @@
 much better off handling your unique problems in shell script. Please read the
 example below.
 
-Warning: For server compatibility curl attempts to retry failed flaky transfers
-as close as possible to how they were started, but this is not possible with
-redirected input or output. For example, before retrying it removes output data
-from a failed partial transfer that was written to an output file. However this
-is not true of data redirected to a | pipe or > file, which are not reset. We
-strongly suggest don't parse or record output via redirect in combination with
-this option, since you may receive duplicate data.
+**WARNING**: For server compatibility curl attempts to retry failed flaky
+transfers as close as possible to how they were started, but this is not
+possible with redirected input or output. For example, before retrying it
+removes output data from a failed partial transfer that was written to an
+output file. However this is not true of data redirected to a | pipe or >
+file, which are not reset. We strongly suggest you do not parse or record
+output via redirect in combination with this option, since you may receive
+duplicate data.
 
 By default curl will not error on an HTTP response code that indicates an HTTP
 error, if the transfer was successful. For example, if a server replies 404
diff --git a/docs/cmdline-opts/retry-connrefused.d b/docs/cmdline-opts/retry-connrefused.d
index be34f97..ad079e0 100644
--- a/docs/cmdline-opts/retry-connrefused.d
+++ b/docs/cmdline-opts/retry-connrefused.d
@@ -2,6 +2,7 @@
 Help: Retry on connection refused (use with --retry)
 Added: 7.52.0
 Category: curl
+Example: --retry-connrefused --retry $URL
 ---
 In addition to the other conditions, consider ECONNREFUSED as a transient
 error too for --retry. This option is used together with --retry.
diff --git a/docs/cmdline-opts/retry-delay.d b/docs/cmdline-opts/retry-delay.d
index 5645c0e..2839129 100644
--- a/docs/cmdline-opts/retry-delay.d
+++ b/docs/cmdline-opts/retry-delay.d
@@ -3,6 +3,7 @@
 Help: Wait time between retries
 Added: 7.12.3
 Category: curl
+Example: --retry-delay 5 --retry $URL
 ---
 Make curl sleep this amount of time before each retry when a transfer has
 failed with a transient error (it changes the default backoff time algorithm
diff --git a/docs/cmdline-opts/retry-max-time.d b/docs/cmdline-opts/retry-max-time.d
index 9d6faf3..f859f3a 100644
--- a/docs/cmdline-opts/retry-max-time.d
+++ b/docs/cmdline-opts/retry-max-time.d
@@ -3,12 +3,13 @@
 Help: Retry only within this period
 Added: 7.12.3
 Category: curl
+Example: --retry-max-time 30 --retry 10 $URL
 ---
 The retry timer is reset before the first transfer attempt. Retries will be
-done as usual (see --retry) as long as the timer hasn't reached this given
-limit. Notice that if the timer hasn't reached the limit, the request will be
+done as usual (see --retry) as long as the timer has not reached this given
+limit. Notice that if the timer has not reached the limit, the request will be
 made and while performing, it may take longer than this given time period. To
-limit a single request\'s maximum time, use --max-time.  Set this option to
+limit a single request's maximum time, use --max-time.  Set this option to
 zero to not timeout retries.
 
 If this option is used several times, the last one will be used.
diff --git a/docs/cmdline-opts/retry.d b/docs/cmdline-opts/retry.d
index bff0ef2..6238383 100644
--- a/docs/cmdline-opts/retry.d
+++ b/docs/cmdline-opts/retry.d
@@ -3,6 +3,7 @@
 Added: 7.12.3
 Help: Retry request if transient problems occur
 Category: curl
+Example: --retry 7 $URL
 ---
 If a transient error is returned when curl tries to perform a transfer, it
 will retry this number of times before giving up. Setting the number to 0
diff --git a/docs/cmdline-opts/sasl-authzid.d b/docs/cmdline-opts/sasl-authzid.d
index e802c80..867aac0 100644
--- a/docs/cmdline-opts/sasl-authzid.d
+++ b/docs/cmdline-opts/sasl-authzid.d
@@ -3,11 +3,12 @@
 Help: Identity for SASL PLAIN authentication
 Added: 7.66.0
 Category: auth
+Example: --sasl-authzid zid imap://example.com/
 ---
 Use this authorisation identity (authzid), during SASL PLAIN authentication,
 in addition to the authentication identity (authcid) as specified by --user.
 
-If the option isn't specified, the server will derive the authzid from the
+If the option is not specified, the server will derive the authzid from the
 authcid, but if specified, and depending on the server implementation, it may
 be used to access another user's inbox, that the user has been granted access
 to, or a shared mailbox for example.
diff --git a/docs/cmdline-opts/sasl-ir.d b/docs/cmdline-opts/sasl-ir.d
index 0041c3b..5004306 100644
--- a/docs/cmdline-opts/sasl-ir.d
+++ b/docs/cmdline-opts/sasl-ir.d
@@ -2,5 +2,6 @@
 Help: Enable initial response in SASL authentication
 Added: 7.31.0
 Category: auth
+Example: --sasl-ir imap://example.com/
 ---
 Enable initial response in SASL authentication.
diff --git a/docs/cmdline-opts/service-name.d b/docs/cmdline-opts/service-name.d
index c64496b..3a5559b 100644
--- a/docs/cmdline-opts/service-name.d
+++ b/docs/cmdline-opts/service-name.d
@@ -3,6 +3,7 @@
 Arg: <name>
 Added: 7.43.0
 Category: misc
+Example: --service-name sockd/server $URL
 ---
 This option allows you to change the service name for SPNEGO.
 
diff --git a/docs/cmdline-opts/show-error.d b/docs/cmdline-opts/show-error.d
index 2124409..c1af391 100644
--- a/docs/cmdline-opts/show-error.d
+++ b/docs/cmdline-opts/show-error.d
@@ -3,5 +3,10 @@
 Help: Show error even when -s is used
 See-also: no-progress-meter
 Category: curl
+Example: --show-error --silent $URL
+Added: 5.9
 ---
 When used with --silent, it makes curl show an error message if it fails.
+
+This option is global and does not need to be specified for each use of
+--next.
diff --git a/docs/cmdline-opts/silent.d b/docs/cmdline-opts/silent.d
index 58a5223..4e52f30 100644
--- a/docs/cmdline-opts/silent.d
+++ b/docs/cmdline-opts/silent.d
@@ -3,8 +3,10 @@
 Help: Silent mode
 See-also: verbose stderr no-progress-meter
 Category: important verbose
+Example: -s $URL
+Added: 4.0
 ---
-Silent or quiet mode. Don't show progress meter or error messages.  Makes Curl
+Silent or quiet mode. Do not show progress meter or error messages.  Makes Curl
 mute. It will still output the data you ask for, potentially even to the
 terminal/stdout unless you redirect it.
 
diff --git a/docs/cmdline-opts/socks4.d b/docs/cmdline-opts/socks4.d
index 3cfb254..6494f33 100644
--- a/docs/cmdline-opts/socks4.d
+++ b/docs/cmdline-opts/socks4.d
@@ -3,6 +3,7 @@
 Help: SOCKS4 proxy on given host + port
 Added: 7.15.2
 Category: proxy
+Example: --socks4 hostname:4096 $URL
 ---
 Use the specified SOCKS4 proxy. If the port number is not specified, it is
 assumed at port 1080. Using this socket type make curl resolve the host name
@@ -11,8 +12,8 @@
 This option overrides any previous use of --proxy, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks4 proxy
-with --proxy using a socks4:// protocol prefix.
+This option is superfluous since you can specify a socks4 proxy with --proxy
+using a socks4:// protocol prefix. (Added in 7.21.7)
 
 Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time
 --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to
diff --git a/docs/cmdline-opts/socks4a.d b/docs/cmdline-opts/socks4a.d
index d820566..28359e0 100644
--- a/docs/cmdline-opts/socks4a.d
+++ b/docs/cmdline-opts/socks4a.d
@@ -3,6 +3,7 @@
 Help: SOCKS4a proxy on given host + port
 Added: 7.18.0
 Category: proxy
+Example: --socks4a hostname:4096 $URL
 ---
 Use the specified SOCKS4a proxy. If the port number is not specified, it is
 assumed at port 1080. This asks the proxy to resolve the host name.
@@ -10,8 +11,8 @@
 This option overrides any previous use of --proxy, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks4a proxy
-with --proxy using a socks4a:// protocol prefix.
+This option is superfluous since you can specify a socks4a proxy with --proxy
+using a socks4a:// protocol prefix. (Added in 7.21.7)
 
 Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time
 --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to
diff --git a/docs/cmdline-opts/socks5-basic.d b/docs/cmdline-opts/socks5-basic.d
index 52d1e66..f32e0bf 100644
--- a/docs/cmdline-opts/socks5-basic.d
+++ b/docs/cmdline-opts/socks5-basic.d
@@ -2,6 +2,7 @@
 Help: Enable username/password auth for SOCKS5 proxies
 Added: 7.55.0
 Category: proxy auth
+Example: --socks5-basic --socks5 hostname:4096 $URL
 ---
 Tells curl to use username/password authentication when connecting to a SOCKS5
 proxy.  The username/password authentication is enabled by default.  Use
diff --git a/docs/cmdline-opts/socks5-gssapi-nec.d b/docs/cmdline-opts/socks5-gssapi-nec.d
index b538f33..73cac7a 100644
--- a/docs/cmdline-opts/socks5-gssapi-nec.d
+++ b/docs/cmdline-opts/socks5-gssapi-nec.d
@@ -2,6 +2,7 @@
 Help: Compatibility with NEC SOCKS5 server
 Added: 7.19.4
 Category: proxy auth
+Example: --socks5-gssapi-nec --socks5 hostname:4096 $URL
 ---
 As part of the GSS-API negotiation a protection mode is negotiated. RFC 1961
 says in section 4.3/4.4 it should be protected, but the NEC reference
diff --git a/docs/cmdline-opts/socks5-gssapi-service.d b/docs/cmdline-opts/socks5-gssapi-service.d
index e61d0f5..451be8e 100644
--- a/docs/cmdline-opts/socks5-gssapi-service.d
+++ b/docs/cmdline-opts/socks5-gssapi-service.d
@@ -3,6 +3,7 @@
 Help: SOCKS5 proxy service name for GSS-API
 Added: 7.19.4
 Category: proxy auth
+Example: --socks5-gssapi-service sockd --socks5 hostname:4096 $URL
 ---
 The default service name for a socks server is rcmd/server-fqdn. This option
 allows you to change it.
diff --git a/docs/cmdline-opts/socks5-gssapi.d b/docs/cmdline-opts/socks5-gssapi.d
index 72ae7ae..2ce8069 100644
--- a/docs/cmdline-opts/socks5-gssapi.d
+++ b/docs/cmdline-opts/socks5-gssapi.d
@@ -2,6 +2,7 @@
 Help: Enable GSS-API auth for SOCKS5 proxies
 Added: 7.55.0
 Category: proxy auth
+Example: --socks5-gssapi --socks5 hostname:4096 $URL
 ---
 Tells curl to use GSS-API authentication when connecting to a SOCKS5 proxy.
 The GSS-API authentication is enabled by default (if curl is compiled with
diff --git a/docs/cmdline-opts/socks5-hostname.d b/docs/cmdline-opts/socks5-hostname.d
index 247d766..599e80e 100644
--- a/docs/cmdline-opts/socks5-hostname.d
+++ b/docs/cmdline-opts/socks5-hostname.d
@@ -3,6 +3,7 @@
 Help: SOCKS5 proxy, pass host name to proxy
 Added: 7.18.0
 Category: proxy
+Example: --socks5-hostname proxy.example:7000 $URL
 ---
 Use the specified SOCKS5 proxy (and let the proxy resolve the host name). If
 the port number is not specified, it is assumed at port 1080.
@@ -10,8 +11,8 @@
 This option overrides any previous use of --proxy, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks5
-hostname proxy with --proxy using a socks5h:// protocol prefix.
+This option is superfluous since you can specify a socks5 hostname proxy with
+--proxy using a socks5h:// protocol prefix. (Added in 7.21.7)
 
 Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time
 --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to
diff --git a/docs/cmdline-opts/socks5.d b/docs/cmdline-opts/socks5.d
index bbe92f0..85c349d 100644
--- a/docs/cmdline-opts/socks5.d
+++ b/docs/cmdline-opts/socks5.d
@@ -3,6 +3,7 @@
 Help: SOCKS5 proxy on given host + port
 Added: 7.18.0
 Category: proxy
+Example: --socks5 proxy.example:7000 $URL
 ---
 Use the specified SOCKS5 proxy - but resolve the host name locally. If the
 port number is not specified, it is assumed at port 1080.
@@ -10,8 +11,8 @@
 This option overrides any previous use of --proxy, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks5 proxy
-with --proxy using a socks5:// protocol prefix.
+This option is superfluous since you can specify a socks5 proxy with --proxy
+using a socks5:// protocol prefix. (Added in 7.21.7)
 
 Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at the same time
 --proxy is used with an HTTP/HTTPS proxy. In such a case curl first connects to
diff --git a/docs/cmdline-opts/speed-limit.d b/docs/cmdline-opts/speed-limit.d
index 3f9ad3a..8351d93 100644
--- a/docs/cmdline-opts/speed-limit.d
+++ b/docs/cmdline-opts/speed-limit.d
@@ -3,6 +3,8 @@
 Arg: <speed>
 Help: Stop transfers slower than this
 Category: connection
+Example: --speed-limit 300 --speed-time 10 $URL
+Added: 4.7
 ---
 If a download is slower than this given speed (in bytes per second) for
 speed-time seconds it gets aborted. speed-time is set with --speed-time and is
diff --git a/docs/cmdline-opts/speed-time.d b/docs/cmdline-opts/speed-time.d
index 81acabe..f32711f 100644
--- a/docs/cmdline-opts/speed-time.d
+++ b/docs/cmdline-opts/speed-time.d
@@ -3,6 +3,8 @@
 Arg: <seconds>
 Help: Trigger 'speed-limit' abort after this time
 Category: connection
+Example: --speed-limit 300 --speed-time 10 $URL
+Added: 4.7
 ---
 If a download is slower than speed-limit bytes per second during a speed-time
 period, the download gets aborted. If speed-time is used, the default
diff --git a/docs/cmdline-opts/ssl-allow-beast.d b/docs/cmdline-opts/ssl-allow-beast.d
index f18fe74..869ff49 100644
--- a/docs/cmdline-opts/ssl-allow-beast.d
+++ b/docs/cmdline-opts/ssl-allow-beast.d
@@ -2,9 +2,12 @@
 Help: Allow security flaw to improve interop
 Added: 7.25.0
 Category: tls
+Example: --ssl-allow-beast $URL
 ---
 This option tells curl to not work around a security flaw in the SSL3 and
-TLS1.0 protocols known as BEAST.  If this option isn't used, the SSL layer may
-use workarounds known to cause interoperability problems with some older SSL
-implementations. WARNING: this option loosens the SSL security, and by using
-this flag you ask for exactly that.
+TLS1.0 protocols known as BEAST.  If this option is not used, the SSL layer
+may use workarounds known to cause interoperability problems with some older
+SSL implementations.
+
+**WARNING**: this option loosens the SSL security, and by using this flag you
+ask for exactly that.
diff --git a/docs/cmdline-opts/ssl-auto-client-cert.d b/docs/cmdline-opts/ssl-auto-client-cert.d
index 16108ae..7581bdf 100644
--- a/docs/cmdline-opts/ssl-auto-client-cert.d
+++ b/docs/cmdline-opts/ssl-auto-client-cert.d
@@ -3,6 +3,7 @@
 Added: 7.77.0
 See-also: proxy-ssl-auto-client-cert
 Category: tls
+Example: --ssl-auto-client-cert $URL
 ---
 Tell libcurl to automatically locate and use a client certificate for
 authentication, when requested by the server. This option is only supported
diff --git a/docs/cmdline-opts/ssl-no-revoke.d b/docs/cmdline-opts/ssl-no-revoke.d
index 3b16142..dde77aa 100644
--- a/docs/cmdline-opts/ssl-no-revoke.d
+++ b/docs/cmdline-opts/ssl-no-revoke.d
@@ -2,6 +2,7 @@
 Help: Disable cert revocation checks (Schannel)
 Added: 7.44.0
 Category: tls
+Example: --ssl-no-revoke $URL
 ---
 (Schannel) This option tells curl to disable certificate revocation checks.
 WARNING: this option loosens the SSL security, and by using this flag you ask
diff --git a/docs/cmdline-opts/ssl-reqd.d b/docs/cmdline-opts/ssl-reqd.d
index 2e573e3..df50eb1 100644
--- a/docs/cmdline-opts/ssl-reqd.d
+++ b/docs/cmdline-opts/ssl-reqd.d
@@ -3,8 +3,9 @@
 Protocols: FTP IMAP POP3 SMTP
 Added: 7.20.0
 Category: tls
+Example: --ssl-reqd ftp://example.com
 ---
 Require SSL/TLS for the connection.  Terminates the connection if the server
-doesn't support SSL/TLS.
+does not support SSL/TLS.
 
 This option was formerly known as --ftp-ssl-reqd.
diff --git a/docs/cmdline-opts/ssl-revoke-best-effort.d b/docs/cmdline-opts/ssl-revoke-best-effort.d
index af22da4..2db3219 100644
--- a/docs/cmdline-opts/ssl-revoke-best-effort.d
+++ b/docs/cmdline-opts/ssl-revoke-best-effort.d
@@ -2,6 +2,7 @@
 Help: Ignore missing/offline cert CRL dist points
 Added: 7.70.0
 Category: tls
+Example: --ssl-revoke-best-effort $URL
 ---
 (Schannel) This option tells curl to ignore certificate revocation checks when
 they failed due to missing/offline distribution points for the revocation check
diff --git a/docs/cmdline-opts/ssl.d b/docs/cmdline-opts/ssl.d
index 8df4601..2a0ea27 100644
--- a/docs/cmdline-opts/ssl.d
+++ b/docs/cmdline-opts/ssl.d
@@ -3,10 +3,10 @@
 Protocols: FTP IMAP POP3 SMTP
 Added: 7.20.0
 Category: tls
+Example: --ssl pop3://example.com/
 ---
-
 Try to use SSL/TLS for the connection.  Reverts to a non-secure connection if
-the server doesn't support SSL/TLS.  See also --ftp-ssl-control and --ssl-reqd
+the server does not support SSL/TLS.  See also --ftp-ssl-control and --ssl-reqd
 for different levels of encryption required.
 
 This option was formerly known as --ftp-ssl (Added in 7.11.0). That option
diff --git a/docs/cmdline-opts/sslv2.d b/docs/cmdline-opts/sslv2.d
index f9ee99d..f905964 100644
--- a/docs/cmdline-opts/sslv2.d
+++ b/docs/cmdline-opts/sslv2.d
@@ -2,12 +2,14 @@
 Long: sslv2
 Tags: Versions
 Protocols: SSL
-Added:
+Added: 5.9
 Mutexed: sslv3 tlsv1 tlsv1.1 tlsv1.2
 Requires: TLS
 See-also: http1.1 http2
 Help: Use SSLv2
 Category: tls
+Example: --sslv2 $URL
 ---
-This option previously asked curl to use SSLv2, but starting in curl 7.77.0 this
-instruction is ignored. SSLv2 is widely considered insecure (see RFC 6176).
+This option previously asked curl to use SSLv2, but starting in curl 7.77.0
+this instruction is ignored. SSLv2 is widely considered insecure (see RFC
+6176).
diff --git a/docs/cmdline-opts/sslv3.d b/docs/cmdline-opts/sslv3.d
index e8b2c35..6599531 100644
--- a/docs/cmdline-opts/sslv3.d
+++ b/docs/cmdline-opts/sslv3.d
@@ -2,12 +2,13 @@
 Long: sslv3
 Tags: Versions
 Protocols: SSL
-Added:
+Added: 5.9
 Mutexed: sslv2 tlsv1 tlsv1.1 tlsv1.2
 Requires: TLS
 See-also: http1.1 http2
 Help: Use SSLv3
 Category: tls
+Example: --sslv3 $URL
 ---
 This option previously asked curl to use SSLv3, but starting in curl 7.77.0
 this instruction is ignored. SSLv3 is widely considered insecure (see RFC
diff --git a/docs/cmdline-opts/stderr.d b/docs/cmdline-opts/stderr.d
index 1154efb..95b6604 100644
--- a/docs/cmdline-opts/stderr.d
+++ b/docs/cmdline-opts/stderr.d
@@ -3,8 +3,13 @@
 Help: Where to redirect stderr
 See-also: verbose silent
 Category: verbose
+Example: --stderr output.txt $URL
+Added: 6.2
 ---
 Redirect all writes to stderr to the specified file instead. If the file name
 is a plain '-', it is instead written to stdout.
 
+This option is global and does not need to be specified for each use of
+--next.
+
 If this option is used several times, the last one will be used.
diff --git a/docs/cmdline-opts/styled-output.d b/docs/cmdline-opts/styled-output.d
index 8aa4a0f..bf63601 100644
--- a/docs/cmdline-opts/styled-output.d
+++ b/docs/cmdline-opts/styled-output.d
@@ -2,6 +2,10 @@
 Help: Enable styled output for HTTP headers
 Added: 7.61.0
 Category: verbose
+Example: --styled-output -I $URL
 ---
 Enables the automatic use of bold font styles when writing HTTP headers to the
 terminal. Use --no-styled-output to switch them off.
+
+This option is global and does not need to be specified for each use of
+--next.
diff --git a/docs/cmdline-opts/suppress-connect-headers.d b/docs/cmdline-opts/suppress-connect-headers.d
index b4e2a17..de46562 100644
--- a/docs/cmdline-opts/suppress-connect-headers.d
+++ b/docs/cmdline-opts/suppress-connect-headers.d
@@ -2,8 +2,10 @@
 Help: Suppress proxy CONNECT response headers
 See-also: dump-header include proxytunnel
 Category: proxy
+Example: --suppress-connect-headers --include -x proxy $URL
+Added: 7.54.0
 ---
-When --proxytunnel is used and a CONNECT request is made don't output proxy
+When --proxytunnel is used and a CONNECT request is made do not output proxy
 CONNECT response headers. This option is meant to be used with --dump-header or
 --include which are used to show protocol headers in the output. It has no
 effect on debug options such as --verbose or --trace, or any statistics.
diff --git a/docs/cmdline-opts/tcp-fastopen.d b/docs/cmdline-opts/tcp-fastopen.d
index faef499..e7e9d2e 100644
--- a/docs/cmdline-opts/tcp-fastopen.d
+++ b/docs/cmdline-opts/tcp-fastopen.d
@@ -2,5 +2,6 @@
 Added: 7.49.0
 Help: Use TCP Fast Open
 Category: connection
+Example: --tcp-fastopen $URL
 ---
 Enable use of TCP Fast Open (RFC7413).
diff --git a/docs/cmdline-opts/tcp-nodelay.d b/docs/cmdline-opts/tcp-nodelay.d
index 90483d2..42161e7 100644
--- a/docs/cmdline-opts/tcp-nodelay.d
+++ b/docs/cmdline-opts/tcp-nodelay.d
@@ -2,9 +2,10 @@
 Help: Use the TCP_NODELAY option
 Added: 7.11.2
 Category: connection
+Example: --tcp-nodelay $URL
 ---
 Turn on the TCP_NODELAY option. See the *curl_easy_setopt(3)* man page for
 details about this option.
 
 Since 7.50.2, curl sets this option by default and you need to explicitly
-switch it off if you don't want it on.
+switch it off if you do not want it on.
diff --git a/docs/cmdline-opts/telnet-option.d b/docs/cmdline-opts/telnet-option.d
index 789de3e..1751cbf 100644
--- a/docs/cmdline-opts/telnet-option.d
+++ b/docs/cmdline-opts/telnet-option.d
@@ -3,6 +3,8 @@
 Arg: <opt=val>
 Help: Set telnet option
 Category: telnet
+Example: -t TTYPE=vt100 telnet://example.com/
+Added: 7.7
 ---
 Pass options to the telnet protocol. Supported options are:
 
diff --git a/docs/cmdline-opts/tftp-blksize.d b/docs/cmdline-opts/tftp-blksize.d
index 6e67ed2..3b19e5c 100644
--- a/docs/cmdline-opts/tftp-blksize.d
+++ b/docs/cmdline-opts/tftp-blksize.d
@@ -4,6 +4,7 @@
 Protocols: TFTP
 Added: 7.20.0
 Category: tftp
+Example: --tftp-blksize 1024 tftp://example.com/file
 ---
 Set TFTP BLKSIZE option (must be >512). This is the block size that curl will
 try to use when transferring data to or from a TFTP server. By default 512
diff --git a/docs/cmdline-opts/tftp-no-options.d b/docs/cmdline-opts/tftp-no-options.d
index 0233273..9ff334b 100644
--- a/docs/cmdline-opts/tftp-no-options.d
+++ b/docs/cmdline-opts/tftp-no-options.d
@@ -3,6 +3,7 @@
 Protocols: TFTP
 Added: 7.48.0
 Category: tftp
+Example: --tftp-no-options tftp://192.168.0.1/
 ---
 Tells curl not to send TFTP options requests.
 
diff --git a/docs/cmdline-opts/time-cond.d b/docs/cmdline-opts/time-cond.d
index 0b56c6e..b84897f 100644
--- a/docs/cmdline-opts/time-cond.d
+++ b/docs/cmdline-opts/time-cond.d
@@ -4,10 +4,14 @@
 Help: Transfer based on a time condition
 Protocols: HTTP FTP
 Category: http ftp
+Example: -z "Wed 01 Sep 2021 12:18:00" $URL
+Example: -z "-Wed 01 Sep 2021 12:18:00" $URL
+Example: -z file $URL
+Added: 5.8
 ---
 Request a file that has been modified later than the given time and date, or
 one that has been modified before that time. The <date expression> can be all
-sorts of date strings or if it doesn't match any internal ones, it is taken as
+sorts of date strings or if it does not match any internal ones, it is taken as
 a filename and tries to get the modification date (mtime) from <file>
 instead. See the *curl_getdate(3)* man pages for date expression details.
 
diff --git a/docs/cmdline-opts/tls-max.d b/docs/cmdline-opts/tls-max.d
index 07eb654..54431ac 100644
--- a/docs/cmdline-opts/tls-max.d
+++ b/docs/cmdline-opts/tls-max.d
@@ -7,6 +7,8 @@
 See-also: tlsv1.0 tlsv1.1 tlsv1.2 tlsv1.3
 Help: Set maximum allowed TLS version
 Category: tls
+Example: --tls-max 1.2 $URL
+Example: --tls-max 1.3 --tlsv1.2 $URL
 ---
 VERSION defines maximum supported TLS version. The minimum acceptable version
 is set by tlsv1.0, tlsv1.1, tlsv1.2 or tlsv1.3.
diff --git a/docs/cmdline-opts/tls13-ciphers.d b/docs/cmdline-opts/tls13-ciphers.d
index 0df1695..6ed0066 100644
--- a/docs/cmdline-opts/tls13-ciphers.d
+++ b/docs/cmdline-opts/tls13-ciphers.d
@@ -3,6 +3,8 @@
 help: TLS 1.3 cipher suites to use
 Protocols: TLS
 Category: tls
+Example: --tls13-ciphers TLS_AES_128_GCM_SHA256 $URL
+Added: 7.61.0
 ---
 Specifies which cipher suites to use in the connection if it negotiates TLS
 1.3. The list of ciphers suites must specify valid ciphers. Read up on TLS 1.3
diff --git a/docs/cmdline-opts/tlsauthtype.d b/docs/cmdline-opts/tlsauthtype.d
index 5b283cf..57b6ab8 100644
--- a/docs/cmdline-opts/tlsauthtype.d
+++ b/docs/cmdline-opts/tlsauthtype.d
@@ -3,6 +3,7 @@
 Help: TLS authentication type
 Added: 7.21.4
 Category: tls auth
+Example: --tlsauthtype SRP $URL
 ---
 Set TLS authentication type. Currently, the only supported option is "SRP",
 for TLS-SRP (RFC 5054). If --tlsuser and --tlspassword are specified but
diff --git a/docs/cmdline-opts/tlspassword.d b/docs/cmdline-opts/tlspassword.d
index e7e3780..8bfc1d5 100644
--- a/docs/cmdline-opts/tlspassword.d
+++ b/docs/cmdline-opts/tlspassword.d
@@ -3,8 +3,9 @@
 Help: TLS password
 Added: 7.21.4
 Category: tls auth
+Example: --tlspassword pwd --tlsuser user $URL
 ---
 Set password for use with the TLS authentication method specified with
 --tlsauthtype. Requires that --tlsuser also be set.
 
-This doesn't work with TLS 1.3.
+This option does not work with TLS 1.3.
diff --git a/docs/cmdline-opts/tlsuser.d b/docs/cmdline-opts/tlsuser.d
index ada1526..266d709 100644
--- a/docs/cmdline-opts/tlsuser.d
+++ b/docs/cmdline-opts/tlsuser.d
@@ -3,8 +3,9 @@
 Help: TLS user name
 Added: 7.21.4
 Category: tls auth
+Example: --tlspassword pwd --tlsuser user $URL
 ---
 Set username for use with the TLS authentication method specified with
 --tlsauthtype. Requires that --tlspassword also is set.
 
-This doesn't work with TLS 1.3.
+This option does not work with TLS 1.3.
diff --git a/docs/cmdline-opts/tlsv1.0.d b/docs/cmdline-opts/tlsv1.0.d
index 4f0176f..5fc18dc 100644
--- a/docs/cmdline-opts/tlsv1.0.d
+++ b/docs/cmdline-opts/tlsv1.0.d
@@ -3,6 +3,7 @@
 Protocols: TLS
 Added: 7.34.0
 Category: tls
+Example: --tlsv1.0 $URL
 ---
 Forces curl to use TLS version 1.0 or later when connecting to a remote TLS server.
 
diff --git a/docs/cmdline-opts/tlsv1.1.d b/docs/cmdline-opts/tlsv1.1.d
index b3649f7..6d169bf 100644
--- a/docs/cmdline-opts/tlsv1.1.d
+++ b/docs/cmdline-opts/tlsv1.1.d
@@ -3,6 +3,7 @@
 Protocols: TLS
 Added: 7.34.0
 Category: tls
+Example: --tlsv1.1 $URL
 ---
 Forces curl to use TLS version 1.1 or later when connecting to a remote TLS server.
 
diff --git a/docs/cmdline-opts/tlsv1.2.d b/docs/cmdline-opts/tlsv1.2.d
index dffbccb..5df843f 100644
--- a/docs/cmdline-opts/tlsv1.2.d
+++ b/docs/cmdline-opts/tlsv1.2.d
@@ -3,6 +3,7 @@
 Protocols: TLS
 Added: 7.34.0
 Category: tls
+Example: --tlsv1.2 $URL
 ---
 Forces curl to use TLS version 1.2 or later when connecting to a remote TLS server.
 
diff --git a/docs/cmdline-opts/tlsv1.3.d b/docs/cmdline-opts/tlsv1.3.d
index 37d9535..cc9a53b 100644
--- a/docs/cmdline-opts/tlsv1.3.d
+++ b/docs/cmdline-opts/tlsv1.3.d
@@ -3,6 +3,7 @@
 Protocols: TLS
 Added: 7.52.0
 Category: tls
+Example: --tlsv1.3 $URL
 ---
 Forces curl to use TLS version 1.3 or later when connecting to a remote TLS
 server.
diff --git a/docs/cmdline-opts/tlsv1.d b/docs/cmdline-opts/tlsv1.d
index d4c0c51..a92b239 100644
--- a/docs/cmdline-opts/tlsv1.d
+++ b/docs/cmdline-opts/tlsv1.d
@@ -2,12 +2,13 @@
 Long: tlsv1
 Tags: Versions
 Protocols: SSL
-Added:
+Added: 7.9.2
 Mutexed: tlsv1.1 tlsv1.2 tlsv1.3
 Requires: TLS
 See-also: http1.1 http2
 Help: Use TLSv1.0 or greater
 Category: tls
+Example: --tlsv1 $URL
 ---
 Tells curl to use at least TLS version 1.x when negotiating with a remote TLS
 server. That means TLS version 1.0 or higher
diff --git a/docs/cmdline-opts/tr-encoding.d b/docs/cmdline-opts/tr-encoding.d
index ce1d003..7fdf9e0 100644
--- a/docs/cmdline-opts/tr-encoding.d
+++ b/docs/cmdline-opts/tr-encoding.d
@@ -3,6 +3,7 @@
 Help: Request compressed transfer encoding
 Protocols: HTTP
 Category: http
+Example: --tr-encoding $URL
 ---
 Request a compressed Transfer-Encoding response using one of the algorithms
 curl supports, and uncompress the data while receiving it.
diff --git a/docs/cmdline-opts/trace-ascii.d b/docs/cmdline-opts/trace-ascii.d
index fa7e16c..914392a 100644
--- a/docs/cmdline-opts/trace-ascii.d
+++ b/docs/cmdline-opts/trace-ascii.d
@@ -3,13 +3,18 @@
 Help: Like --trace, but without hex output
 Mutexed: trace verbose
 Category: verbose
+Example: --trace-ascii log.txt $URL
+Added: 7.9.7
 ---
 Enables a full trace dump of all incoming and outgoing data, including
 descriptive information, to the given output file. Use "-" as filename to have
 the output sent to stdout.
 
-This is very similar to --trace, but leaves out the hex part and only shows
-the ASCII part of the dump. It makes smaller output that might be easier to
-read for untrained humans.
+This is similar to --trace, but leaves out the hex part and only shows the
+ASCII part of the dump. It makes smaller output that might be easier to read
+for untrained humans.
+
+This option is global and does not need to be specified for each use of
+--next.
 
 If this option is used several times, the last one will be used.
diff --git a/docs/cmdline-opts/trace-time.d b/docs/cmdline-opts/trace-time.d
index 19a31a7..083270d 100644
--- a/docs/cmdline-opts/trace-time.d
+++ b/docs/cmdline-opts/trace-time.d
@@ -2,5 +2,9 @@
 Help: Add time stamps to trace/verbose output
 Added: 7.14.0
 Category: verbose
+Example: --trace-time --trace-ascii output $URL
 ---
 Prepends a time stamp to each trace or verbose line that curl displays.
+
+This option is global and does not need to be specified for each use of
+--next.
diff --git a/docs/cmdline-opts/trace.d b/docs/cmdline-opts/trace.d
index 502dafd..a00a543 100644
--- a/docs/cmdline-opts/trace.d
+++ b/docs/cmdline-opts/trace.d
@@ -3,10 +3,15 @@
 Help: Write a debug trace to FILE
 Mutexed: verbose trace-ascii
 Category: verbose
+Example: --trace log.txt $URL
+Added: 7.9.7
 ---
 Enables a full trace dump of all incoming and outgoing data, including
 descriptive information, to the given output file. Use "-" as filename to have
 the output sent to stdout. Use "%" as filename to have the output sent to
 stderr.
 
+This option is global and does not need to be specified for each use of
+--next.
+
 If this option is used several times, the last one will be used.
diff --git a/docs/cmdline-opts/unix-socket.d b/docs/cmdline-opts/unix-socket.d
index e4ea91d..c526ca6 100644
--- a/docs/cmdline-opts/unix-socket.d
+++ b/docs/cmdline-opts/unix-socket.d
@@ -4,5 +4,6 @@
 Added: 7.40.0
 Protocols: HTTP
 Category: connection
+Example: --unix-socket socket-path $URL
 ---
 Connect through this Unix domain socket, instead of using the network.
diff --git a/docs/cmdline-opts/upload-file.d b/docs/cmdline-opts/upload-file.d
index 63584b7..fbf969e 100644
--- a/docs/cmdline-opts/upload-file.d
+++ b/docs/cmdline-opts/upload-file.d
@@ -3,6 +3,10 @@
 Arg: <file>
 Help: Transfer local FILE to destination
 Category: important upload
+Example: -T file $URL
+Example: -T "img[1-1000].png" ftp://ftp.example.com/
+Example: --upload-file "{file1,file2}" $URL
+Added: 4.0
 ---
 This transfers the specified local file to the remote URL. If there is no file
 part in the specified URL, curl will append the local file name. NOTE that you
@@ -12,21 +16,15 @@
 this is used on an HTTP(S) server, the PUT command will be used.
 
 Use the file name "-" (a single dash) to use stdin instead of a given file.
-Alternately, the file name "." (a single period) may be specified instead
-of "-" to use stdin in non-blocking mode to allow reading server output
-while stdin is being uploaded.
+Alternately, the file name "." (a single period) may be specified instead of
+"-" to use stdin in non-blocking mode to allow reading server output while
+stdin is being uploaded.
 
 You can specify one --upload-file for each URL on the command line. Each
 --upload-file + URL pair specifies what to upload and to where. curl also
 supports "globbing" of the --upload-file argument, meaning that you can upload
 multiple files to a single URL by using the same URL globbing style supported
-in the URL, like this:
-
- curl --upload-file "{file1,file2}" http://www.example.com
-
-or even
-
- curl -T "img[1-1000].png" ftp://ftp.example.com/upload/
+in the URL.
 
 When uploading to an SMTP server: the uploaded data is assumed to be RFC 5322
 formatted. It has to feature the necessary set of headers and mail body
diff --git a/docs/cmdline-opts/url.d b/docs/cmdline-opts/url.d
index 30f0bf7..f0ce9f4 100644
--- a/docs/cmdline-opts/url.d
+++ b/docs/cmdline-opts/url.d
@@ -2,6 +2,8 @@
 Arg: <url>
 Help: URL to work with
 Category: curl
+Example: --url $URL
+Added: 7.5
 ---
 Specify a URL to fetch. This option is mostly handy when you want to specify
 URL(s) in a config file.
@@ -15,5 +17,5 @@
 This option may be used any number of times. To control where this URL is
 written, use the --output or the --remote-name options.
 
-Warning: On Windows, particular file:// accesses can be converted to network
-accesses by the operating system. Beware!
+**WARNING**: On Windows, particular file:// accesses can be converted to
+network accesses by the operating system. Beware!
diff --git a/docs/cmdline-opts/use-ascii.d b/docs/cmdline-opts/use-ascii.d
index 3a5a6a4..dae934e 100644
--- a/docs/cmdline-opts/use-ascii.d
+++ b/docs/cmdline-opts/use-ascii.d
@@ -3,6 +3,8 @@
 Help: Use ASCII/text transfer
 Protocols: FTP LDAP
 Category: misc
+Example: -B ftp://example.com/README
+Added: 5.0
 ---
 Enable ASCII transfer. For FTP, this can also be enforced by using a URL that
 ends with ";type=A". This option causes data sent to stdout to be in text mode
diff --git a/docs/cmdline-opts/user-agent.d b/docs/cmdline-opts/user-agent.d
index ec2ca82..1b89af6 100644
--- a/docs/cmdline-opts/user-agent.d
+++ b/docs/cmdline-opts/user-agent.d
@@ -4,8 +4,9 @@
 Help: Send User-Agent <name> to server
 Protocols: HTTP
 Category: important http
+Example: -A "Agent 007" $URL
+Added: 4.5.1
 ---
-
 Specify the User-Agent string to send to the HTTP server. To encode blanks in
 the string, surround the string with single quote marks. This header can also
 be set with the --header or the --proxy-header options.
diff --git a/docs/cmdline-opts/user.d b/docs/cmdline-opts/user.d
index b588700..b84c620 100644
--- a/docs/cmdline-opts/user.d
+++ b/docs/cmdline-opts/user.d
@@ -3,6 +3,8 @@
 Arg: <user:password>
 Help: Server user and password
 Category: important auth
+Example: -u user:secret $URL
+Added: 4.0
 ---
 Specify the user name and password to use for server authentication. Overrides
 --netrc and --netrc-optional.
@@ -16,12 +18,12 @@
 On systems where it works, curl will hide the given option argument from
 process listings. This is not enough to protect credentials from possibly
 getting seen by other users on the same system as they will still be visible
-for a brief moment before cleared. Such sensitive data should be retrieved
-from a file instead or similar and never used in clear text in a command line.
+for a moment before cleared. Such sensitive data should be retrieved from a
+file instead or similar and never used in clear text in a command line.
 
 When using Kerberos V5 with a Windows based server you should include the
 Windows domain name in the user name, in order for the server to successfully
-obtain a Kerberos Ticket. If you don't then the initial authentication
+obtain a Kerberos Ticket. If you do not, then the initial authentication
 handshake may fail.
 
 When using NTLM, the user name can be specified simply as the user name,
diff --git a/docs/cmdline-opts/verbose.d b/docs/cmdline-opts/verbose.d
index 8db1ea2..26e00e7 100644
--- a/docs/cmdline-opts/verbose.d
+++ b/docs/cmdline-opts/verbose.d
@@ -4,6 +4,8 @@
 Help: Make the operation more talkative
 See-also: include
 Category: important verbose
+Example: --verbose $URL
+Added: 4.0
 ---
 Makes curl verbose during the operation. Useful for debugging and seeing
 what's going on "under the hood". A line starting with '>' means "header data"
@@ -12,9 +14,12 @@
 curl.
 
 If you only want HTTP headers in the output, --include might be the option
-you're looking for.
+you are looking for.
 
-If you think this option still doesn't give you enough details, consider using
+If you think this option still does not give you enough details, consider using
 --trace or --trace-ascii instead.
 
+This option is global and does not need to be specified for each use of
+--next.
+
 Use --silent to make curl really quiet.
diff --git a/docs/cmdline-opts/version.d b/docs/cmdline-opts/version.d
index a257ebd..723386d 100644
--- a/docs/cmdline-opts/version.d
+++ b/docs/cmdline-opts/version.d
@@ -2,6 +2,8 @@
 Short: V
 Help: Show version number and quit
 Category: important curl
+Example: --version
+Added: 4.0
 ---
 Displays information about curl and the libcurl version it uses.
 
diff --git a/docs/cmdline-opts/write-out.d b/docs/cmdline-opts/write-out.d
index df50c31..e33babc 100644
--- a/docs/cmdline-opts/write-out.d
+++ b/docs/cmdline-opts/write-out.d
@@ -3,6 +3,8 @@
 Arg: <format>
 Help: Use output FORMAT after completion
 Category: verbose
+Example: -w '%{http_code}\\n' $URL
+Added: 6.5
 ---
 Make curl display information on stdout after a completed transfer. The format
 is a string that may contain plain text mixed with any number of
@@ -47,8 +49,7 @@
 .TP
 .B http_code
 The numerical response code that was found in the last retrieved HTTP(S) or
-FTP(s) transfer. In 7.18.2 the alias **response_code** was added to show the
-same info.
+FTP(s) transfer.
 .TP
 .B http_connect
 The numerical code that was found in the last response (from a proxy) to a
@@ -111,7 +112,8 @@
 The URL scheme (sometimes called protocol) that was effectively used. (Added in 7.52.0)
 .TP
 .B size_download
-The total amount of bytes that were downloaded.
+The total amount of bytes that were downloaded. This is the size of the
+body/data that was transferred, excluding headers.
 .TP
 .B size_header
 The total amount of bytes of the downloaded headers.
@@ -120,7 +122,8 @@
 The total amount of bytes that were sent in the HTTP request.
 .TP
 .B size_upload
-The total amount of bytes that were uploaded.
+The total amount of bytes that were uploaded. This is the size of the
+body/data that was transferred, excluding headers.
 .TP
 .B speed_download
 The average download speed that curl measured for the complete download. Bytes
@@ -182,7 +185,7 @@
 same index number as the origin globbed URL. (Added in 7.75.0)
 .TP
 .B url_effective
-The URL that was fetched last. This is most meaningful if you've told curl
+The URL that was fetched last. This is most meaningful if you have told curl
 to follow location: headers.
 .RE
 .IP
diff --git a/docs/cmdline-opts/xattr.d b/docs/cmdline-opts/xattr.d
index 4b64c6c..b5c17fd 100644
--- a/docs/cmdline-opts/xattr.d
+++ b/docs/cmdline-opts/xattr.d
@@ -1,6 +1,8 @@
 Long: xattr
 Help: Store metadata in extended file attributes
 Category: misc
+Example: --xattr -o storage $URL
+Added: 7.21.3
 ---
 When saving output to a file, this option tells curl to store certain file
 metadata in extended file attributes. Currently, the URL is stored in the
diff --git a/docs/curl-config.1 b/docs/curl-config.1
index 7323347..bcaa5c1 100644
--- a/docs/curl-config.1
+++ b/docs/curl-config.1
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl-config 1 "November 04, 2020" "Curl 7.78.0" "curl-config manual"
+.TH curl-config 1 "November 04, 2020" "Curl 7.80.0" "curl-config manual"
 
 .SH NAME
 curl-config \- Get information about a libcurl installation
diff --git a/docs/curl.1 b/docs/curl.1
index e418ad1..2e69b9f 100644
--- a/docs/curl.1
+++ b/docs/curl.1
@@ -22,18 +22,16 @@
 .\"
 .\" DO NOT EDIT. Generated by the curl project gen.pl man page generator.
 .\"
-.TH curl 1 "November 16, 2016" "Curl 7.78.0" "Curl Manual"
-
+.TH curl 1 "November 10 2021" "curl 7.80.0" "curl Manual"
 .SH NAME
 curl \- transfer a URL
 .SH SYNOPSIS
 .B curl [options / URLs]
 .SH DESCRIPTION
-.B curl
-is a tool to transfer data from or to a server, using one of the supported
-protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP,
-LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP,
-SMTPS, TELNET or TFTP). The command is designed to work without user
+\fBcurl\fP is a tool for transferring data from or to a server. It supports these
+protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS, HTTP, HTTPS, IMAP, IMAPS,
+LDAP, LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP, SMB, SMBS, SMTP,
+SMTPS, TELNET or TFTP. The command is designed to work without user
 interaction.
 
 curl offers a busload of useful tricks like proxy support, user
@@ -44,7 +42,7 @@
 curl is powered by libcurl for all transfer-related features. See
 \fIlibcurl(3)\fP for details.
 .SH URL
-The URL syntax is protocol-dependent. You'll find a detailed description in
+The URL syntax is protocol-dependent. You find a detailed description in
 RFC 3986.
 
 You can specify multiple URLs or parts of URLs by writing part sets within
@@ -79,7 +77,7 @@
 When using [] or {} sequences when invoked from a command line prompt, you
 probably have to put the full URL within double quotes to avoid the shell from
 interfering with it. This also goes for other characters treated special, like
-for example '&', '?' and '*'.
+for example \(aq&', '?' and '*'.
 
 Provide the IPv6 zone index in the URL with an escaped percentage sign and the
 interface name. Like in
@@ -121,7 +119,7 @@
 .IP FTP(S)
 curl supports the File Transfer Protocol with a lot of tweaks and levers. With
 or without using TLS.
-.IP GOPHER
+.IP GOPHER(S)
 Retrieve files.
 .IP HTTP(S)
 curl supports HTTP with numerous options and variations. It can speak HTTP
@@ -134,8 +132,8 @@
 curl can do directory lookups for you, with or without TLS.
 .IP MQTT
 curl supports MQTT version 3. Downloading over MQTT equals "subscribe" to a
-topic while uploading/posting equals "publish" on a topic. MQTT support is
-experimental and TLS based MQTT is not supported (yet).
+topic while uploading/posting equals "publish" on a topic. MQTT over TLS is
+not supported (yet).
 .IP POP3(S)
 Downloading from a pop3 server means getting a mail. With or without using
 TLS.
@@ -189,26 +187,27 @@
 separator. The long "double-dash" form, \fI\-d, \-\-data\fP for example, requires a space
 between it and its value.
 
-Short version options that don't need any additional values can be used
+Short version options that do not need any additional values can be used
 immediately next to each other, like for example you can specify all the
 options \-O, \-L and \-v at once as \-OLv.
 
 In general, all boolean options are enabled with \-\-\fBoption\fP and yet again
 disabled with \-\-\fBno-\fPoption. That is, you use the exact same option name
 but prefix it with "no-". However, in this list we mostly only list and show
-the \-\-option version of them. (This concept with \-\-no options was added in
-7.19.0. Previously most options were toggled on/off through repeated use of
-the same command line option.)
+the \-\-option version of them.
 .IP "\-\-abstract-unix-socket <path>"
 (HTTP) Connect through an abstract Unix domain socket, instead of using the network.
-Note: netstat shows the path of an abstract socket prefixed with '@', however
+Note: netstat shows the path of an abstract socket prefixed with \(aq@', however
 the <path> argument should not have this leading character.
 
+Example:
+.nf
+ curl --abstract-unix-socket socketpath https://example.com
+.fi
+
 Added in 7.53.0.
 .IP "\-\-alt-svc <file name>"
-(HTTPS) WARNING: this option is experimental. Do not use in production.
-
-This option enables the alt-svc parser in curl. If the file name points to an
+(HTTPS) This option enables the alt-svc parser in curl. If the file name points to an
 existing alt-svc cache file, that will be used. After a completed transfer,
 the cache will be saved to the file name again if it has been modified.
 
@@ -218,6 +217,11 @@
 If this option is used several times, curl will load contents from all the
 files but the last one will be used for saving.
 
+Example:
+.nf
+ curl --alt-svc svc.txt https://example.com
+.fi
+
 Added in 7.64.1.
 .IP "\-\-anyauth"
 (HTTP) Tells curl to figure out authentication method by itself, and use the most
@@ -233,11 +237,21 @@
 
 Used together with \fI\-u, \-\-user\fP.
 
+Example:
+.nf
+ curl --anyauth --user me:pwd https://example.com
+.fi
+
 See also \fI--proxy-anyauth\fP, \fI--basic\fP and \fI--digest\fP.
 .IP "\-a, \-\-append"
 (FTP SFTP) When used in an upload, this makes curl append to the target file instead of
-overwriting it. If the remote file doesn't exist, it will be created.  Note
+overwriting it. If the remote file does not exist, it will be created.  Note
 that this flag is ignored by some SFTP servers (including OpenSSH).
+
+Example:
+.nf
+ curl --upload-file local --append ftp://example.com/
+.fi
 .IP "\-\-aws-sigv4 <provider1[:provider2[:region[:service]]]>"
 Use AWS V4 signature authentication in the transfer.
 
@@ -251,6 +265,11 @@
 The service argument is a string that points to a function provided by a cloud
 (service-code) when the service name is omitted from the endpoint.
 
+Example:
+.nf
+ curl --aws-sigv4 "aws:amz:east-2:es" --user "key:secret" https://example.com
+.fi
+
 Added in 7.75.0.
 .IP "\-\-basic"
 (HTTP) Tells curl to use HTTP Basic authentication with the remote host. This is the
@@ -260,6 +279,11 @@
 
 Used together with \fI\-u, \-\-user\fP.
 
+Example:
+.nf
+ curl -u name:password --basic https://example.com
+.fi
+
 See also \fI--proxy-basic\fP.
 .IP "\-\-cacert <file>"
 (TLS) Tells curl to use the specified certificate file to verify the peer. The file
@@ -267,12 +291,12 @@
 format. Normally curl is built to use a default file for this, so this option
 is typically used to alter that default file.
 
-curl recognizes the environment variable named 'CURL_CA_BUNDLE' if it is
+curl recognizes the environment variable named \(aqCURL_CA_BUNDLE' if it is
 set, and uses the given path as a path to a CA cert bundle. This option
 overrides that variable.
 
 The windows version of curl will automatically look for a CA certs file named
-\'curl-ca-bundle.crt\', either in the same directory as curl.exe, or in the
+\(aqcurl-ca-bundle.crt', either in the same directory as curl.exe, or in the
 Current Working Directory, or in any folder along your PATH.
 
 If curl is built against the NSS SSL library, the NSS PEM PKCS#11 module
@@ -282,14 +306,19 @@
 option is supported for backward compatibility with other SSL engines, but it
 should not be set. If the option is not set, then curl will use the
 certificates in the system and user Keychain to verify the peer, which is the
-preferred method of verifying the peer's certificate chain.
+preferred method of verifying the peer\(aqs certificate chain.
 
-(Schannel only) This option is supported for Schannel in Windows 7 or later with
-libcurl 7.60 or later. This option is supported for backward compatibility
-with other SSL engines; instead it is recommended to use Windows' store of
-root certificates (the default for Schannel).
+(Schannel only) This option is supported for Schannel in Windows 7 or later
+with libcurl 7.60 or later. This option is supported for backward
+compatibility with other SSL engines; instead it is recommended to use
+Windows\(aq store of root certificates (the default for Schannel).
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --cacert CA-file.txt https://example.com
+.fi
 .IP "\-\-capath <dir>"
 (TLS) Tells curl to use the specified certificate directory to verify the
 peer. Multiple paths can be provided by separating them with ":" (e.g.
@@ -301,6 +330,11 @@
 
 If this option is set, the default capath value will be ignored, and if it is
 used several times, the last one will be used.
+
+Example:
+.nf
+ curl --capath /local/directory https://example.com
+.fi
 .IP "\-\-cert-status"
 (TLS) Tells curl to verify the status of the server certificate by using the
 Certificate Status Request (aka. OCSP stapling) TLS extension.
@@ -311,6 +345,11 @@
 
 This is currently only implemented in the OpenSSL, GnuTLS and NSS backends.
 
+Example:
+.nf
+ curl --cert-status https://example.com
+.fi
+
 Added in 7.41.0.
 .IP "\-\-cert-type <type>"
 (TLS) Tells curl what type the provided client certificate is using. PEM, DER, ENG
@@ -318,12 +357,17 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --cert-type PEM --cert file https://example.com
+.fi
+
 See also \fI-E, --cert\fP, \fI--key\fP and \fI--key-type\fP.
 .IP "\-E, \-\-cert <certificate[:password]>"
 (TLS) Tells curl to use the specified client certificate file when getting a file
 with HTTPS, FTPS or another SSL-based protocol. The certificate must be in
 PKCS#12 format if using Secure Transport, or PEM format if using any other
-engine.  If the optional password isn't specified, it will be queried for on
+engine.  If the optional password is not specified, it will be queried for on
 the terminal. Note that this option assumes a \&"certificate" file that is the
 private key and the client certificate concatenated! See \fI\-E, \-\-cert\fP and \fI\-\-key\fP to
 specify them independently.
@@ -364,6 +408,11 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --cert certfile --key keyfile https://example.com
+.fi
+
 See also \fI--cert-type\fP, \fI--key\fP and \fI--key-type\fP.
 .IP "\-\-ciphers <list of ciphers>"
 (TLS) Specifies which ciphers to use in the connection. The list of ciphers must
@@ -372,19 +421,34 @@
  https://curl.se/docs/ssl-ciphers.html
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --ciphers ECDHE-ECDSA-AES256-CCM8 https://example.com
+.fi
 .IP "\-\-compressed-ssh"
 (SCP SFTP) Enables built-in SSH compression.
 This is a request, not an order; the server may or may not do it.
 
+Example:
+.nf
+ curl --compressed-ssh sftp://example.com/
+.fi
+
 Added in 7.56.0.
 .IP "\-\-compressed"
 (HTTP) Request a compressed response using one of the algorithms curl supports, and
 automatically decompress the content. Headers are not modified.
 
 If this option is used and the server sends an unsupported encoding, curl will
-report an error.
-.IP "\-K, \-\-config <file>"
+report an error. This is a request, not an order; the server may or may not
+deliver data compressed.
 
+Example:
+.nf
+ curl --compressed https://example.com
+.fi
+.IP "\-K, \-\-config <file>"
 Specify a text file to read curl arguments from. The command line arguments
 found in the text file will be used as if they were provided on the command
 line.
@@ -401,12 +465,12 @@
 sequences are available: \\\\, \\", \\t, \\n, \\r and \\v. A backslash
 preceding any other letter is ignored.
 
-If the first column of a config line is a '#' character, the rest of the line
+If the first column of a config line is a \(aq#' character, the rest of the line
 will be treated as a comment.
 
 Only write one option per physical line in the config file.
 
-Specify the filename to \fI\-K, \-\-config\fP as '-' to make curl read the file from stdin.
+Specify the filename to \fI\-K, \-\-config\fP as \(aq-' to make curl read the file from stdin.
 
 Note that to be able to specify a URL in the config file, you need to specify
 it using the \fI\-\-url\fP option, and not by simply writing the URL on its own
@@ -415,8 +479,8 @@
 url = "https://curl.se/docs/"
 
 When curl is invoked, it (unless \fI\-q, \-\-disable\fP is used) checks for a default
-config file and uses it if found. The default config file is checked for in
-the following places in this order:
+config file and uses it if found, even when this option is used. The default
+config file is checked for in the following places in this order:
 
 1) Use the CURL_HOME environment variable if set
 
@@ -428,7 +492,7 @@
 
 5) Windows: use APPDATA if set
 
-6) Windows: use "USERPROFILE\Application Data" if set
+6) Windows: use "USERPROFILE\\Application Data" if set
 
 7) On windows, if there is no .curlrc file in the home dir, it checks for one
 in the same dir the curl executable is placed. On Unix-like systems, it will
@@ -449,14 +513,25 @@
 .fi
 
 This option can be used multiple times to load multiple config files.
-.IP "\-\-connect-timeout <seconds>"
-Maximum time in seconds that you allow curl's connection to take.  This only
+
+Example:
+.nf
+ curl --config file.txt https://example.com
+.fi
+.IP "\-\-connect-timeout <fractional seconds>"
+Maximum time in seconds that you allow curl\(aqs connection to take.  This only
 limits the connection phase, so if curl connects within the given period it
 will continue \- if not it will exit.  Since version 7.32.0, this option
 accepts decimal values.
 
 If this option is used several times, the last one will be used.
 
+Examples:
+.nf
+ curl --connect-timeout 20 https://example.com
+ curl --connect-timeout 3.14 https://example.com
+.fi
+
 See also \fI-m, --max-time\fP.
 .IP "\-\-connect-to <HOST1:PORT1:HOST2:PORT2>"
 
@@ -467,7 +542,7 @@
 used for TLS/SSL (e.g. SNI, certificate verification) or for the application
 protocols. "HOST1" and "PORT1" may be the empty string, meaning "any
 host/port". "HOST2" and "PORT2" may also be the empty string, meaning "use the
-request's original host/port".
+request\(aqs original host/port".
 
 A "host" specified to this option is compared as a string, so it needs to
 match the name used in request URL. It can be either numerical such as
@@ -475,6 +550,11 @@
 
 This option can be used many times to add many connect rules.
 
+Example:
+.nf
+ curl --connect-to example.com:443:example.net:8443 https://example.com
+.fi
+
 See also \fI--resolve\fP and \fI-H, --header\fP. Added in 7.49.0.
 .IP "\-C, \-\-continue-at <offset>"
 Continue/Resume a previous file transfer at the given offset. The given offset
@@ -487,6 +567,12 @@
 
 If this option is used several times, the last one will be used.
 
+Examples:
+.nf
+ curl -C - https://example.com
+ curl -C 400 https://example.com
+.fi
+
 See also \fI-r, --range\fP.
 .IP "\-c, \-\-cookie-jar <filename>"
 (HTTP) Specify to which file you want curl to write all cookies after a completed
@@ -500,22 +586,28 @@
 record and use cookies. Another way to activate it is to use the \fI\-b, \-\-cookie\fP
 option.
 
-If the cookie jar can't be created or written to, the whole curl operation
-won't fail or even report an error clearly. Using \fI\-v, \-\-verbose\fP will get a warning
-displayed, but that is the only visible feedback you get about this possibly
-lethal situation.
+If the cookie jar cannot be created or written to, the whole curl operation
+will not fail or even report an error clearly. Using \fI\-v, \-\-verbose\fP will get a
+warning displayed, but that is the only visible feedback you get about this
+possibly lethal situation.
 
 If this option is used several times, the last specified file name will be
 used.
+
+Examples:
+.nf
+ curl -c store-here.txt https://example.com
+ curl -c store-here.txt -b read-these https://example.com
+.fi
 .IP "\-b, \-\-cookie <data|filename>"
 (HTTP) Pass the data to the HTTP server in the Cookie header. It is supposedly
 the data previously received from the server in a "Set-Cookie:" line.  The
 data should be in the format "NAME1=VALUE1; NAME2=VALUE2".
 
-If no '=' symbol is used in the argument, it is instead treated as a filename
+If no \(aq=' symbol is used in the argument, it is instead treated as a filename
 to read previously stored cookie from. This option also activates the cookie
 engine which will make curl record incoming cookies, which may be handy if
-you're using this in combination with the \fI\-L, \-\-location\fP option or do multiple URL
+you are using this in combination with the \fI\-L, \-\-location\fP option or do multiple URL
 transfers on the same invoke. If the file name is exactly a minus ("-"), curl
 will instead read the contents from stdin.
 
@@ -525,16 +617,22 @@
 The file specified with \fI\-b, \-\-cookie\fP is only used as input. No cookies will be
 written to the file. To store cookies, use the \fI\-c, \-\-cookie-jar\fP option.
 
-If you use the Set-Cookie file format and don't specify a domain then the
+If you use the Set-Cookie file format and do not specify a domain then the
 cookie is not sent since the domain will never match. To address this, set a
 domain in Set-Cookie line (doing that will include sub-domains) or preferably:
 use the Netscape format.
 
 This option can be used multiple times.
 
-Users very often want to both read cookies from a file and write updated
-cookies back to a file, so using both \fI\-b, \-\-cookie\fP and \fI\-c, \-\-cookie-jar\fP in the same
-command line is common.
+Users often want to both read cookies from a file and write updated cookies
+back to a file, so using both \fI\-b, \-\-cookie\fP and \fI\-c, \-\-cookie-jar\fP in the same command
+line is common.
+
+Examples:
+.nf
+ curl -b cookiefile https://example.com
+ curl -b cookiefile -c cookiefile https://example.com
+.fi
 .IP "\-\-create-dirs"
 When used in conjunction with the \fI\-o, \-\-output\fP option, curl will create the
 necessary local directory hierarchy as needed. This option creates the
@@ -545,27 +643,45 @@
 Created dirs are made with mode 0750 on unix style file systems.
 
 To create remote directories when using FTP or SFTP, try \fI\-\-ftp-create-dirs\fP.
+
+Example:
+.nf
+ curl --create-dirs --output local/dir/file https://example.com
+.fi
 .IP "\-\-create-file-mode <mode>"
 (SFTP SCP FILE) When curl is used to create files remotely using one of the supported
-protocols, this option allows the user to set which 'mode' to set on the file
+protocols, this option allows the user to set which \(aqmode' to set on the file
 at creation time, instead of the default 0644.
 
 This option takes an octal number as argument.
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --create-file-mode 0777 -T localfile sftp://example.com/new
+.fi
+
 See also \fI--ftp-create-dirs\fP. Added in 7.75.0.
 .IP "\-\-crlf"
 (FTP SMTP) Convert LF to CRLF in upload. Useful for MVS (OS/390).
 
 (SMTP added in 7.40.0)
+
+Example:
+.nf
+ curl --crlf -T file ftp://example.com/
+.fi
 .IP "\-\-crlfile <file>"
 (TLS) Provide a file using PEM format with a Certificate Revocation List that may
 specify peer certificates that are to be considered revoked.
 
 If this option is used several times, the last one will be used.
 
-Added in 7.19.7.
+Example:
+.nf
+ curl --crlfile rejects.txt https://example.com
+.fi
 .IP "\-\-curves <algorithm list>"
 (TLS) Tells curl to request specific curves to use during SSL session establishment
 according to RFC 8422, 5.1.  Multiple algorithms can be provided by separating
@@ -579,9 +695,19 @@
 If this option is set, the default curves list built into openssl will be
 ignored.
 
+Example:
+.nf
+ curl --curves X25519 https://example.com
+.fi
+
 Added in 7.73.0.
 .IP "\-\-data-ascii <data>"
 (HTTP) This is just an alias for \fI\-d, \-\-data\fP.
+
+Example:
+.nf
+ curl --data-ascii @file https://example.com
+.fi
 .IP "\-\-data-binary <data>"
 (HTTP) This posts data exactly as specified with no extra processing whatsoever.
 
@@ -596,10 +722,21 @@
 
 If this option is used several times, the ones following the first will append
 data as described in \fI\-d, \-\-data\fP.
+
+Example:
+.nf
+ curl --data-binary @filename https://example.com
+.fi
 .IP "\-\-data-raw <data>"
 (HTTP) This posts data similarly to \fI\-d, \-\-data\fP but without the special
 interpretation of the @ character.
 
+Examples:
+.nf
+ curl --data-raw "hello" https://example.com
+ curl --data-raw "@at@at@" https://example.com
+.fi
+
 See also \fI-d, --data\fP. Added in 7.43.0.
 .IP "\-\-data-urlencode <data>"
 (HTTP) This posts data, similar to the other \fI\-d, \-\-data\fP options with the exception
@@ -611,7 +748,7 @@
 .RS
 .IP "content"
 This will make curl URL-encode the content and pass that on. Just be careful
-so that the content doesn't contain any = or @ symbols, as that will then make
+so that the content does not contain any = or @ symbols, as that will then make
 the syntax match one of the other cases below!
 .IP "=content"
 This will make curl URL-encode the content and pass that on. The preceding =
@@ -629,7 +766,15 @@
 name is expected to be URL-encoded already.
 .RE
 
-See also \fI-d, --data\fP and \fI--data-raw\fP. Added in 7.18.0.
+Examples:
+.nf
+ curl --data-urlencode name=val https://example.com
+ curl --data-urlencode =encodethis https://example.com
+ curl --data-urlencode name@file https://example.com
+ curl --data-urlencode @fileonly https://example.com
+.fi
+
+See also \fI-d, --data\fP and \fI--data-raw\fP.
 .IP "\-d, \-\-data <data>"
 (HTTP MQTT) Sends the specified data in a POST request to the HTTP server, in the same way
 that a browser does when a user has filled in an HTML form and presses the
@@ -643,23 +788,30 @@
 
 If any of these options is used more than once on the same command line, the
 data pieces specified will be merged together with a separating
-&-symbol. Thus, using '-d name=daniel \-d skill=lousy' would generate a post
-chunk that looks like \&'name=daniel&skill=lousy'.
+&-symbol. Thus, using \(aq-d name=daniel \-d skill=lousy' would generate a post
+chunk that looks like \&\(aqname=daniel&skill=lousy'.
 
 If you start the data with the letter @, the rest should be a file name to
 read the data from, or \- if you want curl to read the data from stdin. Posting
-data from a file named \&'foobar' would thus be done with \fI\-d, \-\-data\fP @foobar. When
+data from a file named \&\(aqfoobar' would thus be done with \fI\-d, \-\-data\fP @foobar. When
 \fI\-d, \-\-data\fP is told to read from a file like that, carriage returns and newlines
-will be stripped out. If you don't want the @ character to have a special
+will be stripped out. If you do not want the @ character to have a special
 interpretation use \fI\-\-data-raw\fP instead.
 
+Examples:
+.nf
+ curl -d "name=curl" https://example.com
+ curl -d "name=curl" -d "tool=cmdline" https://example.com
+ curl -d @filename https://example.com
+.fi
+
 See also \fI--data-binary\fP, \fI--data-urlencode\fP and \fI--data-raw\fP. This option overrides \fI-F, --form\fP and \fI-I, --head\fP and \fI-T, --upload-file\fP.
 .IP "\-\-delegation <LEVEL>"
 (GSS/kerberos) Set LEVEL to tell the server what it is allowed to delegate when it
 comes to user credentials.
 .RS
 .IP "none"
-Don't allow any delegation.
+Do not allow any delegation.
 .IP "policy"
 Delegates if and only if the OK-AS-DELEGATE flag is set in the Kerberos
 service ticket, which is a matter of realm policy.
@@ -668,6 +820,11 @@
 .RE
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --delegation "none" https://example.com
+.fi
 .IP "\-\-digest"
 (HTTP) Enables HTTP Digest authentication. This is an authentication scheme that
 prevents the password from being sent over the wire in clear text. Use this in
@@ -675,6 +832,11 @@
 
 If this option is used several times, only the first one is used.
 
+Example:
+.nf
+ curl -u name:password --digest https://example.com
+.fi
+
 See also \fI-u, --user\fP, \fI--proxy-digest\fP and \fI--anyauth\fP. This option overrides \fI--basic\fP and \fI--ntlm\fP and \fI--negotiate\fP.
 .IP "\-\-disable-eprt"
 (FTP) Tell curl to disable the use of the EPRT and LPRT commands when doing active
@@ -692,6 +854,11 @@
 
 Disabling EPRT only changes the active behavior. If you want to switch to
 passive mode you need to not use \fI\-P, \-\-ftp-port\fP or force it with \fI\-\-ftp-pasv\fP.
+
+Example:
+.nf
+ curl --disable-eprt ftp://example.com/
+.fi
 .IP "\-\-disable-epsv"
 (FTP) Tell curl to disable the use of the EPSV command when doing passive FTP
 transfers. Curl will normally always first attempt to use EPSV before
@@ -705,12 +872,28 @@
 
 Disabling EPSV only changes the passive behavior. If you want to switch to
 active mode you need to use \fI\-P, \-\-ftp-port\fP.
+
+Example:
+.nf
+ curl --disable-epsv ftp://example.com/
+.fi
 .IP "\-q, \-\-disable"
 If used as the first parameter on the command line, the \fIcurlrc\fP config
 file will not be read and used. See the \fI\-K, \-\-config\fP for details on the default
 config file search path.
+
+Example:
+.nf
+ curl -q https://example.com
+.fi
 .IP "\-\-disallow-username-in-url"
-(HTTP) This tells curl to exit if passed a url containing a username.
+(HTTP) This tells curl to exit if passed a url containing a username. This is probably
+most useful when the URL is being provided at run-time or similar.
+
+Example:
+.nf
+ curl --disallow-username-in-url https://example.com
+.fi
 
 See also \fI--proto\fP. Added in 7.61.0.
 .IP "\-\-dns-interface <interface>"
@@ -718,6 +901,11 @@
 counterpart to \fI\-\-interface\fP (which does not affect DNS). The supplied string
 must be an interface name (not an address).
 
+Example:
+.nf
+ curl --dns-interface eth0 https://example.com
+.fi
+
 See also \fI--dns-ipv4-addr\fP and \fI--dns-ipv6-addr\fP. \fI--dns-interface\fP requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.
 .IP "\-\-dns-ipv4-addr <address>"
 (DNS) Tell curl to bind to <ip-address> when making IPv4 DNS requests, so that
@@ -726,6 +914,11 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --dns-ipv4-addr 10.1.2.3 https://example.com
+.fi
+
 See also \fI--dns-interface\fP and \fI--dns-ipv6-addr\fP. \fI--dns-ipv4-addr\fP requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.
 .IP "\-\-dns-ipv6-addr <address>"
 (DNS) Tell curl to bind to <ip-address> when making IPv6 DNS requests, so that
@@ -734,6 +927,11 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --dns-ipv6-addr 2a04:4e42::561 https://example.com
+.fi
+
 See also \fI--dns-interface\fP and \fI--dns-ipv4-addr\fP. \fI--dns-ipv6-addr\fP requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.
 .IP "\-\-dns-servers <addresses>"
 Set the list of DNS servers to be used instead of the system default.
@@ -743,14 +941,29 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --dns-servers 192.168.0.1,192.168.0.2 https://example.com
+.fi
+
 \fI--dns-servers\fP requires that the underlying libcurl was built to support c-ares. Added in 7.33.0.
 .IP "\-\-doh-cert-status"
 (all) Same as \fI\-\-cert-status\fP but used for DoH (DNS-over-HTTPS).
 
+Example:
+.nf
+ curl --doh-cert-status --doh-url https://doh.example https://example.com
+.fi
+
 Added in 7.76.0.
 .IP "\-\-doh-insecure"
 (all) Same as \fI\-k, \-\-insecure\fP but used for DoH (DNS-over-HTTPS).
 
+Example:
+.nf
+ curl --doh-insecure --doh-url https://doh.example https://example.com
+.fi
+
 Added in 7.76.0.
 .IP "\-\-doh-url <URL>"
 (all) Specifies which DNS-over-HTTPS (DoH) server to use to resolve hostnames,
@@ -763,6 +976,11 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --doh-url https://doh.example https://example.com
+.fi
+
 Added in 7.62.0.
 .IP "\-D, \-\-dump-header <filename>"
 (HTTP FTP) Write the received protocol headers to the specified file. If no headers are
@@ -773,16 +991,31 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --dump-header store.txt https://example.com
+.fi
+
 See also \fI-o, --output\fP.
 .IP "\-\-egd-file <file>"
 (TLS) Specify the path name to the Entropy Gathering Daemon socket. The socket is
 used to seed the random engine for SSL connections.
 
+Example:
+.nf
+ curl --egd-file /random/here https://example.com
+.fi
+
 See also \fI--random-file\fP.
 .IP "\-\-engine <name>"
 (TLS) Select the OpenSSL crypto engine to use for cipher operations. Use \fI\-\-engine\fP
 list to print a list of build-time supported engines. Note that not all (and
 possibly none) of the engines may be available at run-time.
+
+Example:
+.nf
+ curl --engine flavor https://example.com
+.fi
 .IP "\-\-etag-compare <file>"
 (HTTP) This option makes a conditional HTTP request for the specific ETag read
 from the given file by sending a custom If-None-Match header using the
@@ -796,6 +1029,11 @@
 then use this option to compare against the saved ETag in a subsequent
 request.
 
+Example:
+.nf
+ curl --etag-compare etag.txt https://example.com
+.fi
+
 Added in 7.68.0.
 .IP "\-\-etag-save <file>"
 (HTTP) This option saves an HTTP ETag to the specified file. An ETag is a
@@ -803,6 +1041,11 @@
 
 If no ETag is sent by the server, an empty file is created.
 
+Example:
+.nf
+ curl --etag-save storetag.txt https://example.com
+.fi
+
 Added in 7.68.0.
 .IP "\-\-expect100-timeout <seconds>"
 (HTTP) Maximum time in seconds that you allow curl to wait for a 100-continue
@@ -810,13 +1053,18 @@
 default curl will wait one second. This option accepts decimal values! When
 curl stops waiting, it will continue as if the response has been received.
 
+Example:
+.nf
+ curl --expect100-timeout 2.5 -T file https://example.com
+.fi
+
 See also \fI--connect-timeout\fP. Added in 7.47.0.
 .IP "\-\-fail-early"
 Fail and exit on the first detected transfer error.
 
 When curl is used to do multiple transfers on the command line, it will
 attempt to operate on each given URL, one by one. By default, it will ignore
-errors if there are more URLs given and the last URL's success will determine
+errors if there are more URLs given and the last URL\(aqs success will determine
 the error code curl returns. So early failures will be "hidden" by subsequent
 successful transfers.
 
@@ -827,13 +1075,17 @@
 This option is global and does not need to be specified for each use of \fI\-:, \-\-next\fP.
 
 This option does not imply \fI\-f, \-\-fail\fP, which causes transfers to fail due to the
-server's HTTP status code. You can combine the two options, however note \fI\-f, \-\-fail\fP
+server\(aqs HTTP status code. You can combine the two options, however note \fI\-f, \-\-fail\fP
 is not global and is therefore contained by \fI\-:, \-\-next\fP.
 
+Example:
+.nf
+ curl --fail-early https://example.com https://two.example
+.fi
+
 Added in 7.52.0.
 .IP "\-\-fail-with-body"
-(HTTP) 
-Return an error on server errors where the HTTP response code is 400 or
+(HTTP) Return an error on server errors where the HTTP response code is 400 or
 greater). In normal cases when an HTTP server fails to deliver a document, it
 returns an HTML document stating so (which often also describes why and
 more). This flag will still allow curl to output and save that content but
@@ -842,6 +1094,11 @@
 This is an alternative option to \fI\-f, \-\-fail\fP which makes curl fail for the same
 circumstances but without saving the content.
 
+Example:
+.nf
+ curl --fail-with-body https://example.com
+.fi
+
 See also \fI-f, --fail\fP. Added in 7.76.0.
 .IP "\-f, \-\-fail"
 (HTTP) Fail silently (no output at all) on server errors. This is mostly done to
@@ -854,23 +1111,38 @@
 response codes will slip through, especially when authentication is involved
 (response codes 401 and 407).
 
+Example:
+.nf
+ curl --fail https://example.com
+.fi
+
 See also \fI--fail-with-body\fP.
 .IP "\-\-false-start"
 (TLS) Tells curl to use false start during the TLS handshake. False start is a mode
 where a TLS client will start sending application data before verifying the
-server's Finished message, thus saving a round trip when performing a full
+server\(aqs Finished message, thus saving a round trip when performing a full
 handshake.
 
 This is currently only implemented in the NSS and Secure Transport (on iOS 7.0
 or later, or OS X 10.9 or later) backends.
 
+Example:
+.nf
+ curl --false-start https://example.com
+.fi
+
 Added in 7.42.0.
 .IP "\-\-form-string <name=string>"
 (HTTP SMTP IMAP) Similar to \fI\-F, \-\-form\fP except that the value string for the named parameter is used
-literally. Leading \&'@' and \&'<' characters, and the \&';type=' string in
+literally. Leading \&\(aq@' and \&'<' characters, and the \&';type=' string in
 the value have no special meaning. Use this in preference to \fI\-F, \-\-form\fP if
-there's any possibility that the string value may accidentally trigger the
-\&'@' or \&'<' features of \fI\-F, \-\-form\fP.
+there\(aqs any possibility that the string value may accidentally trigger the
+\&\(aq@' or \&'<' features of \fI\-F, \-\-form\fP.
+
+Example:
+.nf
+ curl --form-string "data" https://example.com
+.fi
 
 See also \fI-F, --form\fP.
 .IP "\-F, \-\-form <name=content>"
@@ -881,7 +1153,7 @@
 For SMTP and IMAP protocols, this is the means to compose a multipart mail
 message to transmit.
 
-This enables uploading of binary files etc. To force the 'content' part to be
+This enables uploading of binary files etc. To force the \(aqcontent' part to be
 a file, prefix the file name with an @ sign. To just get the content part from
 a file, prefix the file name with the symbol <. The difference between @ and <
 is then that @ makes a file get attached in the post as a file upload, while
@@ -891,13 +1163,13 @@
 Tell curl to read content from stdin instead of a file by using \- as
 filename. This goes for both @ and < constructs. When stdin is used, the
 contents is buffered in memory first by curl to determine its size and allow a
-possible resend.  Defining a part's data from a named non-regular file (such
+possible resend.  Defining a part\(aqs data from a named non-regular file (such
 as a named pipe or similar) is unfortunately not subject to buffering and will
 be effectively read at transmission time; since the full size is unknown
 before the transfer starts, such data is sent as chunks by HTTP and rejected
 by IMAP.
 
-Example: send an image to an HTTP server, where \&'profile' is the name of the
+Example: send an image to an HTTP server, where \&\(aqprofile' is the name of the
 form-field to which the file portrait.jpg will be the input:
 
  curl \-F profile=@portrait.jpg https://example.com/upload.cgi
@@ -911,7 +1183,7 @@
 
  curl \-F "story=<hugefile.txt" https://example.com/
 
-You can also tell curl what Content-Type to use by using 'type=', in a manner
+You can also tell curl what Content-Type to use by using \(aqtype=', in a manner
 similar to:
 
  curl \-F "web=@index.html;type=text/html" example.com
@@ -925,13 +1197,13 @@
 
  curl \-F "file=@localfile;filename=nameinpost" example.com
 
-If filename/path contains ',' or ';', it must be quoted by double-quotes like:
+If filename/path contains \(aq,' or ';', it must be quoted by double-quotes like:
 
  curl \-F "file=@\\"local,file\\";filename=\\"name;in;post\\"" example.com
 
 or
 
- curl \-F 'file=@"local,file";filename="name;in;post"' example.com
+ curl \-F \(aqfile=@"local,file";filename="name;in;post"' example.com
 
 Note that if a filename/path is quoted by double-quotes, any double-quote
 or backslash within the filename must be escaped by backslash.
@@ -939,7 +1211,7 @@
 Quoting must also be applied to non-file data if it contains semicolons,
 leading/trailing spaces or leading double quotes:
 
- curl \-F 'colors="red; green; blue";type=text/x-myapp' example.com
+ curl \-F \(aqcolors="red; green; blue";type=text/x-myapp' example.com
 
 You can add custom headers to the field by setting headers=, like
 
@@ -951,7 +1223,7 @@
 
 The headers= keyword may appear more that once and above notes about quoting
 apply. When headers are read from a file, Empty lines and lines starting
-with '#' are comments and ignored; each header can be folded by splitting
+with \(aq#' are comments and ignored; each header can be folded by splitting
 between two words and starting the continuation line with a space; embedded
 carriage-returns and trailing spaces are stripped.
 Here is an example of a header file contents:
@@ -971,22 +1243,22 @@
 .br
 \- name can be omitted: the equal sign is the first character of the argument,
 .br
-\- if data starts with '(', this signals to start a new multipart: it can be
+\- if data starts with \(aq(', this signals to start a new multipart: it can be
 followed by a content type specification.
 .br
-\- a multipart can be terminated with a '=)' argument.
+\- a multipart can be terminated with a \(aq=)' argument.
 
 Example: the following command sends an SMTP mime e-mail consisting in an
 inline part in two alternative formats: plain text and HTML. It attaches a
 text file:
 
- curl \-F '=(;type=multipart/alternative' \\
+ curl \-F \(aq=(;type=multipart/alternative' \\
 .br
-         \-F '=plain text message' \\
+         \-F \(aq=plain text message' \\
 .br
-         \-F '= <body>HTML message</body>;type=text/html' \\
+         \-F \(aq= <body>HTML message</body>;type=text/html' \\
 .br
-      \-F '=)' \-F '=@textfile.txt' ...  smtp://example.com
+      \-F \(aq=)' \-F '=@textfile.txt' ...  smtp://example.com
 
 Data can be encoded for transfer using encoder=. Available encodings are
 \fIbinary\fP and \fI8bit\fP that do nothing else than adding the corresponding
@@ -998,14 +1270,19 @@
 Example: send multipart mail with a quoted-printable text message and a
 base64 attached file:
 
- curl \-F '=text message;encoder=quoted-printable' \\
+ curl \-F \(aq=text message;encoder=quoted-printable' \\
 .br
-      \-F '=@localfile;encoder=base64' ... smtp://example.com
+      \-F \(aq=@localfile;encoder=base64' ... smtp://example.com
 
 See further examples and details in the MANUAL.
 
 This option can be used multiple times.
 
+Example:
+.nf
+ curl --form "name=curl" --form "file=@loadthis" https://example.com
+.fi
+
 This option overrides \fI-d, --data\fP and \fI-I, --head\fP and \fI-T, --upload-file\fP.
 .IP "\-\-ftp-account <data>"
 (FTP) When an FTP server asks for "account data" after user name and password has
@@ -1013,19 +1290,30 @@
 
 If this option is used several times, the last one will be used.
 
-Added in 7.13.0.
+Example:
+.nf
+ curl --ftp-account "mr.robot" ftp://example.com/
+.fi
 .IP "\-\-ftp-alternative-to-user <command>"
 (FTP) If authenticating with the USER and PASS commands fails, send this command.
-When connecting to Tumbleweed's Secure Transport server over FTPS using a
+When connecting to Tumbleweed\(aqs Secure Transport server over FTPS using a
 client certificate, using "SITE AUTH" will tell the server to retrieve the
 username from the certificate.
 
-Added in 7.15.5.
+Example:
+.nf
+ curl --ftp-alternative-to-user "U53r" ftp://example.com
+.fi
 .IP "\-\-ftp-create-dirs"
-(FTP SFTP) When an FTP or SFTP URL/operation uses a path that doesn't currently exist on
+(FTP SFTP) When an FTP or SFTP URL/operation uses a path that does not currently exist on
 the server, the standard behavior of curl is to fail. Using this option, curl
 will instead attempt to create missing directories.
 
+Example:
+.nf
+ curl --ftp-create-dirs -T file ftp://example.com/remote/path/file
+.fi
+
 See also \fI--create-dirs\fP.
 .IP "\-\-ftp-method <method>"
 (FTP) Control what method curl should use to reach a file on an FTP(S)
@@ -1033,7 +1321,7 @@
 .RS
 .IP multicwd
 curl does a single CWD operation for each path part in the given URL. For deep
-hierarchies this means very many commands. This is how RFC 1738 says it should
+hierarchies this means many commands. This is how RFC 1738 says it should
 be done. This is the default but the slowest behavior.
 .IP nocwd
 curl does no CWD at all. curl will do SIZE, RETR, STOR etc and give a full
@@ -1041,32 +1329,42 @@
 .IP singlecwd
 curl does one CWD with the full target directory and then operates on the file
 \&"normally" (like in the multicwd case). This is somewhat more standards
-compliant than 'nocwd' but without the full penalty of 'multicwd'.
+compliant than \(aqnocwd' but without the full penalty of 'multicwd'.
 .RE
 
-Added in 7.15.1.
+Examples:
+.nf
+ curl --ftp-method multicwd ftp://example.com/dir1/dir2/file
+ curl --ftp-method nocwd ftp://example.com/dir1/dir2/file
+ curl --ftp-method singlecwd ftp://example.com/dir1/dir2/file
+.fi
 .IP "\-\-ftp-pasv"
 (FTP) Use passive mode for the data connection. Passive is the internal default
 behavior, but using this option can be used to override a previous \fI\-P, \-\-ftp-port\fP
 option.
 
 If this option is used several times, only the first one is used. Undoing an
-enforced passive really isn't doable but you must then instead enforce the
+enforced passive really is not doable but you must then instead enforce the
 correct \fI\-P, \-\-ftp-port\fP again.
 
 Passive mode means that curl will try the EPSV command first and then PASV,
 unless \fI\-\-disable-epsv\fP is used.
 
-See also \fI--disable-epsv\fP. Added in 7.11.0.
+Example:
+.nf
+ curl --ftp-pasv ftp://example.com/
+.fi
+
+See also \fI--disable-epsv\fP.
 .IP "\-P, \-\-ftp-port <address>"
 (FTP) Reverses the default initiator/listener roles when connecting with FTP. This
 option makes curl use active mode. curl then tells the server to connect back
-to the client's specified address and port, while passive mode asks the server
+to the client\(aqs specified address and port, while passive mode asks the server
 to setup an IP address and port for it to connect to. <address> should be one
 of:
 .RS
 .IP interface
-e.g. "eth0" to specify which interface's IP address you want to use (Unix only)
+e.g. "eth0" to specify which interface\(aqs IP address you want to use (Unix only)
 .IP "IP address"
 e.g. "192.168.10.1" to specify the exact IP address
 .IP "host name"
@@ -1080,10 +1378,18 @@
 use of PORT with \fI\-\-ftp-pasv\fP. Disable the attempt to use the EPRT command
 instead of PORT by using \fI\-\-disable-eprt\fP. EPRT is really PORT++.
 
-Since 7.19.5, you can append \&":[start]-[end]\&" to the right of the address,
-to tell curl what TCP port range to use. That means you specify a port range,
-from a lower to a higher number. A single number works as well, but do note
-that it increases the risk of failure since the port may not be available.
+You can also append \&":[start]-[end]\&" to the right of the address, to tell
+curl what TCP port range to use. That means you specify a port range, from a
+lower to a higher number. A single number works as well, but do note that it
+increases the risk of failure since the port may not be available.
+
+
+Examples:
+.nf
+ curl -P - ftp:/example.com
+ curl -P eth0 ftp:/example.com
+ curl -P 192.168.0.2 ftp:/example.com
+.fi
 
 See also \fI--ftp-pasv\fP and \fI--disable-eprt\fP.
 .IP "\-\-ftp-pret"
@@ -1091,10 +1397,13 @@
 mainly drftpd, require this non-standard command for directory listings as
 well as up and downloads in PASV mode.
 
-Added in 7.20.0.
+Example:
+.nf
+ curl --ftp-pret ftp://example.com/
+.fi
 .IP "\-\-ftp-skip-pasv-ip"
 (FTP) Tell curl to not use the IP address the server suggests in its response
-to curl's PASV command when curl connects the data connection. Instead curl
+to curl\(aqs PASV command when curl connects the data connection. Instead curl
 will re-use the same IP address it already uses for the control
 connection.
 
@@ -1102,50 +1411,80 @@
 
 This option has no effect if PORT, EPRT or EPSV is used instead of PASV.
 
-See also \fI--ftp-pasv\fP. Added in 7.14.2.
+Example:
+.nf
+ curl --ftp-skip-pasv-ip ftp://example.com/
+.fi
+
+See also \fI--ftp-pasv\fP.
 .IP "\-\-ftp-ssl-ccc-mode <active/passive>"
 (FTP) Sets the CCC mode. The passive mode will not initiate the shutdown, but
 instead wait for the server to do it, and will not reply to the shutdown from
 the server. The active mode initiates the shutdown and waits for a reply from
 the server.
 
-See also \fI--ftp-ssl-ccc\fP. Added in 7.16.2.
+Example:
+.nf
+ curl --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/
+.fi
+
+See also \fI--ftp-ssl-ccc\fP.
 .IP "\-\-ftp-ssl-ccc"
 (FTP) Use CCC (Clear Command Channel) Shuts down the SSL/TLS layer after
 authenticating. The rest of the control channel communication will be
 unencrypted. This allows NAT routers to follow the FTP transaction. The
 default mode is passive.
 
-See also \fI--ssl\fP and \fI--ftp-ssl-ccc-mode\fP. Added in 7.16.1.
+Example:
+.nf
+ curl --ftp-ssl-ccc ftps://example.com/
+.fi
+
+See also \fI--ssl\fP and \fI--ftp-ssl-ccc-mode\fP.
 .IP "\-\-ftp-ssl-control"
 (FTP) Require SSL/TLS for the FTP login, clear for transfer.  Allows secure
 authentication, but non-encrypted data transfers for efficiency.  Fails the
-transfer if the server doesn't support SSL/TLS.
+transfer if the server does not support SSL/TLS.
 
-Added in 7.16.0.
+Example:
+.nf
+ curl --ftp-ssl-control ftp://example.com
+.fi
 .IP "\-G, \-\-get"
 When used, this option will make all data specified with \fI\-d, \-\-data\fP, \fI\-\-data-binary\fP
 or \fI\-\-data-urlencode\fP to be used in an HTTP GET request instead of the POST
 request that otherwise would be used. The data will be appended to the URL
-with a '?' separator.
+with a \(aq?' separator.
 
 If used in combination with \fI\-I, \-\-head\fP, the POST data will instead be appended to
 the URL with a HEAD request.
 
 If this option is used several times, only the first one is used. This is
-because undoing a GET doesn't make sense, but you should then instead enforce
+because undoing a GET does not make sense, but you should then instead enforce
 the alternative method you prefer.
+
+Examples:
+.nf
+ curl --get https://example.com
+ curl --get -d "tool=curl" -d "age=old" https://example.com
+ curl --get -I -d "tool=curl" https://example.com
+.fi
 .IP "\-g, \-\-globoff"
 This option switches off the "URL globbing parser". When you set this option,
 you can specify URLs that contain the letters {}[] without having curl itself
 interpret them. Note that these letters are not normal legal URL contents but
 they should be encoded according to the URI standard.
+
+Example:
+.nf
+ curl -g "https://example.com/{[]}}}}"
+.fi
 .IP "\-\-happy-eyeballs-timeout-ms <milliseconds>"
-Happy eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6
-addresses for dual-stack hosts, preferring IPv6 first for the number of
-milliseconds. If the IPv6 address cannot be connected to within that time then
-a connection attempt is made to the IPv4 address in parallel. The first
-connection to be established is the one that is used.
+Happy Eyeballs is an algorithm that attempts to connect to both IPv4 and IPv6
+addresses for dual-stack hosts, giving IPv6 a head-start of the specified
+number of milliseconds. If the IPv6 address cannot be connected to within that
+time, then a connection attempt is made to the IPv4 address in parallel. The
+first connection to be established is the one that is used.
 
 The range of suggested useful values is limited. Happy Eyeballs RFC 6555 says
 "It is RECOMMENDED that connection attempts be paced 150-250 ms apart to
@@ -1154,27 +1493,42 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --happy-eyeballs-timeout-ms 500 https://example.com
+.fi
+
 Added in 7.59.0.
 .IP "\-\-haproxy-protocol"
-(HTTP) Send a HAProxy PROXY protocol v1 header at the beginning of the connection. This
-is used by some load balancers and reverse proxies to indicate the client's
-true IP address and port.
+(HTTP) Send a HAProxy PROXY protocol v1 header at the beginning of the
+connection. This is used by some load balancers and reverse proxies to
+indicate the client\(aqs true IP address and port.
 
 This option is primarily useful when sending test requests to a service that
 expects this header.
 
+Example:
+.nf
+ curl --haproxy-protocol https://example.com
+.fi
+
 Added in 7.60.0.
 .IP "\-I, \-\-head"
 (HTTP FTP FILE) Fetch the headers only! HTTP-servers feature the command HEAD which this uses
 to get nothing but the header of a document. When used on an FTP or FILE file,
 curl displays the file size and last modification time only.
+
+Example:
+.nf
+ curl -I https://example.com
+.fi
 .IP "\-H, \-\-header <header/@file>"
 (HTTP) Extra header to include in the request when sending HTTP to a server. You may
 specify any number of extra headers. Note that if you should add a custom
 header that has the same name as one of the internal ones curl would use, your
 externally set header will be used instead of the internal one. This allows
 you to make even trickier stuff than curl would normally do. You should not
-replace internally set headers without knowing perfectly well what you're
+replace internally set headers without knowing perfectly well what you are
 doing. Remove an internal header by giving a replacement without content on
 the right side of the colon, as in: \-H \&"Host:". If you send the custom
 header with no-value then its header must be terminated with a semicolon, such
@@ -1195,10 +1549,6 @@
 Passing on a "Transfer-Encoding: chunked" header when doing a HTTP request
 with a request body, will make curl send the data using chunked encoding.
 
-Example:
-
- curl \-H "X-First-Name: Joe" http://example.com/
-
 \fBWARNING\fP: headers set with this option will be set in all requests \- even
 after redirects are followed, like when told with \fI\-L, \-\-location\fP. This can lead to
 the header being sent to other hosts than the original host, so sensitive
@@ -1206,6 +1556,13 @@
 
 This option can be used multiple times to add/replace/remove multiple headers.
 
+Examples:
+.nf
+ curl -H "X-First-Name: Joe" https://example.com
+ curl -H "User-Agent: yes-please/2000" https://example.com
+ curl -H "Host:" https://example.com
+.fi
+
 See also \fI-A, --user-agent\fP and \fI-e, --referer\fP.
 .IP "\-h, \-\-help <category>"
 Usage help. This lists all commands of the <category>.
@@ -1214,16 +1571,33 @@
 If the argument "all" was provided, curl will display all options available.
 If the argument "category" was provided, curl will display all categories and
 their meanings.
+
+Example:
+.nf
+ curl --help all
+.fi
 .IP "\-\-hostpubmd5 <md5>"
 (SFTP SCP) Pass a string containing 32 hexadecimal digits. The string should
-be the 128 bit MD5 checksum of the remote host's public key, curl will refuse
+be the 128 bit MD5 checksum of the remote host\(aqs public key, curl will refuse
 the connection with the host unless the md5sums match.
 
-Added in 7.17.1.
-.IP "\-\-hsts <file name>"
-(HTTPS) WARNING: this option is experimental. Do not use in production.
+Example:
+.nf
+ curl --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/
+.fi
+.IP "\-\-hostpubsha256 <sha256>"
+(SFTP SCP) Pass a string containing a Base64-encoded SHA256 hash of the remote
+host\(aqs public key. Curl will refuse the connection with the host
+unless the hashes match.
 
-This option enables HSTS for the transfer. If the file name points to an
+Example:
+.nf
+ curl --hostpubsha256 NDVkMTQxMGQ1ODdmMjQ3MjczYjAyOTY5MmRkMjVmNDQ= sftp://example.com/
+.fi
+
+Added in 7.80.0.
+.IP "\-\-hsts <file name>"
+(HTTPS) This option enables HSTS for the transfer. If the file name points to an
 existing HSTS cache file, that will be used. After a completed transfer, the
 cache will be saved to the file name again if it has been modified.
 
@@ -1233,6 +1607,11 @@
 If this option is used several times, curl will load contents from all the
 files but the last one will be used for saving.
 
+Example:
+.nf
+ curl --hsts cache.txt https://example.com
+.fi
+
 Added in 7.74.0.
 .IP "\-\-http0.9"
 (HTTP) Tells curl to be fine with HTTP version 0.9 response.
@@ -1242,14 +1621,31 @@
 simply transparently downgrade \- if allowed.
 
 Since curl 7.66.0, HTTP/0.9 is disabled by default.
+
+Example:
+.nf
+ curl --http0.9 https://example.com
+.fi
+
+Added in 7.64.0.
 .IP "\-0, \-\-http1.0"
 (HTTP) Tells curl to use HTTP version 1.0 instead of using its internally preferred
 HTTP version.
 
+Example:
+.nf
+ curl --http1.0 https://example.com
+.fi
+
 This option overrides \fI--http1.1\fP and \fI--http2\fP.
 .IP "\-\-http1.1"
 (HTTP) Tells curl to use HTTP version 1.1.
 
+Example:
+.nf
+ curl --http1.1 https://example.com
+.fi
+
 This option overrides \fI-0, --http1.0\fP and \fI--http2\fP. Added in 7.33.0.
 .IP "\-\-http2-prior-knowledge"
 (HTTP) Tells curl to issue its non-TLS HTTP requests using HTTP/2 without HTTP/1.1
@@ -1257,14 +1653,29 @@
 away. HTTPS requests will still do HTTP/2 the standard way with negotiated
 protocol version in the TLS handshake.
 
+Example:
+.nf
+ curl --http2-prior-knowledge https://example.com
+.fi
+
 \fI--http2-prior-knowledge\fP requires that the underlying libcurl was built to support HTTP/2. This option overrides \fI--http1.1\fP and \fI-0, --http1.0\fP and \fI--http2\fP. Added in 7.49.0.
 .IP "\-\-http2"
 (HTTP) Tells curl to use HTTP version 2.
 
+For HTTPS, this means curl will attempt to negotiate HTTP/2 in the TLS
+handshake. curl does this by default.
+
+For HTTP, this means curl will attempt to upgrade the request to HTTP/2 using
+the Upgrade: request header.
+
+Example:
+.nf
+ curl --http2 https://example.com
+.fi
+
 See also \fI--http1.1\fP and \fI--http3\fP. \fI--http2\fP requires that the underlying libcurl was built to support HTTP/2. This option overrides \fI--http1.1\fP and \fI-0, --http1.0\fP and \fI--http2-prior-knowledge\fP. Added in 7.33.0.
 .IP "\-\-http3"
-(HTTP) 
-WARNING: this option is experimental. Do not use in production.
+(HTTP) \fBWARNING\fP: this option is experimental. Do not use in production.
 
 Tells curl to use HTTP version 3 directly to the host and port number used in
 the URL. A normal HTTP/3 transaction will be done to a host and then get
@@ -1274,6 +1685,11 @@
 This option will make curl fail if a QUIC connection cannot be established, it
 cannot fall back to a lower HTTP version on its own.
 
+Example:
+.nf
+ curl --http3 https://example.com
+.fi
+
 See also \fI--http1.1\fP and \fI--http2\fP. \fI--http3\fP requires that the underlying libcurl was built to support HTTP/3. This option overrides \fI--http1.1\fP and \fI-0, --http1.0\fP and \fI--http2\fP and \fI--http2-prior-knowledge\fP. Added in 7.66.0.
 .IP "\-\-ignore-content-length"
 (FTP HTTP) For HTTP, Ignore the Content-Length header. This is particularly useful for
@@ -1283,7 +1699,12 @@
 For FTP (since 7.46.0), skip the RETR command to figure out the size before
 downloading a file.
 
-This option doesn't work if libcurl was built to use hyper for HTTP.
+This option does not work for HTTP if libcurl was built to use hyper.
+
+Example:
+.nf
+ curl --ignore-content-length https://example.com
+.fi
 .IP "\-i, \-\-include"
 Include the HTTP response headers in the output. The HTTP response headers can
 include things like server name, cookies, date of the document, HTTP version
@@ -1291,22 +1712,32 @@
 
 To view the request headers, consider the \fI\-v, \-\-verbose\fP option.
 
+Example:
+.nf
+ curl -i https://example.com
+.fi
+
 See also \fI-v, --verbose\fP.
 .IP "\-k, \-\-insecure"
-(TLS) 
-By default, every SSL connection curl makes is verified to be secure. This
+(TLS) By default, every SSL connection curl makes is verified to be secure. This
 option allows curl to proceed and operate even for server connections
 otherwise considered insecure.
 
-The server connection is verified by making sure the server's certificate
+The server connection is verified by making sure the server\(aqs certificate
 contains the right name and verifies successfully using the cert store.
 
 See this online resource for further details:
  https://curl.se/docs/sslcerts.html
 
+\fBWARNING\fP: this makes the transfer insecure.
+
+Example:
+.nf
+ curl --insecure https://example.com
+.fi
+
 See also \fI--proxy-insecure\fP and \fI--cacert\fP.
 .IP "\-\-interface <name>"
-
 Perform an operation using a specified interface. You can enter interface
 name, IP address or host name. An example could look like:
 
@@ -1318,22 +1749,42 @@
 have CAP_NET_RAW or to be run as root. More information about Linux VRF:
 https://www.kernel.org/doc/Documentation/networking/vrf.txt
 
+Example:
+.nf
+ curl --interface eth0 https://example.com
+.fi
+
 See also \fI--dns-interface\fP.
 .IP "\-4, \-\-ipv4"
 This option tells curl to resolve names to IPv4 addresses only, and not for
 example try IPv6.
 
+Example:
+.nf
+ curl --ipv4 https://example.com
+.fi
+
 See also \fI--http1.1\fP and \fI--http2\fP. This option overrides \fI-6, --ipv6\fP.
 .IP "\-6, \-\-ipv6"
 This option tells curl to resolve names to IPv6 addresses only, and not for
 example try IPv4.
 
+Example:
+.nf
+ curl --ipv6 https://example.com
+.fi
+
 See also \fI--http1.1\fP and \fI--http2\fP. This option overrides \fI-4, --ipv4\fP.
 .IP "\-j, \-\-junk-session-cookies"
 (HTTP) When curl is told to read cookies from a given file, this option will make it
 discard all "session cookies". This will basically have the same effect as if
 a new session is started. Typical browsers always discard session cookies when
-they're closed down.
+they are closed down.
+
+Example:
+.nf
+ curl --junk-session-cookies -b cookies.txt https://example.com
+.fi
 
 See also \fI-b, --cookie\fP and \fI-c, --cookie-jar\fP.
 .IP "\-\-keepalive-time <seconds>"
@@ -1346,16 +1797,24 @@
 If this option is used several times, the last one will be used. If
 unspecified, the option defaults to 60 seconds.
 
-Added in 7.18.0.
+Example:
+.nf
+ curl --keepalive-time 20 https://example.com
+.fi
 .IP "\-\-key-type <type>"
 (TLS) Private key file type. Specify which type your \fI\-\-key\fP provided private key
 is. DER, PEM, and ENG are supported. If not specified, PEM is assumed.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --key-type DER --key here https://example.com
+.fi
 .IP "\-\-key <key>"
 (TLS SSH) Private key file name. Allows you to provide your private key in this separate
 file. For SSH, if not specified, curl tries the following candidates in order:
-\&'~/.ssh/id_rsa', '~/.ssh/id_dsa', './id_rsa', './id_dsa'.
+\&\(aq~/.ssh/id_rsa', '~/.ssh/id_dsa', './id_rsa', './id_dsa'.
 
 If curl is built against OpenSSL library, and the engine pkcs11 is available,
 then a PKCS#11 URI (RFC 7512) can be used to specify a private key located in a
@@ -1365,43 +1824,70 @@
 "ENG" if none was provided.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --cert certificate --key here https://example.com
+.fi
 .IP "\-\-krb <level>"
 (FTP) Enable Kerberos authentication and use. The level must be entered and should
-be one of 'clear', 'safe', 'confidential', or 'private'. Should you use a
-level that is not one of these, 'private' will instead be used.
+be one of \(aqclear', 'safe', 'confidential', or 'private'. Should you use a
+level that is not one of these, \(aqprivate' will instead be used.
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --krb clear ftp://example.com/
+.fi
+
 \fI--krb\fP requires that the underlying libcurl was built to support Kerberos.
 .IP "\-\-libcurl <file>"
 Append this option to any ordinary curl command line, and you will get
 libcurl-using C source code written to the file that does the equivalent
 of what your command-line operation does!
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
 If this option is used several times, the last given file name will be
 used.
 
-Added in 7.16.1.
+Example:
+.nf
+ curl --libcurl client.c https://example.com
+.fi
 .IP "\-\-limit-rate <speed>"
 Specify the maximum transfer rate you want curl to use \- for both downloads
-and uploads. This feature is useful if you have a limited pipe and you'd like
+and uploads. This feature is useful if you have a limited pipe and you would like
 your transfer not to use your entire bandwidth. To make it slower than it
 otherwise would be.
 
 The given speed is measured in bytes/second, unless a suffix is appended.
-Appending 'k' or 'K' will count the number as kilobytes, 'm' or 'M' makes it
-megabytes, while 'g' or 'G' makes it gigabytes. Examples: 200K, 3m and 1G.
+Appending \(aqk' or 'K' will count the number as kilobytes, 'm' or 'M' makes it
+megabytes, while \(aqg' or 'G' makes it gigabytes. The suffixes (k, M, G, T, P)
+are 1024 based. For example 1k is 1024. Examples: 200K, 3m and 1G.
+
+The rate limiting logic works on averaging the transfer speed to no more than
+the set threshold over a period of multiple seconds.
 
 If you also use the \fI\-Y, \-\-speed-limit\fP option, that option will take precedence and
 might cripple the rate-limiting slightly, to help keeping the speed-limit
 logic working.
 
 If this option is used several times, the last one will be used.
+
+Examples:
+.nf
+ curl --limit-rate 100K https://example.com
+ curl --limit-rate 1000 https://example.com
+ curl --limit-rate 10M https://example.com
+.fi
 .IP "\-l, \-\-list-only"
 (FTP POP3) (FTP)
 When listing an FTP directory, this switch forces a name-only view. This is
 especially useful if the user wants to machine-parse the contents of an FTP
-directory since the normal directory view doesn't use a standard look or
+directory since the normal directory view does not use a standard look or
 format. When used like this, the option causes an NLST command to be sent to
 the server instead of LIST.
 
@@ -1414,22 +1900,33 @@
 to see if a specific message-id exists on the server and what size it is.
 
 Note: When combined with \fI\-X, \-\-request\fP, this option can be used to send a UIDL
-command instead, so the user may use the email's unique identifier rather than
+command instead, so the user may use the email\(aqs unique identifier rather than
 its message-id to make the request.
 
-Added in 4.0.
+Example:
+.nf
+ curl --list-only ftp://example.com/dir/
+.fi
 .IP "\-\-local-port <num/range>"
 Set a preferred single number or range (FROM-TO) of local port numbers to use
 for the connection(s).  Note that port numbers by nature are a scarce resource
 that will be busy at times so setting this range to something too narrow might
 cause unnecessary connection setup failures.
 
-Added in 7.15.2.
+Example:
+.nf
+ curl --local-port 1000-3000 https://example.com
+.fi
 .IP "\-\-location-trusted"
 (HTTP) Like \fI\-L, \-\-location\fP, but will allow sending the name + password to all hosts that
 the site may redirect to. This may or may not introduce a security breach if
-the site redirects you to a site to which you'll send your authentication info
-(which is plaintext in the case of HTTP Basic authentication).
+the site redirects you to a site to which you will send your authentication
+info (which is plaintext in the case of HTTP Basic authentication).
+
+Example:
+.nf
+ curl --location-trusted -u user:password https://example.com
+.fi
 
 See also \fI-u, --user\fP.
 .IP "\-L, \-\-location"
@@ -1438,12 +1935,12 @@
 option will make curl redo the request on the new place. If used together with
 \fI\-i, \-\-include\fP or \fI\-I, \-\-head\fP, headers from all requested pages will be shown. When
 authentication is used, curl only sends its credentials to the initial
-host. If a redirect takes curl to a different host, it won't be able to
+host. If a redirect takes curl to a different host, it will not be able to
 intercept the user+password. See also \fI\-\-location-trusted\fP on how to change
 this. You can limit the amount of redirects to follow by using the
 \fI\-\-max-redirs\fP option.
 
-When curl follows a redirect and if the request is a POST, it will do the
+When curl follows a redirect and if the request is a POST, it will send the
 following request with a GET if the HTTP response was 301, 302, or 303. If the
 response code was any other 3xx code, curl will re-send the following request
 using the same unmodified method.
@@ -1453,6 +1950,11 @@
 
 The method set with \fI\-X, \-\-request\fP overrides the method curl would otherwise select
 to use.
+
+Example:
+.nf
+ curl -L https://example.com
+.fi
 .IP "\-\-login-options <options>"
 (IMAP POP3 SMTP) Specify the login options to use during server authentication.
 
@@ -1463,17 +1965,32 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --login-options 'AUTH=*' imap://example.com
+.fi
+
 Added in 7.34.0.
 .IP "\-\-mail-auth <address>"
 (SMTP) Specify a single address. This will be used to specify the authentication
 address (identity) of a submitted message that is being relayed to another
 server.
 
-See also \fI--mail-rcpt\fP and \fI--mail-from\fP. Added in 7.25.0.
+Example:
+.nf
+ curl --mail-auth user@example.come -T mail smtp://example.com/
+.fi
+
+See also \fI--mail-rcpt\fP and \fI--mail-from\fP.
 .IP "\-\-mail-from <address>"
 (SMTP) Specify a single address that the given mail should get sent from.
 
-See also \fI--mail-rcpt\fP and \fI--mail-auth\fP. Added in 7.20.0.
+Example:
+.nf
+ curl --mail-from user@example.com -T mail smtp://example.com/
+.fi
+
+See also \fI--mail-rcpt\fP and \fI--mail-auth\fP.
 .IP "\-\-mail-rcpt-allowfails"
 (SMTP) When sending data to multiple recipients, by default curl will abort SMTP
 conversation if at least one of the recipients causes RCPT TO command to
@@ -1483,16 +2000,20 @@
 command-line option which will make curl ignore errors and proceed with the
 remaining valid recipients.
 
-In case when all recipients cause RCPT TO command to fail, curl will abort SMTP
-conversation and return the error received from to the last RCPT TO command.
+If all recipients trigger RCPT TO failures and this flag is specified, curl
+will still abort the SMTP conversation and return the error received from to
+the last RCPT TO command.
+
+Example:
+.nf
+ curl --mail-rcpt-allowfails --mail-rcpt dest@example.com smtp://example.com
+.fi
+
 Added in 7.69.0.
 .IP "\-\-mail-rcpt <address>"
-(SMTP) Specify a single address, user name or mailing list name. Repeat this
+(SMTP) Specify a single e-mail address, user name or mailing list name. Repeat this
 option several times to send to multiple recipients.
 
-When performing a mail transfer, the recipient should specify a valid email
-address to send the mail to.
-
 When performing an address verification (VRFY command), the recipient should be
 specified as the user name or user name and domain (as per Section 3.5 of
 RFC5321). (Added in 7.34.0)
@@ -1501,21 +2022,33 @@
 specified using the mailing list name, such as "Friends" or "London-Office".
 (Added in 7.34.0)
 
-Added in 7.20.0.
+Example:
+.nf
+ curl --mail-rcpt user@example.net smtp://example.com
+.fi
 .IP "\-M, \-\-manual"
 Manual. Display the huge help text.
+
+Example:
+.nf
+ curl --manual
+.fi
 .IP "\-\-max-filesize <bytes>"
-Specify the maximum size (in bytes) of a file to download. If the file
+(FTP HTTP MQTT) Specify the maximum size (in bytes) of a file to download. If the file
 requested is larger than this value, the transfer will not start and curl will
 return with exit code 63.
 
-A size modifier may be used. For example, Appending 'k' or 'K' will count the
-number as kilobytes, 'm' or 'M' makes it megabytes, while 'g' or 'G' makes it
+A size modifier may be used. For example, Appending \(aqk' or 'K' will count the
+number as kilobytes, \(aqm' or 'M' makes it megabytes, while 'g' or 'G' makes it
 gigabytes. Examples: 200K, 3m and 1G. (Added in 7.58.0)
 
-\fBNOTE\fP: For protocols where the size is not known in advance (including FTP
-and HTTP) this option has no effect even if the file transfer ends up being
-larger than the given limit.
+\fBNOTE\fP: The file size is not always known prior to download, and for such
+files this option has no effect even if the file transfer ends up being larger
+than this given limit.
+Example:
+.nf
+ curl --max-filesize 100K https://example.com
+.fi
 
 See also \fI--limit-rate\fP.
 .IP "\-\-max-redirs <num>"
@@ -1524,7 +2057,12 @@
 set to 50 redirects. Set this option to \-1 to make it unlimited.
 
 If this option is used several times, the last one will be used.
-.IP "\-m, \-\-max-time <seconds>"
+
+Example:
+.nf
+ curl --max-redirs 3 --location https://example.com
+.fi
+.IP "\-m, \-\-max-time <fractional seconds>"
 Maximum time in seconds that you allow the whole operation to take.  This is
 useful for preventing your batch jobs from hanging for hours due to slow
 networks or links going down.  Since 7.32.0, this option accepts decimal
@@ -1533,12 +2071,21 @@
 
 If this option is used several times, the last one will be used.
 
+Examples:
+.nf
+ curl --max-time 10 https://example.com
+ curl --max-time 2.92 https://example.com
+.fi
+
 See also \fI--connect-timeout\fP.
 .IP "\-\-metalink"
 This option was previously used to specify a metalink resource. Metalink
 support has been disabled in curl since 7.78.0 for security reasons.
 
-Added in 7.27.0.
+Example:
+.nf
+ curl --metalink file https://example.com
+.fi
 .IP "\-\-negotiate"
 (HTTP) Enables Negotiate (SPNEGO) authentication.
 
@@ -1546,11 +2093,16 @@
 \fI\-V, \-\-version\fP to see if your curl supports GSS-API/SSPI or SPNEGO.
 
 When using this option, you must also provide a fake \fI\-u, \-\-user\fP option to activate
-the authentication code properly. Sending a '-u :' is enough as the user name
-and password from the \fI\-u, \-\-user\fP option aren't actually used.
+the authentication code properly. Sending a \(aq-u :' is enough as the user name
+and password from the \fI\-u, \-\-user\fP option are not actually used.
 
 If this option is used several times, only the first one is used.
 
+Example:
+.nf
+ curl --negotiate -u : https://example.com
+.fi
+
 See also \fI--basic\fP, \fI--ntlm\fP, \fI--anyauth\fP and \fI--proxy-negotiate\fP.
 .IP "\-\-netrc-file <filename>"
 This option is similar to \fI\-n, \-\-netrc\fP, except that you provide the path (absolute
@@ -1560,26 +2112,41 @@
 
 It will abide by \fI\-\-netrc-optional\fP if specified.
 
-This option overrides \fI-n, --netrc\fP. Added in 7.21.5.
+Example:
+.nf
+ curl --netrc-file netrc https://example.com
+.fi
+
+This option overrides \fI-n, --netrc\fP.
 .IP "\-\-netrc-optional"
-Very similar to \fI\-n, \-\-netrc\fP, but this option makes the .netrc usage \fBoptional\fP
+Similar to \fI\-n, \-\-netrc\fP, but this option makes the .netrc usage \fBoptional\fP
 and not mandatory as the \fI\-n, \-\-netrc\fP option does.
 
+Example:
+.nf
+ curl --netrc-optional https://example.com
+.fi
+
 See also \fI--netrc-file\fP. This option overrides \fI-n, --netrc\fP.
 .IP "\-n, \-\-netrc"
-Makes curl scan the \fI.netrc\fP (\fI_netrc\fP on Windows) file in the user's home
+Makes curl scan the \fI.netrc\fP (\fI_netrc\fP on Windows) file in the user\(aqs home
 directory for login name and password. This is typically used for FTP on
 Unix. If used with HTTP, curl will enable user authentication. See
 \fInetrc(5)\fP and \fIftp(1)\fP for details on the file format. Curl will not
-complain if that file doesn't have the right permissions (it should be
+complain if that file does not have the right permissions (it should be
 neither world- nor group-readable). The environment variable "HOME" is used
 to find the home directory.
 
-A quick and very simple example of how to setup a \fI.netrc\fP to allow curl
-to FTP to the machine host.domain.com with user name \&'myself' and password
-\&'secret' should look similar to:
+A quick and simple example of how to setup a \fI.netrc\fP to allow curl to FTP to
+the machine host.domain.com with user name \&\(aqmyself' and password \&'secret'
+should look similar to:
 
 .B "machine host.domain.com login myself password secret"
+
+Example:
+.nf
+ curl --netrc https://example.com
+.fi
 .IP "\-:, \-\-next"
 Tells curl to use a separate operation for the following URL and associated
 options. This allows you to send several URL requests, each with their own
@@ -1592,7 +2159,15 @@
 
 For example, you can do both a GET and a POST in a single command line:
 
+.nf
  curl www1.example.com \-\-next \-d postthis www2.example.com
+.fi
+
+Examples:
+.nf
+ curl https://example.com --next -d postthis www2.example.com
+ curl -I https://example.com --next https://example.net/
+.fi
 
 Added in 7.36.0.
 .IP "\-\-no-alpn"
@@ -1600,6 +2175,11 @@
 with an SSL library that supports ALPN. ALPN is used by a libcurl that supports
 HTTP/2 to negotiate HTTP/2 support with the server during https sessions.
 
+Example:
+.nf
+ curl --no-alpn https://example.com
+.fi
+
 See also \fI--no-npn\fP and \fI--http2\fP. \fI--no-alpn\fP requires that the underlying libcurl was built to support TLS. Added in 7.36.0.
 .IP "\-N, \-\-no-buffer"
 Disables the buffering of the output stream. In normal work situations, curl
@@ -1609,17 +2189,32 @@
 
 Note that this is the negated option name documented. You can thus use
 \-\-buffer to enforce the buffering.
+
+Example:
+.nf
+ curl --no-buffer https://example.com
+.fi
 .IP "\-\-no-keepalive"
 Disables the use of keepalive messages on the TCP connection. curl otherwise
 enables them by default.
 
 Note that this is the negated option name documented. You can thus use
 \-\-keepalive to enforce keepalive.
+
+Example:
+.nf
+ curl --no-keepalive https://example.com
+.fi
 .IP "\-\-no-npn"
 (HTTPS) Disable the NPN TLS extension. NPN is enabled by default if libcurl was built
 with an SSL library that supports NPN. NPN is used by a libcurl that supports
 HTTP/2 to negotiate HTTP/2 support with the server during https sessions.
 
+Example:
+.nf
+ curl --no-npn https://example.com
+.fi
+
 See also \fI--no-alpn\fP and \fI--http2\fP. \fI--no-npn\fP requires that the underlying libcurl was built to support TLS. Added in 7.36.0.
 .IP "\-\-no-progress-meter"
 Option to switch off the progress meter output without muting or otherwise
@@ -1628,9 +2223,14 @@
 Note that this is the negated option name documented. You can thus use
 \-\-progress-meter to enable the progress meter again.
 
+Example:
+.nf
+ curl --no-progress-meter -o store https://example.com
+.fi
+
 See also \fI-v, --verbose\fP and \fI-s, --silent\fP. Added in 7.67.0.
 .IP "\-\-no-sessionid"
-(TLS) Disable curl's use of SSL session-ID caching.  By default all transfers are
+(TLS) Disable curl\(aqs use of SSL session-ID caching.  By default all transfers are
 done using the cache. Note that while nothing should ever get hurt by
 attempting to reuse SSL session-IDs, there seem to be broken SSL
 implementations in the wild that may require you to disable this in order for
@@ -1639,7 +2239,10 @@
 Note that this is the negated option name documented. You can thus use
 \-\-sessionid to enforce session-ID caching.
 
-Added in 7.16.0.
+Example:
+.nf
+ curl --no-sessionid https://example.com
+.fi
 .IP "\-\-noproxy <no-proxy-list>"
 Comma-separated list of hosts for which not to use a proxy, if one is
 specified. The only wildcard is a single * character, which matches all hosts,
@@ -1649,14 +2252,22 @@
 not www.notlocal.com.
 
 Since 7.53.0, This option overrides the environment variables that disable the
-proxy ('no_proxy' and 'NO_PROXY'). If there's an environment variable
+proxy (\(aqno_proxy' and 'NO_PROXY'). If there's an environment variable
 disabling a proxy, you can set the noproxy list to \&"" to override it.
 
-Added in 7.19.4.
+Example:
+.nf
+ curl --noproxy "www.example" https://example.com
+.fi
 .IP "\-\-ntlm-wb"
 (HTTP) Enables NTLM much in the style \fI\-\-ntlm\fP does, but hand over the authentication
 to the separate binary ntlmauth application that is executed when needed.
 
+Example:
+.nf
+ curl --ntlm-wb -u user:password https://example.com
+.fi
+
 See also \fI--ntlm\fP and \fI--proxy-ntlm\fP.
 .IP "\-\-ntlm"
 (HTTP) Enables NTLM authentication. The NTLM authentication method was designed by
@@ -1671,6 +2282,11 @@
 
 If this option is used several times, only the first one is used.
 
+Example:
+.nf
+ curl --ntlm -u user:password https://example.com
+.fi
+
 See also \fI--proxy-ntlm\fP. \fI--ntlm\fP requires that the underlying libcurl was built to support TLS. This option overrides \fI--basic\fP and \fI--negotiate\fP and \fI--digest\fP and \fI--anyauth\fP.
 .IP "\-\-oauth2-bearer <token>"
 (IMAP POP3 SMTP HTTP) Specify the Bearer Token for OAUTH 2.0 server authentication. The Bearer Token
@@ -1680,6 +2296,13 @@
 The Bearer Token and user name are formatted according to RFC 6750.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --oauth2-bearer "mF_9.B5f-4.1JqM" https://example.com
+.fi
+
+Added in 7.33.0.
 .IP "\-\-output-dir <dir>"
 
 This option specifies the directory in which files should be stored, when
@@ -1688,16 +2311,21 @@
 The given output directory is used for all URLs and output options on the
 command line, up until the first \fI\-:, \-\-next\fP.
 
-If the specified target directory doesn't exist, the operation will fail
+If the specified target directory does not exist, the operation will fail
 unless \fI\-\-create-dirs\fP is also used.
 
 If this option is used multiple times, the last specified directory will be
 used.
 
+Example:
+.nf
+ curl --output-dir "tmp" -O https://example.com
+.fi
+
 See also \fI-O, --remote-name\fP and \fI-J, --remote-header-name\fP. Added in 7.73.0.
 .IP "\-o, \-\-output <file>"
 Write output to <file> instead of stdout. If you are using {} or [] to fetch
-multiple documents, you should quote the URL and you can use '#' followed by a
+multiple documents, you should quote the URL and you can use \(aq#' followed by a
 number in the <file> specifier. That variable will be replaced with the current
 string for the URL being fetched. Like in:
 
@@ -1713,16 +2341,32 @@
 
   curl \-o aa example.com \-o bb example.net
 
-and the order of the \-o options and the URLs doesn't matter, just that the
+and the order of the \-o options and the URLs does not matter, just that the
 first \-o is for the first URL and so on, so the above command line can also be
 written as
 
   curl example.com example.net \-o aa \-o bb
 
 See also the \fI\-\-create-dirs\fP option to create the local directories
-dynamically. Specifying the output as '-' (a single dash) will force the
+dynamically. Specifying the output as \(aq-' (a single dash) will force the
 output to be done to stdout.
 
+To suppress response bodies, you can redirect output to /dev/null:
+
+  curl example.com \-o /dev/null
+
+Or for Windows use nul:
+
+  curl example.com \-o nul
+
+Examples:
+.nf
+ curl -o file https://example.com
+ curl "http://{one,two}.example.com" -o "file_#1.txt"
+ curl "http://{site,host}.host[1-5].com" -o "#1_#2"
+ curl -o file https://example.com -o file2 https://example.net
+.fi
+
 See also \fI-O, --remote-name\fP, \fI--remote-name-all\fP and \fI-J, --remote-header-name\fP.
 .IP "\-\-parallel-immediate"
 When doing parallel transfers, this option will instruct curl that it should
@@ -1730,34 +2374,68 @@
 waiting to see if new transfers can be added as multiplexed streams on another
 connection.
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
+Example:
+.nf
+ curl --parallel-immediate -Z https://example.com -o file1 https://example.com -o file2
+.fi
+
 See also \fI-Z, --parallel\fP and \fI--parallel-max\fP. Added in 7.68.0.
 .IP "\-\-parallel-max <num>"
 When asked to do parallel transfers, using \fI\-Z, \-\-parallel\fP, this option controls
 the maximum amount of transfers to do simultaneously.
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
 The default is 50.
 
+Example:
+.nf
+ curl --parallel-max 100 -Z https://example.com ftp://example.com/
+.fi
+
 See also \fI-Z, --parallel\fP. Added in 7.66.0.
 .IP "\-Z, \-\-parallel"
 Makes curl perform its transfers in parallel as compared to the regular serial
 manner.
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
+Example:
+.nf
+ curl --parallel https://example.com -o file1 https://example.com -o file2
+.fi
+
 Added in 7.66.0.
 .IP "\-\-pass <phrase>"
 (SSH TLS) Passphrase for the private key.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --pass secret --key file https://example.com
+.fi
 .IP "\-\-path-as-is"
 Tell curl to not handle sequences of /../ or /./ in the given URL
 path. Normally curl will squash or merge them according to standards but with
 this option set you tell it not to do that.
 
+Example:
+.nf
+ curl --path-as-is https://example.com/../../etc/passwd
+.fi
+
 Added in 7.42.0.
 .IP "\-\-pinnedpubkey <hashes>"
 (TLS) Tells curl to use the specified public key file (or hashes) to verify the
 peer. This can be a path to a file which contains a single public key in PEM
 or DER format, or any number of base64 encoded sha256 hashes preceded by
-\'sha256//\' and separated by \';\'
+\(aqsha256//' and separated by ';'.
 
 When negotiating a TLS or SSL connection, the server sends a certificate
 indicating its identity. A public key is extracted from this certificate and
@@ -1781,6 +2459,14 @@
 Other SSL backends not supported.
 
 If this option is used several times, the last one will be used.
+
+Examples:
+.nf
+ curl --pinnedpubkey keyfile https://example.com
+ curl --pinnedpubkey 'sha256//ce118b51897f4452dc' https://example.com
+.fi
+
+Added in 7.39.0.
 .IP "\-\-post301"
 (HTTP) Tells curl to respect RFC 7231/6.4.2 and not convert POST requests into GET
 requests when following a 301 redirection. The non-RFC behavior is ubiquitous
@@ -1788,7 +2474,12 @@
 consistency. However, a server may require a POST to remain a POST after such
 a redirection. This option is meaningful only when using \fI\-L, \-\-location\fP.
 
-See also \fI--post302\fP, \fI--post303\fP and \fI-L, --location\fP. Added in 7.17.1.
+Example:
+.nf
+ curl --post301 --location -d "data" https://example.com
+.fi
+
+See also \fI--post302\fP, \fI--post303\fP and \fI-L, --location\fP.
 .IP "\-\-post302"
 (HTTP) Tells curl to respect RFC 7231/6.4.3 and not convert POST requests into GET
 requests when following a 302 redirection. The non-RFC behavior is ubiquitous
@@ -1796,14 +2487,24 @@
 consistency. However, a server may require a POST to remain a POST after such
 a redirection. This option is meaningful only when using \fI\-L, \-\-location\fP.
 
-See also \fI--post301\fP, \fI--post303\fP and \fI-L, --location\fP. Added in 7.19.1.
+Example:
+.nf
+ curl --post302 --location -d "data" https://example.com
+.fi
+
+See also \fI--post301\fP, \fI--post303\fP and \fI-L, --location\fP.
 .IP "\-\-post303"
 (HTTP) Tells curl to violate RFC 7231/6.4.4 and not convert POST requests into GET
 requests when following 303 redirections. A server may require a POST to
 remain a POST after a 303 redirection. This option is meaningful only when
 using \fI\-L, \-\-location\fP.
 
-See also \fI--post302\fP, \fI--post301\fP and \fI-L, --location\fP. Added in 7.26.0.
+Example:
+.nf
+ curl --post303 --location -d "data" https://example.com
+.fi
+
+See also \fI--post302\fP, \fI--post301\fP and \fI-L, --location\fP.
 .IP "\-\-preproxy [protocol://]host[:port]"
 Use the specified SOCKS proxy before connecting to an HTTP or HTTPS \fI\-x, \-\-proxy\fP. In
 such a case curl first connects to the SOCKS proxy and then connects (through
@@ -1823,30 +2524,44 @@
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --preproxy socks5://proxy.example -x http://http.example https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-#, \-\-progress-bar"
 Make curl display transfer progress as a simple progress bar instead of the
 standard, more informational, meter.
 
-This progress bar draws a single line of '#' characters across the screen and
+This progress bar draws a single line of \(aq#' characters across the screen and
 shows a percentage if the transfer size is known. For transfers without a
 known size, there will be space ship (-=o=-) that moves back and forth but
 only while data is being transferred, with a set of flying hash sign symbols on
 top.
-.IP "\-\-proto-default <protocol>"
-Tells curl to use \fIprotocol\fP for any URL missing a scheme name.
+
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
 
 Example:
-
- curl \-\-proto-default https ftp.mozilla.org
+.nf
+ curl -# -O https://example.com
+.fi
+.IP "\-\-proto-default <protocol>"
+Tells curl to use \fIprotocol\fP for any URL missing a scheme name.
 
 An unknown or unsupported protocol causes error
 \fICURLE_UNSUPPORTED_PROTOCOL\fP (1).
 
 This option does not change the default proxy protocol (http).
 
-Without this option curl would make a guess based on the host, see \fI\-\-url\fP for
-details.
+Without this option set, curl guesses protocol based on the host name, see
+\fI\-\-url\fP for details.
+
+Example:
+.nf
+ curl --proto-default https ftp.example.com
+.fi
 
 Added in 7.45.0.
 .IP "\-\-proto-redir <protocols>"
@@ -1858,17 +2573,18 @@
 
  curl \-\-proto-redir \-all,http,https http://example.com
 
-By default curl will allow HTTP, HTTPS, FTP and FTPS on redirect (7.65.2).
-Older versions of curl allowed all protocols on redirect except several
-disabled for security reasons: Since 7.19.4 FILE and SCP are disabled, and
-since 7.40.0 SMB and SMBS are also disabled. Specifying \fIall\fP or \fI+all\fP
-enables all protocols on redirect, including those disabled for security.
+By default curl will only allow HTTP, HTTPS, FTP and FTPS on redirect (since
+7.65.2). Specifying \fIall\fP or \fI+all\fP enables all protocols on redirects, which
+is not good for security.
 
-Added in 7.20.2.
+Example:
+.nf
+ curl --proto-redir =http,https https://example.com
+.fi
 .IP "\-\-proto <protocols>"
 Tells curl to limit what protocols it may use for transfers. Protocols are
 evaluated left to right, are comma separated, and are each a protocol name or
-\&'all', optionally prefixed by zero or more modifiers. Available modifiers are:
+\&\(aqall', optionally prefixed by zero or more modifiers. Available modifiers are:
 .RS
 .TP 3
 .B +
@@ -1904,46 +2620,96 @@
 This option can be used multiple times, in which case the effect is the same
 as concatenating the protocols into one instance of the option.
 
-See also \fI--proto-redir\fP and \fI--proto-default\fP. Added in 7.20.2.
+Example:
+.nf
+ curl --proto =http,https,sftp https://example.com
+.fi
+
+See also \fI--proto-redir\fP and \fI--proto-default\fP.
 .IP "\-\-proxy-anyauth"
 Tells curl to pick a suitable authentication method when communicating with
 the given HTTP proxy. This might cause an extra request/response round-trip.
 
-See also \fI-x, --proxy\fP, \fI--proxy-basic\fP and \fI--proxy-digest\fP. Added in 7.13.2.
+Example:
+.nf
+ curl --proxy-anyauth --proxy-user user:passwd -x proxy https://example.com
+.fi
+
+See also \fI-x, --proxy\fP, \fI--proxy-basic\fP and \fI--proxy-digest\fP.
 .IP "\-\-proxy-basic"
 Tells curl to use HTTP Basic authentication when communicating with the given
 proxy. Use \fI\-\-basic\fP for enabling HTTP Basic with a remote host. Basic is the
 default authentication method curl uses with proxies.
 
+Example:
+.nf
+ curl --proxy-basic --proxy-user user:passwd -x proxy https://example.com
+.fi
+
 See also \fI-x, --proxy\fP, \fI--proxy-anyauth\fP and \fI--proxy-digest\fP.
 .IP "\-\-proxy-cacert <file>"
 Same as \fI\-\-cacert\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-cacert CA-file.txt -x https://proxy https://example.com
+.fi
+
 See also \fI--proxy-capath\fP, \fI--cacert\fP, \fI--capath\fP and \fI-x, --proxy\fP. Added in 7.52.0.
 .IP "\-\-proxy-capath <dir>"
 Same as \fI\-\-capath\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-capath /local/directory -x https://proxy https://example.com
+.fi
+
 See also \fI--proxy-cacert\fP, \fI-x, --proxy\fP and \fI--capath\fP. Added in 7.52.0.
 .IP "\-\-proxy-cert-type <type>"
 Same as \fI\-\-cert-type\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-cert-type PEM --proxy-cert file -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-cert <cert[:passwd]>"
 Same as \fI\-E, \-\-cert\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-cert file -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-ciphers <list>"
 Same as \fI\-\-ciphers\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-crlfile <file>"
 Same as \fI\-\-crlfile\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-crlfile rejects.txt -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-digest"
 Tells curl to use HTTP Digest authentication when communicating with the given
 proxy. Use \fI\-\-digest\fP for enabling HTTP Digest with a remote host.
 
+Example:
+.nf
+ curl --proxy-digest --proxy-user user:passwd -x proxy https://example.com
+.fi
+
 See also \fI-x, --proxy\fP, \fI--proxy-anyauth\fP and \fI--proxy-basic\fP.
 .IP "\-\-proxy-header <header/@file>"
 (HTTP) Extra header to include in the request when sending HTTP to a proxy. You may
@@ -1965,37 +2731,76 @@
 
 This option can be used multiple times to add/replace/remove multiple headers.
 
+Examples:
+.nf
+ curl --proxy-header "X-First-Name: Joe" -x http://proxy https://example.com
+ curl --proxy-header "User-Agent: surprise" -x http://proxy https://example.com
+ curl --proxy-header "Host:" -x http://proxy https://example.com
+.fi
+
 Added in 7.37.0.
 .IP "\-\-proxy-insecure"
 Same as \fI\-k, \-\-insecure\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-insecure -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-key-type <type>"
 Same as \fI\-\-key-type\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-key-type DER --proxy-key here -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-key <key>"
 Same as \fI\-\-key\fP but used in HTTPS proxy context.
+
+Example:
+.nf
+ curl --proxy-key here -x https://proxy https://example.com
+.fi
+
+Added in 7.52.0.
 .IP "\-\-proxy-negotiate"
 Tells curl to use HTTP Negotiate (SPNEGO) authentication when communicating
 with the given proxy. Use \fI\-\-negotiate\fP for enabling HTTP Negotiate (SPNEGO)
 with a remote host.
 
-See also \fI--proxy-anyauth\fP and \fI--proxy-basic\fP. Added in 7.17.1.
+Example:
+.nf
+ curl --proxy-negotiate --proxy-user user:passwd -x proxy https://example.com
+.fi
+
+See also \fI--proxy-anyauth\fP and \fI--proxy-basic\fP.
 .IP "\-\-proxy-ntlm"
 Tells curl to use HTTP NTLM authentication when communicating with the given
 proxy. Use \fI\-\-ntlm\fP for enabling NTLM with a remote host.
 
+Example:
+.nf
+ curl --proxy-ntlm --proxy-user user:passwd -x http://proxy https://example.com
+.fi
+
 See also \fI--proxy-negotiate\fP and \fI--proxy-anyauth\fP.
 .IP "\-\-proxy-pass <phrase>"
 Same as \fI\-\-pass\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-pass secret --proxy-key here -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-pinnedpubkey <hashes>"
 (TLS) Tells curl to use the specified public key file (or hashes) to verify the
 proxy. This can be a path to a file which contains a single public key in PEM
 or DER format, or any number of base64 encoded sha256 hashes preceded by
-\'sha256//\' and separated by \';\'
+\(aqsha256//' and separated by ';'.
 
 When negotiating a TLS or SSL connection, the server sends a certificate
 indicating its identity. A public key is extracted from this certificate and
@@ -2003,17 +2808,40 @@
 abort the connection before sending or receiving any data.
 
 If this option is used several times, the last one will be used.
+
+Examples:
+.nf
+ curl --proxy-pinnedpubkey keyfile https://example.com
+ curl --proxy-pinnedpubkey 'sha256//ce118b51897f4452dc' https://example.com
+.fi
+
+Added in 7.59.0.
 .IP "\-\-proxy-service-name <name>"
 This option allows you to change the service name for proxy negotiation.
 
+Example:
+.nf
+ curl --proxy-service-name "shrubbery" -x proxy https://example.com
+.fi
+
 Added in 7.43.0.
 .IP "\-\-proxy-ssl-allow-beast"
 Same as \fI\-\-ssl-allow-beast\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-ssl-allow-beast -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-ssl-auto-client-cert"
 Same as \fI\-\-ssl-auto-client-cert\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-ssl-auto-client-cert -x https://proxy https://example.com
+.fi
+
 Added in 7.77.0.
 .IP "\-\-proxy-tls13-ciphers <ciphersuite list>"
 (TLS) Specifies which cipher suites to use in the connection to your HTTPS proxy
@@ -2027,21 +2855,48 @@
 cipher suites by using the \fI\-\-proxy-ciphers\fP option.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy https://example.com
+.fi
+
+Added in 7.61.0.
 .IP "\-\-proxy-tlsauthtype <type>"
 Same as \fI\-\-tlsauthtype\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-tlsauthtype SRP -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-tlspassword <string>"
 Same as \fI\-\-tlspassword\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-tlspassword passwd -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-tlsuser <name>"
 Same as \fI\-\-tlsuser\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-tlsuser smith -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-proxy-tlsv1"
 Same as \fI\-1, \-\-tlsv1\fP but used in HTTPS proxy context.
 
+Example:
+.nf
+ curl --proxy-tlsv1 -x https://proxy https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-U, \-\-proxy-user <user:password>"
 Specify the user name and password to use for proxy authentication.
@@ -2057,13 +2912,18 @@
 from a file instead or similar and never used in clear text in a command line.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --proxy-user name:pwd -x proxy https://example.com
+.fi
 .IP "\-x, \-\-proxy [protocol://]host[:port]"
 Use the specified proxy.
 
 The proxy string can be specified with a protocol:// prefix. No protocol
 specified or http:// will be treated as HTTP proxy. Use socks4://, socks4a://,
 socks5:// or socks5h:// to request a specific SOCKS version to be used.
-(The protocol support was added in curl 7.21.7)
+
 
 HTTPS proxy support via https:// protocol prefix was added in 7.52.0 for
 OpenSSL, GnuTLS and NSS.
@@ -2075,7 +2935,7 @@
 1080.
 
 This option overrides existing environment variables that set the proxy to
-use. If there's an environment variable setting a proxy, you can set proxy to
+use. If there\(aqs an environment variable setting a proxy, you can set proxy to
 \&"" to override it.
 
 All operations that are performed over an HTTP proxy will transparently be
@@ -2092,6 +2952,11 @@
 password.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --proxy http://proxy.example https://example.com
+.fi
 .IP "\-\-proxy1.0 <host[:port]>"
 Use the specified HTTP 1.0 proxy. If the port number is not specified, it is
 assumed at port 1080.
@@ -2099,6 +2964,11 @@
 The only difference between this and the HTTP proxy option \fI\-x, \-\-proxy\fP, is that
 attempts to use CONNECT through the proxy will specify an HTTP 1.0 protocol
 instead of the default HTTP 1.1.
+
+Example:
+.nf
+ curl --proxy1.0 -x http://proxy https://example.com
+.fi
 .IP "\-p, \-\-proxytunnel"
 When an HTTP proxy is used \fI\-x, \-\-proxy\fP, this option will make curl tunnel through
 the proxy. The tunnel approach is made with the HTTP proxy CONNECT request and
@@ -2108,6 +2978,11 @@
 To suppress proxy CONNECT response headers when curl is set to output headers
 use \fI\-\-suppress-connect-headers\fP.
 
+Example:
+.nf
+ curl --proxytunnel -x http://proxy https://example.com
+.fi
+
 See also \fI-x, --proxy\fP.
 .IP "\-\-pubkey <key>"
 (SFTP SCP) Public key file name. Allows you to provide your public key in this separate
@@ -2119,22 +2994,27 @@
 private key file, so passing this option is generally not required. Note that
 this public key extraction requires libcurl to be linked against a copy of
 libssh2 1.2.8 or higher that is itself linked against OpenSSL.)
+
+Example:
+.nf
+ curl --pubkey file.pub sftp://example.com/
+.fi
 .IP "\-Q, \-\-quote <command>"
-(FTP SFTP) 
-Send an arbitrary command to the remote FTP or SFTP server. Quote commands are
+(FTP SFTP) Send an arbitrary command to the remote FTP or SFTP server. Quote commands are
 sent BEFORE the transfer takes place (just after the initial PWD command in an
 FTP transfer, to be exact). To make commands take place after a successful
-transfer, prefix them with a dash '-'.  To make commands be sent after curl
+transfer, prefix them with a dash \(aq-'.  To make commands be sent after curl
 has changed the working directory, just before the transfer command(s), prefix
-the command with a '+' (this is only supported for FTP). You may specify any
+the command with a \(aq+' (this is only supported for FTP). You may specify any
 number of commands.
 
-If the server returns failure for one of the commands, the entire operation
-will be aborted. You must send syntactically correct FTP commands as RFC 959
-defines to FTP servers, or one of the commands listed below to SFTP servers.
+By default curl will stop at first failure. To make curl continue even if the
+command fails, prefix the command with an asterisk (*). Otherwise, if the
+server returns failure for one of the commands, the entire operation will be
+aborted.
 
-Prefix the command with an asterisk (*) to make curl continue even if the
-command fails as by default curl will stop at first failure.
+You must send syntactically correct FTP commands as RFC 959 defines to FTP
+servers, or one of the commands listed below to SFTP servers.
 
 This option can be used multiple times.
 
@@ -2180,10 +3060,20 @@
 .IP "symlink source_file target_file"
 See ln.
 .RE
+
+Example:
+.nf
+ curl --quote "DELE file" ftp://example.com/foo
+.fi
 .IP "\-\-random-file <file>"
 Specify the path name to file containing what will be considered as random
 data. The data may be used to seed the random engine for SSL connections.  See
 also the \fI\-\-egd-file\fP option.
+
+Example:
+.nf
+ curl --random-file rubbish https://example.com
+.fi
 .IP "\-r, \-\-range <range>"
 (HTTP FTP SFTP FILE) Retrieve a byte range (i.e. a partial document) from an HTTP/1.1, FTP or SFTP
 server or a local FILE. Ranges can be specified in a number of ways.
@@ -2212,34 +3102,49 @@
 response, which will be returned as-is by curl! Parsing or otherwise
 transforming this response is the responsibility of the caller.
 
-Only digit characters (0-9) are valid in the 'start' and 'stop' fields of the
-\&'start-stop' range syntax. If a non-digit character is given in the range,
-the server's response will be unspecified, depending on the server's
+Only digit characters (0-9) are valid in the \(aqstart' and 'stop' fields of the
+\&\(aqstart-stop' range syntax. If a non-digit character is given in the range,
+the server\(aqs response will be unspecified, depending on the server's
 configuration.
 
 You should also be aware that many HTTP/1.1 servers do not have this feature
-enabled, so that when you attempt to get a range, you'll instead get the whole
-document.
+enabled, so that when you attempt to get a range, you will instead get the
+whole document.
 
-FTP and SFTP range downloads only support the simple 'start-stop' syntax
+FTP and SFTP range downloads only support the simple \(aqstart-stop' syntax
 (optionally with one of the numbers omitted). FTP use depends on the extended
 FTP command SIZE.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --range 22-44 https://example.com
+.fi
 .IP "\-\-raw"
 (HTTP) When used, it disables all internal HTTP decoding of content or transfer
 encodings and instead makes them passed on unaltered, raw.
 
-Added in 7.16.2.
+Example:
+.nf
+ curl --raw https://example.com
+.fi
 .IP "\-e, \-\-referer <URL>"
 (HTTP) Sends the "Referrer Page" information to the HTTP server. This can also be set
 with the \fI\-H, \-\-header\fP flag of course.  When used with \fI\-L, \-\-location\fP you can append
 ";auto" to the \fI\-e, \-\-referer\fP URL to make curl automatically set the previous URL
 when it follows a Location: header. The \&";auto" string can be used alone,
-even if you don't set an initial \fI\-e, \-\-referer\fP.
+even if you do not set an initial \fI\-e, \-\-referer\fP.
 
 If this option is used several times, the last one will be used.
 
+Examples:
+.nf
+ curl --referer "https://fake.example" https://example.com
+ curl --referer "https://fake.example;auto" -L https://example.com
+ curl --referer ";auto" -L https://example.com
+.fi
+
 See also \fI-A, --user-agent\fP and \fI-H, --header\fP.
 .IP "\-J, \-\-remote-header-name"
 (HTTP) This option tells the \fI\-O, \-\-remote-name\fP option to use the server-specified
@@ -2247,22 +3152,30 @@
 
 If the server specifies a file name and a file with that name already exists
 in the current working directory it will not be overwritten and an error will
-occur. If the server doesn't specify a file name then this option has no
+occur. If the server does not specify a file name then this option has no
 effect.
 
-There's no attempt to decode %-sequences (yet) in the provided file name, so
+There\(aqs no attempt to decode %-sequences (yet) in the provided file name, so
 this option may provide you with rather unexpected file names.
 
 \fBWARNING\fP: Exercise judicious use of this option, especially on Windows. A
 rogue server could send you the name of a DLL or other file that could possibly
 be loaded automatically by Windows or some third party software.
+
+Example:
+.nf
+ curl -OJ https://example.com/file
+.fi
 .IP "\-\-remote-name-all"
 This option changes the default action for all given URLs to be dealt with as
 if \fI\-O, \-\-remote-name\fP were used for each one. So if you want to disable that for a
 specific URL after \fI\-\-remote-name-all\fP has been used, you must use "-o \-" or
 \-\-no-remote-name.
 
-Added in 7.19.0.
+Example:
+.nf
+ curl --remote-name-all ftp://example.com/file1 ftp://example.com/file2
+.fi
 .IP "\-O, \-\-remote-name"
 Write output to a local file named like the remote file we get. (Only the file
 part of the remote file is used, the path is cut off.)
@@ -2281,16 +3194,31 @@
 encoded parts of the name, they will end up as-is as file name.
 
 You may use this option as many times as the number of URLs you have.
+
+Example:
+.nf
+ curl -O https://example.com/filename
+.fi
 .IP "\-R, \-\-remote-time"
 When used, this will make curl attempt to figure out the timestamp of the
 remote file, and if that is available make the local file get that same
 timestamp.
+
+Example:
+.nf
+ curl --remote-time -o foo https://example.com
+.fi
 .IP "\-\-request-target <path>"
 (HTTP) Tells curl to use an alternative "target" (path) instead of using the path as
 provided in the URL. Particularly useful when wanting to issue HTTP requests
-without leading slash or other data that doesn't follow the regular URL
+without leading slash or other data that does not follow the regular URL
 pattern, like "OPTIONS *".
 
+Example:
+.nf
+ curl --request-target "*" -X OPTIONS https://example.com
+.fi
+
 Added in 7.55.0.
 .IP "\-X, \-\-request <command>"
 (HTTP) Specifies a custom request method to use when communicating with the
@@ -2300,7 +3228,7 @@
 DELETE, but related technologies like WebDAV offers PROPFIND, COPY, MOVE and
 more.
 
-Normally you don't need this option. All sorts of GET, HEAD, POST and PUT
+Normally you do not need this option. All sorts of GET, HEAD, POST and PUT
 requests are rather invoked by using dedicated command line options.
 
 This option only changes the actual word used in the HTTP request, it does not
@@ -2309,7 +3237,7 @@
 
 The method string you set with \fI\-X, \-\-request\fP will be used for all requests, which
 if you for example use \fI\-L, \-\-location\fP may cause unintended side-effects when curl
-doesn't change request method according to the HTTP 30x response codes \- and
+does not change request method according to the HTTP 30x response codes \- and
 similar.
 
 (FTP)
@@ -2317,8 +3245,8 @@
 with FTP.
 
 (POP3)
-Specifies a custom POP3 command to use instead of LIST or RETR. (Added in
-7.26.0)
+Specifies a custom POP3 command to use instead of LIST or RETR.
+
 
 (IMAP)
 Specifies a custom IMAP command to use instead of LIST. (Added in 7.30.0)
@@ -2327,6 +3255,12 @@
 Specifies a custom SMTP command to use instead of HELP or VRFY. (Added in 7.34.0)
 
 If this option is used several times, the last one will be used.
+
+Examples:
+.nf
+ curl -X "DELETE" https://example.com
+ curl -X NLST ftp://example.com/
+.fi
 .IP "\-\-resolve <[+]host:port:addr[,addr]...>"
 Provide a custom address for a specific host and port pair. Using this, you
 can make the curl requests(s) use a specified address and prevent the
@@ -2336,14 +3270,14 @@
 you need several entries if you want to provide address for the same host but
 different ports.
 
-By specifying '*' as host you can tell curl to resolve any host and specific
+By specifying \(aq*' as host you can tell curl to resolve any host and specific
 port pair to the specified address. Wildcard is resolved last so any \fI\-\-resolve\fP
 with a specific host and port will be used first.
 
 The provided address set by this option will be used even if \fI\-4, \-\-ipv4\fP or \fI\-6, \-\-ipv6\fP
 is set to make curl use another IP version.
 
-By prefixing the host with a '+' you can make the entry time out after curl's
+By prefixing the host with a \(aq+' you can make the entry time out after curl's
 default timeout (1 minute). Note that this will only make sense for long
 running parallel transfers with a lot of files. In such cases, if this option
 is used curl will try to resolve the host as it normally would once the
@@ -2355,27 +3289,31 @@
 
 Support for resolving with wildcard was added in 7.64.0.
 
-Support for the '+' prefix was was added in 7.75.0.
+Support for the \(aq+' prefix was was added in 7.75.0.
 
 This option can be used many times to add many host names to resolve.
 
-Added in 7.21.3.
+Example:
+.nf
+ curl --resolve example.com:443:127.0.0.1 https://example.com
+.fi
 .IP "\-\-retry-all-errors"
 Retry on any error. This option is used together with \fI\-\-retry\fP.
 
 This option is the "sledgehammer" of retrying. Do not use this option by
 default (eg in curlrc), there may be unintended consequences such as sending or
-receiving duplicate data. Do not use with redirected input or output. You'd be
+receiving duplicate data. Do not use with redirected input or output. You\(aqd be
 much better off handling your unique problems in shell script. Please read the
 example below.
 
-Warning: For server compatibility curl attempts to retry failed flaky transfers
-as close as possible to how they were started, but this is not possible with
-redirected input or output. For example, before retrying it removes output data
-from a failed partial transfer that was written to an output file. However this
-is not true of data redirected to a | pipe or > file, which are not reset. We
-strongly suggest don't parse or record output via redirect in combination with
-this option, since you may receive duplicate data.
+\fBWARNING\fP: For server compatibility curl attempts to retry failed flaky
+transfers as close as possible to how they were started, but this is not
+possible with redirected input or output. For example, before retrying it
+removes output data from a failed partial transfer that was written to an
+output file. However this is not true of data redirected to a | pipe or >
+file, which are not reset. We strongly suggest you do not parse or record
+output via redirect in combination with this option, since you may receive
+duplicate data.
 
 By default curl will not error on an HTTP response code that indicates an HTTP
 error, if the transfer was successful. For example, if a server replies 404
@@ -2385,11 +3323,21 @@
 as 404. If you want to retry on all response codes that indicate HTTP errors
 (4xx and 5xx) then combine with \fI\-f, \-\-fail\fP.
 
+Example:
+.nf
+ curl --retry-all-errors https://example.com
+.fi
+
 Added in 7.71.0.
 .IP "\-\-retry-connrefused"
 In addition to the other conditions, consider ECONNREFUSED as a transient
 error too for \fI\-\-retry\fP. This option is used together with \-\-retry.
 
+Example:
+.nf
+ curl --retry-connrefused --retry https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-\-retry-delay <seconds>"
 Make curl sleep this amount of time before each retry when a transfer has
@@ -2399,18 +3347,24 @@
 
 If this option is used several times, the last one will be used.
 
-Added in 7.12.3.
+Example:
+.nf
+ curl --retry-delay 5 --retry https://example.com
+.fi
 .IP "\-\-retry-max-time <seconds>"
 The retry timer is reset before the first transfer attempt. Retries will be
-done as usual (see \fI\-\-retry\fP) as long as the timer hasn't reached this given
-limit. Notice that if the timer hasn't reached the limit, the request will be
+done as usual (see \fI\-\-retry\fP) as long as the timer has not reached this given
+limit. Notice that if the timer has not reached the limit, the request will be
 made and while performing, it may take longer than this given time period. To
-limit a single request\'s maximum time, use \fI\-m, \-\-max-time\fP.  Set this option to
+limit a single request\(aqs maximum time, use \fI\-m, \-\-max-time\fP.  Set this option to
 zero to not timeout retries.
 
 If this option is used several times, the last one will be used.
 
-Added in 7.12.3.
+Example:
+.nf
+ curl --retry-max-time 30 --retry 10 https://example.com
+.fi
 .IP "\-\-retry <num>"
 If a transient error is returned when curl tries to perform a transfer, it
 will retry this number of times before giving up. Setting the number to 0
@@ -2429,39 +3383,70 @@
 
 If this option is used several times, the last one will be used.
 
-Added in 7.12.3.
+Example:
+.nf
+ curl --retry 7 https://example.com
+.fi
 .IP "\-\-sasl-authzid <identity>"
 Use this authorisation identity (authzid), during SASL PLAIN authentication,
 in addition to the authentication identity (authcid) as specified by \fI\-u, \-\-user\fP.
 
-If the option isn't specified, the server will derive the authzid from the
+If the option is not specified, the server will derive the authzid from the
 authcid, but if specified, and depending on the server implementation, it may
-be used to access another user's inbox, that the user has been granted access
+be used to access another user\(aqs inbox, that the user has been granted access
 to, or a shared mailbox for example.
 
+Example:
+.nf
+ curl --sasl-authzid zid imap://example.com/
+.fi
+
 Added in 7.66.0.
 .IP "\-\-sasl-ir"
 Enable initial response in SASL authentication.
 
+Example:
+.nf
+ curl --sasl-ir imap://example.com/
+.fi
+
 Added in 7.31.0.
 .IP "\-\-service-name <name>"
 This option allows you to change the service name for SPNEGO.
 
 Examples: \fI\-\-negotiate\fP \fI\-\-service-name\fP sockd would use sockd/server-name.
 
+Example:
+.nf
+ curl --service-name sockd/server https://example.com
+.fi
+
 Added in 7.43.0.
 .IP "\-S, \-\-show-error"
 When used with \fI\-s, \-\-silent\fP, it makes curl show an error message if it fails.
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
+Example:
+.nf
+ curl --show-error --silent https://example.com
+.fi
+
 See also \fI--no-progress-meter\fP.
 .IP "\-s, \-\-silent"
-Silent or quiet mode. Don't show progress meter or error messages.  Makes Curl
+Silent or quiet mode. Do not show progress meter or error messages.  Makes Curl
 mute. It will still output the data you ask for, potentially even to the
 terminal/stdout unless you redirect it.
 
 Use \fI\-S, \-\-show-error\fP in addition to this option to disable progress meter but
 still show error messages.
 
+Example:
+.nf
+ curl -s https://example.com
+.fi
+
 See also \fI-v, --verbose\fP, \fI--stderr\fP and \fI--no-progress-meter\fP.
 .IP "\-\-socks4 <host[:port]>"
 Use the specified SOCKS4 proxy. If the port number is not specified, it is
@@ -2471,8 +3456,8 @@
 This option overrides any previous use of \fI\-x, \-\-proxy\fP, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks4 proxy
-with \fI\-x, \-\-proxy\fP using a socks4:// protocol prefix.
+This option is superfluous since you can specify a socks4 proxy with \fI\-x, \-\-proxy\fP
+using a socks4:// protocol prefix.
 
 Since 7.52.0, \fI\-\-preproxy\fP can be used to specify a SOCKS proxy at the same time
 \fI\-x, \-\-proxy\fP is used with an HTTP/HTTPS proxy. In such a case curl first connects to
@@ -2480,7 +3465,10 @@
 
 If this option is used several times, the last one will be used.
 
-Added in 7.15.2.
+Example:
+.nf
+ curl --socks4 hostname:4096 https://example.com
+.fi
 .IP "\-\-socks4a <host[:port]>"
 Use the specified SOCKS4a proxy. If the port number is not specified, it is
 assumed at port 1080. This asks the proxy to resolve the host name.
@@ -2488,8 +3476,8 @@
 This option overrides any previous use of \fI\-x, \-\-proxy\fP, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks4a proxy
-with \fI\-x, \-\-proxy\fP using a socks4a:// protocol prefix.
+This option is superfluous since you can specify a socks4a proxy with \fI\-x, \-\-proxy\fP
+using a socks4a:// protocol prefix.
 
 Since 7.52.0, \fI\-\-preproxy\fP can be used to specify a SOCKS proxy at the same time
 \fI\-x, \-\-proxy\fP is used with an HTTP/HTTPS proxy. In such a case curl first connects to
@@ -2497,12 +3485,20 @@
 
 If this option is used several times, the last one will be used.
 
-Added in 7.18.0.
+Example:
+.nf
+ curl --socks4a hostname:4096 https://example.com
+.fi
 .IP "\-\-socks5-basic"
 Tells curl to use username/password authentication when connecting to a SOCKS5
 proxy.  The username/password authentication is enabled by default.  Use
 \fI\-\-socks5-gssapi\fP to force GSS-API authentication to SOCKS5 proxies.
 
+Example:
+.nf
+ curl --socks5-basic --socks5 hostname:4096 https://example.com
+.fi
+
 Added in 7.55.0.
 .IP "\-\-socks5-gssapi-nec"
 As part of the GSS-API negotiation a protection mode is negotiated. RFC 1961
@@ -2510,7 +3506,10 @@
 implementation does not.  The option \fI\-\-socks5-gssapi-nec\fP allows the
 unprotected exchange of the protection mode negotiation.
 
-Added in 7.19.4.
+Example:
+.nf
+ curl --socks5-gssapi-nec --socks5 hostname:4096 https://example.com
+.fi
 .IP "\-\-socks5-gssapi-service <name>"
 The default service name for a socks server is rcmd/server-fqdn. This option
 allows you to change it.
@@ -2520,13 +3519,21 @@
 would use sockd/real-name for cases where the proxy-name does not match the
 principal name.
 
-Added in 7.19.4.
+Example:
+.nf
+ curl --socks5-gssapi-service sockd --socks5 hostname:4096 https://example.com
+.fi
 .IP "\-\-socks5-gssapi"
 Tells curl to use GSS-API authentication when connecting to a SOCKS5 proxy.
 The GSS-API authentication is enabled by default (if curl is compiled with
 GSS-API support).  Use \fI\-\-socks5-basic\fP to force username/password authentication
 to SOCKS5 proxies.
 
+Example:
+.nf
+ curl --socks5-gssapi --socks5 hostname:4096 https://example.com
+.fi
+
 Added in 7.55.0.
 .IP "\-\-socks5-hostname <host[:port]>"
 Use the specified SOCKS5 proxy (and let the proxy resolve the host name). If
@@ -2535,8 +3542,8 @@
 This option overrides any previous use of \fI\-x, \-\-proxy\fP, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks5
-hostname proxy with \fI\-x, \-\-proxy\fP using a socks5h:// protocol prefix.
+This option is superfluous since you can specify a socks5 hostname proxy with
+\fI\-x, \-\-proxy\fP using a socks5h:// protocol prefix.
 
 Since 7.52.0, \fI\-\-preproxy\fP can be used to specify a SOCKS proxy at the same time
 \fI\-x, \-\-proxy\fP is used with an HTTP/HTTPS proxy. In such a case curl first connects to
@@ -2544,7 +3551,10 @@
 
 If this option is used several times, the last one will be used.
 
-Added in 7.18.0.
+Example:
+.nf
+ curl --socks5-hostname proxy.example:7000 https://example.com
+.fi
 .IP "\-\-socks5 <host[:port]>"
 Use the specified SOCKS5 proxy \- but resolve the host name locally. If the
 port number is not specified, it is assumed at port 1080.
@@ -2552,8 +3562,8 @@
 This option overrides any previous use of \fI\-x, \-\-proxy\fP, as they are mutually
 exclusive.
 
-Since 7.21.7, this option is superfluous since you can specify a socks5 proxy
-with \fI\-x, \-\-proxy\fP using a socks5:// protocol prefix.
+This option is superfluous since you can specify a socks5 proxy with \fI\-x, \-\-proxy\fP
+using a socks5:// protocol prefix.
 
 Since 7.52.0, \fI\-\-preproxy\fP can be used to specify a SOCKS proxy at the same time
 \fI\-x, \-\-proxy\fP is used with an HTTP/HTTPS proxy. In such a case curl first connects to
@@ -2563,13 +3573,21 @@
 
 This option (as well as \fI\-\-socks4\fP) does not work with IPV6, FTPS or LDAP.
 
-Added in 7.18.0.
+Example:
+.nf
+ curl --socks5 proxy.example:7000 https://example.com
+.fi
 .IP "\-Y, \-\-speed-limit <speed>"
 If a download is slower than this given speed (in bytes per second) for
 speed-time seconds it gets aborted. speed-time is set with \fI\-y, \-\-speed-time\fP and is
 30 if not set.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --speed-limit 300 --speed-time 10 https://example.com
+.fi
 .IP "\-y, \-\-speed-time <seconds>"
 If a download is slower than speed-limit bytes per second during a speed-time
 period, the download gets aborted. If speed-time is used, the default
@@ -2579,14 +3597,24 @@
 this is a concern for you, try the \fI\-\-connect-timeout\fP option.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --speed-limit 300 --speed-time 10 https://example.com
+.fi
 .IP "\-\-ssl-allow-beast"
 This option tells curl to not work around a security flaw in the SSL3 and
-TLS1.0 protocols known as BEAST.  If this option isn't used, the SSL layer may
-use workarounds known to cause interoperability problems with some older SSL
-implementations. WARNING: this option loosens the SSL security, and by using
-this flag you ask for exactly that.
+TLS1.0 protocols known as BEAST.  If this option is not used, the SSL layer
+may use workarounds known to cause interoperability problems with some older
+SSL implementations.
 
-Added in 7.25.0.
+\fBWARNING\fP: this option loosens the SSL security, and by using this flag you
+ask for exactly that.
+
+Example:
+.nf
+ curl --ssl-allow-beast https://example.com
+.fi
 .IP "\-\-ssl-auto-client-cert"
 Tell libcurl to automatically locate and use a client certificate for
 authentication, when requested by the server. This option is only supported
@@ -2595,39 +3623,65 @@
 certificate that supports client authentication in the OS certificate store it
 could be a privacy violation and unexpected.
 
+Example:
+.nf
+ curl --ssl-auto-client-cert https://example.com
+.fi
+
 See also \fI--proxy-ssl-auto-client-cert\fP. Added in 7.77.0.
 .IP "\-\-ssl-no-revoke"
 (Schannel) This option tells curl to disable certificate revocation checks.
 WARNING: this option loosens the SSL security, and by using this flag you ask
 for exactly that.
 
+Example:
+.nf
+ curl --ssl-no-revoke https://example.com
+.fi
+
 Added in 7.44.0.
 .IP "\-\-ssl-reqd"
 (FTP IMAP POP3 SMTP) Require SSL/TLS for the connection.  Terminates the connection if the server
-doesn't support SSL/TLS.
+does not support SSL/TLS.
 
 This option was formerly known as \-\-ftp-ssl-reqd.
 
-Added in 7.20.0.
+Example:
+.nf
+ curl --ssl-reqd ftp://example.com
+.fi
 .IP "\-\-ssl-revoke-best-effort"
 (Schannel) This option tells curl to ignore certificate revocation checks when
 they failed due to missing/offline distribution points for the revocation check
 lists.
 
+Example:
+.nf
+ curl --ssl-revoke-best-effort https://example.com
+.fi
+
 Added in 7.70.0.
 .IP "\-\-ssl"
-(FTP IMAP POP3 SMTP) 
-Try to use SSL/TLS for the connection.  Reverts to a non-secure connection if
-the server doesn't support SSL/TLS.  See also \fI\-\-ftp-ssl-control\fP and \fI\-\-ssl-reqd\fP
+(FTP IMAP POP3 SMTP) Try to use SSL/TLS for the connection.  Reverts to a non-secure connection if
+the server does not support SSL/TLS.  See also \fI\-\-ftp-ssl-control\fP and \fI\-\-ssl-reqd\fP
 for different levels of encryption required.
 
-This option was formerly known as \-\-ftp-ssl (Added in 7.11.0). That option
+This option was formerly known as \-\-ftp-ssl. That option
 name can still be used but will be removed in a future version.
 
-Added in 7.20.0.
+Example:
+.nf
+ curl --ssl pop3://example.com/
+.fi
 .IP "\-2, \-\-sslv2"
-(SSL) This option previously asked curl to use SSLv2, but starting in curl 7.77.0 this
-instruction is ignored. SSLv2 is widely considered insecure (see RFC 6176).
+(SSL) This option previously asked curl to use SSLv2, but starting in curl 7.77.0
+this instruction is ignored. SSLv2 is widely considered insecure (see RFC
+6176).
+
+Example:
+.nf
+ curl --sslv2 https://example.com
+.fi
 
 See also \fI--http1.1\fP and \fI--http2\fP. \fI-2, --sslv2\fP requires that the underlying libcurl was built to support TLS. This option overrides \fI-3, --sslv3\fP and \fI-1, --tlsv1\fP and \fI--tlsv1.1\fP and \fI--tlsv1.2\fP.
 .IP "\-3, \-\-sslv3"
@@ -2635,38 +3689,72 @@
 this instruction is ignored. SSLv3 is widely considered insecure (see RFC
 7568).
 
+Example:
+.nf
+ curl --sslv3 https://example.com
+.fi
+
 See also \fI--http1.1\fP and \fI--http2\fP. \fI-3, --sslv3\fP requires that the underlying libcurl was built to support TLS. This option overrides \fI-2, --sslv2\fP and \fI-1, --tlsv1\fP and \fI--tlsv1.1\fP and \fI--tlsv1.2\fP.
 .IP "\-\-stderr <file>"
 Redirect all writes to stderr to the specified file instead. If the file name
-is a plain '-', it is instead written to stdout.
+is a plain \(aq-', it is instead written to stdout.
+
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --stderr output.txt https://example.com
+.fi
+
 See also \fI-v, --verbose\fP and \fI-s, --silent\fP.
 .IP "\-\-styled-output"
 Enables the automatic use of bold font styles when writing HTTP headers to the
 terminal. Use \-\-no-styled-output to switch them off.
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
+Example:
+.nf
+ curl --styled-output -I https://example.com
+.fi
+
 Added in 7.61.0.
 .IP "\-\-suppress-connect-headers"
-When \fI\-p, \-\-proxytunnel\fP is used and a CONNECT request is made don't output proxy
+When \fI\-p, \-\-proxytunnel\fP is used and a CONNECT request is made do not output proxy
 CONNECT response headers. This option is meant to be used with \fI\-D, \-\-dump-header\fP or
 \fI\-i, \-\-include\fP which are used to show protocol headers in the output. It has no
 effect on debug options such as \fI\-v, \-\-verbose\fP or \fI\-\-trace\fP, or any statistics.
 
-See also \fI-D, --dump-header\fP, \fI-i, --include\fP and \fI-p, --proxytunnel\fP.
+Example:
+.nf
+ curl --suppress-connect-headers --include -x proxy https://example.com
+.fi
+
+See also \fI-D, --dump-header\fP, \fI-i, --include\fP and \fI-p, --proxytunnel\fP. Added in 7.54.0.
 .IP "\-\-tcp-fastopen"
 Enable use of TCP Fast Open (RFC7413).
 
+Example:
+.nf
+ curl --tcp-fastopen https://example.com
+.fi
+
 Added in 7.49.0.
 .IP "\-\-tcp-nodelay"
 Turn on the TCP_NODELAY option. See the \fIcurl_easy_setopt(3)\fP man page for
 details about this option.
 
 Since 7.50.2, curl sets this option by default and you need to explicitly
-switch it off if you don't want it on.
+switch it off if you do not want it on.
 
-Added in 7.11.2.
+Example:
+.nf
+ curl --tcp-nodelay https://example.com
+.fi
 .IP "\-t, \-\-telnet-option <opt=val>"
 Pass options to the telnet protocol. Supported options are:
 
@@ -2675,6 +3763,11 @@
 XDISPLOC=<X display> Sets the X display location.
 
 NEW_ENV=<var,val> Sets an environment variable.
+
+Example:
+.nf
+ curl -t TTYPE=vt100 telnet://example.com/
+.fi
 .IP "\-\-tftp-blksize <value>"
 (TFTP) Set TFTP BLKSIZE option (must be >512). This is the block size that curl will
 try to use when transferring data to or from a TFTP server. By default 512
@@ -2682,7 +3775,10 @@
 
 If this option is used several times, the last one will be used.
 
-Added in 7.20.0.
+Example:
+.nf
+ curl --tftp-blksize 1024 tftp://example.com/file
+.fi
 .IP "\-\-tftp-no-options"
 (TFTP) Tells curl not to send TFTP options requests.
 
@@ -2690,11 +3786,16 @@
 or properly implement TFTP options. When this option is used \fI\-\-tftp-blksize\fP is
 ignored.
 
+Example:
+.nf
+ curl --tftp-no-options tftp://192.168.0.1/
+.fi
+
 Added in 7.48.0.
 .IP "\-z, \-\-time-cond <time>"
 (HTTP FTP) Request a file that has been modified later than the given time and date, or
 one that has been modified before that time. The <date expression> can be all
-sorts of date strings or if it doesn't match any internal ones, it is taken as
+sorts of date strings or if it does not match any internal ones, it is taken as
 a filename and tries to get the modification date (mtime) from <file>
 instead. See the \fIcurl_getdate(3)\fP man pages for date expression details.
 
@@ -2703,6 +3804,13 @@
 than the specified date/time.
 
 If this option is used several times, the last one will be used.
+
+Examples:
+.nf
+ curl -z "Wed 01 Sep 2021 12:18:00" https://example.com
+ curl -z "-Wed 01 Sep 2021 12:18:00" https://example.com
+ curl -z file https://example.com
+.fi
 .IP "\-\-tls-max <VERSION>"
 (SSL) VERSION defines maximum supported TLS version. The minimum acceptable version
 is set by tlsv1.0, tlsv1.1, tlsv1.2 or tlsv1.3.
@@ -2723,6 +3831,12 @@
 Use up to TLSv1.3.
 .RE
 
+Examples:
+.nf
+ curl --tls-max 1.2 https://example.com
+ curl --tls-max 1.3 --tlsv1.2 https://example.com
+.fi
+
 See also \fI--tlsv1.0\fP, \fI--tlsv1.1\fP, \fI--tlsv1.2\fP and \fI--tlsv1.3\fP. \fI--tls-max\fP requires that the underlying libcurl was built to support TLS. Added in 7.54.0.
 .IP "\-\-tls13-ciphers <ciphersuite list>"
 (TLS) Specifies which cipher suites to use in the connection if it negotiates TLS
@@ -2736,6 +3850,13 @@
 cipher suites by using the \fI\-\-ciphers\fP option.
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl --tls13-ciphers TLS_AES_128_GCM_SHA256 https://example.com
+.fi
+
+Added in 7.61.0.
 .IP "\-\-tlsauthtype <type>"
 Set TLS authentication type. Currently, the only supported option is "SRP",
 for TLS-SRP (RFC 5054). If \fI\-\-tlsuser\fP and \fI\-\-tlspassword\fP are specified but
@@ -2743,21 +3864,30 @@
 only if the underlying libcurl is built with TLS-SRP support, which requires
 OpenSSL or GnuTLS with TLS-SRP support.
 
-Added in 7.21.4.
+Example:
+.nf
+ curl --tlsauthtype SRP https://example.com
+.fi
 .IP "\-\-tlspassword <string>"
 Set password for use with the TLS authentication method specified with
 \fI\-\-tlsauthtype\fP. Requires that \fI\-\-tlsuser\fP also be set.
 
-This doesn't work with TLS 1.3.
+This option does not work with TLS 1.3.
 
-Added in 7.21.4.
+Example:
+.nf
+ curl --tlspassword pwd --tlsuser user https://example.com
+.fi
 .IP "\-\-tlsuser <name>"
 Set username for use with the TLS authentication method specified with
 \fI\-\-tlsauthtype\fP. Requires that \fI\-\-tlspassword\fP also is set.
 
-This doesn't work with TLS 1.3.
+This option does not work with TLS 1.3.
 
-Added in 7.21.4.
+Example:
+.nf
+ curl --tlspassword pwd --tlsuser user https://example.com
+.fi
 .IP "\-\-tlsv1.0"
 (TLS) Forces curl to use TLS version 1.0 or later when connecting to a remote TLS server.
 
@@ -2765,6 +3895,11 @@
 but behavior was inconsistent depending on the TLS library. Use \fI\-\-tls-max\fP if
 you want to set a maximum TLS version.
 
+Example:
+.nf
+ curl --tlsv1.0 https://example.com
+.fi
+
 Added in 7.34.0.
 .IP "\-\-tlsv1.1"
 (TLS) Forces curl to use TLS version 1.1 or later when connecting to a remote TLS server.
@@ -2773,6 +3908,11 @@
 but behavior was inconsistent depending on the TLS library. Use \fI\-\-tls-max\fP if
 you want to set a maximum TLS version.
 
+Example:
+.nf
+ curl --tlsv1.1 https://example.com
+.fi
+
 Added in 7.34.0.
 .IP "\-\-tlsv1.2"
 (TLS) Forces curl to use TLS version 1.2 or later when connecting to a remote TLS server.
@@ -2781,6 +3921,11 @@
 but behavior was inconsistent depending on the TLS library. Use \fI\-\-tls-max\fP if
 you want to set a maximum TLS version.
 
+Example:
+.nf
+ curl --tlsv1.2 https://example.com
+.fi
+
 Added in 7.34.0.
 .IP "\-\-tlsv1.3"
 (TLS) Forces curl to use TLS version 1.3 or later when connecting to a remote TLS
@@ -2791,45 +3936,85 @@
 
 Note that TLS 1.3 is not supported by all TLS backends.
 
+Example:
+.nf
+ curl --tlsv1.3 https://example.com
+.fi
+
 Added in 7.52.0.
 .IP "\-1, \-\-tlsv1"
 (SSL) Tells curl to use at least TLS version 1.x when negotiating with a remote TLS
 server. That means TLS version 1.0 or higher
 
+Example:
+.nf
+ curl --tlsv1 https://example.com
+.fi
+
 See also \fI--http1.1\fP and \fI--http2\fP. \fI-1, --tlsv1\fP requires that the underlying libcurl was built to support TLS. This option overrides \fI--tlsv1.1\fP and \fI--tlsv1.2\fP and \fI--tlsv1.3\fP.
 .IP "\-\-tr-encoding"
 (HTTP) Request a compressed Transfer-Encoding response using one of the algorithms
 curl supports, and uncompress the data while receiving it.
 
-Added in 7.21.6.
+Example:
+.nf
+ curl --tr-encoding https://example.com
+.fi
 .IP "\-\-trace-ascii <file>"
 Enables a full trace dump of all incoming and outgoing data, including
 descriptive information, to the given output file. Use "-" as filename to have
 the output sent to stdout.
 
-This is very similar to \fI\-\-trace\fP, but leaves out the hex part and only shows
-the ASCII part of the dump. It makes smaller output that might be easier to
-read for untrained humans.
+This is similar to \fI\-\-trace\fP, but leaves out the hex part and only shows the
+ASCII part of the dump. It makes smaller output that might be easier to read
+for untrained humans.
+
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
 
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --trace-ascii log.txt https://example.com
+.fi
+
 This option overrides \fI--trace\fP and \fI-v, --verbose\fP.
 .IP "\-\-trace-time"
 Prepends a time stamp to each trace or verbose line that curl displays.
 
-Added in 7.14.0.
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
+Example:
+.nf
+ curl --trace-time --trace-ascii output https://example.com
+.fi
 .IP "\-\-trace <file>"
 Enables a full trace dump of all incoming and outgoing data, including
 descriptive information, to the given output file. Use "-" as filename to have
 the output sent to stdout. Use "%" as filename to have the output sent to
 stderr.
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
 If this option is used several times, the last one will be used.
 
+Example:
+.nf
+ curl --trace log.txt https://example.com
+.fi
+
 This option overrides \fI-v, --verbose\fP and \fI--trace-ascii\fP.
 .IP "\-\-unix-socket <path>"
 (HTTP) Connect through this Unix domain socket, instead of using the network.
 
+Example:
+.nf
+ curl --unix-socket socket-path https://example.com
+.fi
+
 Added in 7.40.0.
 .IP "\-T, \-\-upload-file <file>"
 This transfers the specified local file to the remote URL. If there is no file
@@ -2840,26 +4025,27 @@
 this is used on an HTTP(S) server, the PUT command will be used.
 
 Use the file name "-" (a single dash) to use stdin instead of a given file.
-Alternately, the file name "." (a single period) may be specified instead
-of "-" to use stdin in non-blocking mode to allow reading server output
-while stdin is being uploaded.
+Alternately, the file name "." (a single period) may be specified instead of
+"-" to use stdin in non-blocking mode to allow reading server output while
+stdin is being uploaded.
 
 You can specify one \fI\-T, \-\-upload-file\fP for each URL on the command line. Each
 \fI\-T, \-\-upload-file\fP + URL pair specifies what to upload and to where. curl also
 supports "globbing" of the \fI\-T, \-\-upload-file\fP argument, meaning that you can upload
 multiple files to a single URL by using the same URL globbing style supported
-in the URL, like this:
-
- curl \-\-upload-file "{file1,file2}" http://www.example.com
-
-or even
-
- curl \-T "img[1-1000].png" ftp://ftp.example.com/upload/
+in the URL.
 
 When uploading to an SMTP server: the uploaded data is assumed to be RFC 5322
 formatted. It has to feature the necessary set of headers and mail body
 formatted correctly by the user as curl will not transcode nor encode it
 further in any way.
+
+Examples:
+.nf
+ curl -T file https://example.com
+ curl -T "img[1-1000].png" ftp://ftp.example.com/
+ curl --upload-file "{file1,file2}" https://example.com
+.fi
 .IP "\-\-url <url>"
 Specify a URL to fetch. This option is mostly handy when you want to specify
 URL(s) in a config file.
@@ -2873,15 +4059,24 @@
 This option may be used any number of times. To control where this URL is
 written, use the \fI\-o, \-\-output\fP or the \fI\-O, \-\-remote-name\fP options.
 
-Warning: On Windows, particular file:// accesses can be converted to network
-accesses by the operating system. Beware!
+\fBWARNING\fP: On Windows, particular file:// accesses can be converted to
+network accesses by the operating system. Beware!
+
+Example:
+.nf
+ curl --url https://example.com
+.fi
 .IP "\-B, \-\-use-ascii"
 (FTP LDAP) Enable ASCII transfer. For FTP, this can also be enforced by using a URL that
 ends with ";type=A". This option causes data sent to stdout to be in text mode
 for win32 systems.
+
+Example:
+.nf
+ curl -B ftp://example.com/README
+.fi
 .IP "\-A, \-\-user-agent <name>"
-(HTTP) 
-Specify the User-Agent string to send to the HTTP server. To encode blanks in
+(HTTP) Specify the User-Agent string to send to the HTTP server. To encode blanks in
 the string, surround the string with single quote marks. This header can also
 be set with the \fI\-H, \-\-header\fP or the \fI\-\-proxy-header\fP options.
 
@@ -2890,6 +4085,11 @@
 single space (" ").
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl -A "Agent 007" https://example.com
+.fi
 .IP "\-u, \-\-user <user:password>"
 Specify the user name and password to use for server authentication. Overrides
 \fI\-n, \-\-netrc\fP and \fI\-\-netrc-optional\fP.
@@ -2903,12 +4103,12 @@
 On systems where it works, curl will hide the given option argument from
 process listings. This is not enough to protect credentials from possibly
 getting seen by other users on the same system as they will still be visible
-for a brief moment before cleared. Such sensitive data should be retrieved
-from a file instead or similar and never used in clear text in a command line.
+for a moment before cleared. Such sensitive data should be retrieved from a
+file instead or similar and never used in clear text in a command line.
 
 When using Kerberos V5 with a Windows based server you should include the
 Windows domain name in the user name, in order for the server to successfully
-obtain a Kerberos Ticket. If you don't then the initial authentication
+obtain a Kerberos Ticket. If you do not, then the initial authentication
 handshake may fail.
 
 When using NTLM, the user name can be specified simply as the user name,
@@ -2925,21 +4125,34 @@
 with this option: "-u :".
 
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl -u user:secret https://example.com
+.fi
 .IP "\-v, \-\-verbose"
 Makes curl verbose during the operation. Useful for debugging and seeing
-what's going on "under the hood". A line starting with '>' means "header data"
-sent by curl, '<' means "header data" received by curl that is hidden in
-normal cases, and a line starting with '*' means additional info provided by
+what\(aqs going on "under the hood". A line starting with '>' means "header data"
+sent by curl, \(aq<' means "header data" received by curl that is hidden in
+normal cases, and a line starting with \(aq*' means additional info provided by
 curl.
 
 If you only want HTTP headers in the output, \fI\-i, \-\-include\fP might be the option
-you're looking for.
+you are looking for.
 
-If you think this option still doesn't give you enough details, consider using
+If you think this option still does not give you enough details, consider using
 \fI\-\-trace\fP or \fI\-\-trace-ascii\fP instead.
 
+This option is global and does not need to be specified for each use of
+\fI\-:, \-\-next\fP.
+
 Use \fI\-s, \-\-silent\fP to make curl really quiet.
 
+Example:
+.nf
+ curl --verbose https://example.com
+.fi
+
 See also \fI-i, --include\fP. This option overrides \fI--trace\fP and \fI--trace-ascii\fP.
 .IP "\-V, \-\-version"
 Displays information about curl and the libcurl version it uses.
@@ -3016,6 +4229,11 @@
 .IP "zstd"
 Automatic decompression (via zstd) of compressed files over HTTP is supported.
 .RE
+
+Example:
+.nf
+ curl --version
+.fi
 .IP "\-w, \-\-write-out <format>"
 Make curl display information on stdout after a completed transfer. The format
 is a string that may contain plain text mixed with any number of
@@ -3051,21 +4269,20 @@
 .B filename_effective
 The ultimate filename that curl writes out to. This is only meaningful if curl
 is told to write to a file with the \fI\-O, \-\-remote-name\fP or \fI\-o, \-\-output\fP
-option. It's most useful in combination with the \fI\-J, \-\-remote-header-name\fP
-option. (Added in 7.26.0)
+option. It\(aqs most useful in combination with the \fI\-J, \-\-remote-header-name\fP
+option.
 .TP
 .B ftp_entry_path
 The initial path curl ended up in when logging on to the remote FTP
-server. (Added in 7.15.4)
+server.
 .TP
 .B http_code
 The numerical response code that was found in the last retrieved HTTP(S) or
-FTP(s) transfer. In 7.18.2 the alias \fBresponse_code\fP was added to show the
-same info.
+FTP(s) transfer.
 .TP
 .B http_connect
 The numerical code that was found in the last response (from a proxy) to a
-curl CONNECT request. (Added in 7.12.4)
+curl CONNECT request.
 .TP
 .B http_version
 The http version that was effectively used. (Added in 7.50.0)
@@ -3075,56 +4292,57 @@
 .TP
 .B local_ip
 The IP address of the local end of the most recently done connection \- can be
-either IPv4 or IPv6. (Added in 7.29.0)
+either IPv4 or IPv6.
 .TP
 .B local_port
-The local port number of the most recently done connection. (Added in 7.29.0)
+The local port number of the most recently done connection.
 .TP
 .B method
 The http method used in the most recent HTTP request. (Added in 7.72.0)
 .TP
 .B num_connects
-Number of new connects made in the recent transfer. (Added in 7.12.3)
+Number of new connects made in the recent transfer.
 .TP
 .B num_headers
 The number of response headers in the most recent request (restarted at each
  redirect). Note that the status line IS NOT a header. (Added in 7.73.0)
 .TP
 .B num_redirects
-Number of redirects that were followed in the request. (Added in 7.12.3)
+Number of redirects that were followed in the request.
 .TP
 .B onerror
 The rest of the output is only shown if the transfer returned a non-zero error
 (Added in 7.75.0)
 .TP
 .B proxy_ssl_verify_result
-The result of the HTTPS proxy's SSL peer certificate verification that was
+The result of the HTTPS proxy\(aqs SSL peer certificate verification that was
 requested. 0 means the verification was successful. (Added in 7.52.0)
 .TP
 .B redirect_url
 When an HTTP request was made without \fI\-L, \-\-location\fP to follow redirects (or when
 \fI\-\-max-redirs\fP is met), this variable will show the actual URL a redirect
-\fIwould\fP have gone to. (Added in 7.18.2)
+\fIwould\fP have gone to.
 .TP
 .B referer
 The Referer: header, if there was any. (Added in 7.76.0)
 .TP
 .B remote_ip
 The remote IP address of the most recently done connection \- can be either
-IPv4 or IPv6. (Added in 7.29.0)
+IPv4 or IPv6.
 .TP
 .B remote_port
-The remote port number of the most recently done connection. (Added in 7.29.0)
+The remote port number of the most recently done connection.
 .TP
 .B response_code
 The numerical response code that was found in the last transfer (formerly
-known as "http_code"). (Added in 7.18.2)
+known as "http_code").
 .TP
 .B scheme
 The URL scheme (sometimes called protocol) that was effectively used. (Added in 7.52.0)
 .TP
 .B size_download
-The total amount of bytes that were downloaded.
+The total amount of bytes that were downloaded. This is the size of the
+body/data that was transferred, excluding headers.
 .TP
 .B size_header
 The total amount of bytes of the downloaded headers.
@@ -3133,7 +4351,8 @@
 The total amount of bytes that were sent in the HTTP request.
 .TP
 .B size_upload
-The total amount of bytes that were uploaded.
+The total amount of bytes that were uploaded. This is the size of the
+body/data that was transferred, excluding headers.
 .TP
 .B speed_download
 The average download speed that curl measured for the complete download. Bytes
@@ -3145,7 +4364,7 @@
 .TP
 .B ssl_verify_result
 The result of the SSL peer certificate verification that was requested. 0
-means the verification was successful. (Added in 7.19.0)
+means the verification was successful.
 .TP
 .B stderr
 From this point on, the \fI\-w, \-\-write-out\fP output will be written to standard
@@ -3158,7 +4377,7 @@
 .TP
 .B time_appconnect
 The time, in seconds, it took from the start until the SSL/SSH/etc
-connect/handshake to the remote host was completed. (Added in 7.19.0)
+connect/handshake to the remote host was completed.
 .TP
 .B time_connect
 The time, in seconds, it took from the start until the TCP connect to the
@@ -3177,7 +4396,7 @@
 The time, in seconds, it took for all redirection steps including name lookup,
 connect, pretransfer and transfer before the final transaction was
 started. time_redirect shows the complete execution time for multiple
-redirections. (Added in 7.12.3)
+redirections.
 .TP
 .B time_starttransfer
 The time, in seconds, it took from the start until the first byte was just
@@ -3195,17 +4414,27 @@
 same index number as the origin globbed URL. (Added in 7.75.0)
 .TP
 .B url_effective
-The URL that was fetched last. This is most meaningful if you've told curl
+The URL that was fetched last. This is most meaningful if you have told curl
 to follow location: headers.
 .RE
 .IP
 If this option is used several times, the last one will be used.
+
+Example:
+.nf
+ curl -w '%{http_code}\\n' https://example.com
+.fi
 .IP "\-\-xattr"
 When saving output to a file, this option tells curl to store certain file
 metadata in extended file attributes. Currently, the URL is stored in the
 xdg.origin.url attribute and, for HTTP, the content type is stored in
 the mime_type attribute. If the file system does not support extended
 attributes, a warning is issued.
+
+Example:
+.nf
+ curl --xattr -o storage https://example.com
+.fi
 .SH FILES
 .I ~/.curlrc
 .RS
@@ -3229,8 +4458,8 @@
 .IP "ALL_PROXY [protocol://]<host>[:port]"
 Sets the proxy server to use if no protocol-specific proxy is set.
 .IP "NO_PROXY <comma-separated list of hosts/domains>"
-list of host names that shouldn't go through any proxy. If set to an asterisk
-\&'*' only, it matches all hosts. Each name in this list is matched as either
+list of host names that should not go through any proxy. If set to an asterisk
+\&\(aq*' only, it matches all hosts. Each name in this list is matched as either
 a domain name which contains the hostname, or the hostname itself.
 
 This environment variable disables use of the proxy even when specified with
@@ -3246,13 +4475,13 @@
 versions should then be given without enclosing brackets.
 
 IPv6 numerical addresses are compared as strings, so they will only match if
-the representations are the same: "::1" is the same as "::0:1" but they don't
+the representations are the same: "::1" is the same as "::0:1" but they do not
 match.
 .IP "CURL_SSL_BACKEND <TLS backend>"
 If curl was built with support for "MultiSSL", meaning that it has built-in
 support for more than one TLS backend, this environment variable can be set to
 the case insensitive name of the particular backend to use when curl is
-invoked. Setting a name that isn't a built-in alternative will make curl
+invoked. Setting a name that is not a built-in alternative will make curl
 stay with the default.
 
 SSL backend names (case-insensitive): bearssl, gnutls, gskit, mbedtls,
@@ -3269,10 +4498,10 @@
 Wireshark. This works with the following TLS backends: OpenSSL, libressl,
 BoringSSL, GnuTLS, NSS and wolfSSL.
 .SH "PROXY PROTOCOL PREFIXES"
-Since curl version 7.21.7, the proxy string may be specified with a
-protocol:// prefix to specify alternative proxy protocols.
+The proxy string may be specified with a protocol:// prefix to specify
+alternative proxy protocols.
 
-If no protocol is specified in the proxy string or if the string doesn't match
+If no protocol is specified in the proxy string or if the string does not match
 a supported one, the proxy will be treated as an HTTP proxy.
 
 The supported proxy protocol prefixes are as follows:
@@ -3303,42 +4532,42 @@
 enabled or was explicitly disabled at build-time. To make curl able to do
 this, you probably need another build of libcurl!
 .IP 5
-Couldn't resolve proxy. The given proxy host could not be resolved.
+Could not resolve proxy. The given proxy host could not be resolved.
 .IP 6
-Couldn't resolve host. The given remote host could not be resolved.
+Could not resolve host. The given remote host could not be resolved.
 .IP 7
 Failed to connect to host.
 .IP 8
-Weird server reply. The server sent data curl couldn't parse.
+Weird server reply. The server sent data curl could not parse.
 .IP 9
 FTP access denied. The server denied login or denied access to the particular
 resource or directory you wanted to reach. Most often you tried to change to a
-directory that doesn't exist on the server.
+directory that does not exist on the server.
 .IP 10
 FTP accept failed. While waiting for the server to connect back when an active
 FTP session is used, an error code was sent over the control connection or
 similar.
 .IP 11
-FTP weird PASS reply. Curl couldn't parse the reply sent to the PASS request.
+FTP weird PASS reply. Curl could not parse the reply sent to the PASS request.
 .IP 12
 During an active FTP session while waiting for the server to connect back to
 curl, the timeout expired.
 .IP 13
-FTP weird PASV reply, Curl couldn't parse the reply sent to the PASV request.
+FTP weird PASV reply, Curl could not parse the reply sent to the PASV request.
 .IP 14
-FTP weird 227 format. Curl couldn't parse the 227-line the server sent.
+FTP weird 227 format. Curl could not parse the 227-line the server sent.
 .IP 15
-FTP can't get host. Couldn't resolve the host IP we got in the 227-line.
+FTP cannot use host. Could not resolve the host IP we got in the 227-line.
 .IP 16
 HTTP/2 error. A problem was detected in the HTTP2 framing layer. This is
 somewhat generic and can be one out of several problems, see the error message
 for details.
 .IP 17
-FTP couldn't set binary. Couldn't change transfer method to binary.
+FTP could not set binary. Could not change transfer method to binary.
 .IP 18
 Partial file. Only a part of the file was transferred.
 .IP 19
-FTP couldn't download/access the given file, the RETR (or similar) command
+FTP could not download/access the given file, the RETR (or similar) command
 failed.
 .IP 21
 FTP quote error. A quote command returned error from the server.
@@ -3347,9 +4576,9 @@
 error with the HTTP error code being 400 or above. This return code only
 appears if \fI\-f, \-\-fail\fP is used.
 .IP 23
-Write error. Curl couldn't write data to a local filesystem or similar.
+Write error. Curl could not write data to a local filesystem or similar.
 .IP 25
-FTP couldn't STOR file. The server denied the STOR operation, used for FTP
+FTP could not STOR file. The server denied the STOR operation, used for FTP
 uploading.
 .IP 26
 Read error. Various reading problems.
@@ -3362,18 +4591,18 @@
 FTP PORT failed. The PORT command failed. Not all FTP servers support the PORT
 command, try doing a transfer using PASV instead!
 .IP 31
-FTP couldn't use REST. The REST command failed. This command is used for
+FTP could not use REST. The REST command failed. This command is used for
 resumed FTP transfers.
 .IP 33
-HTTP range error. The range "command" didn't work.
+HTTP range error. The range "command" did not work.
 .IP 34
 HTTP post error. Internal post-request generation error.
 .IP 35
 SSL connect error. The SSL handshaking failed.
 .IP 36
-Bad download resume. Couldn't continue an earlier aborted download.
+Bad download resume. Could not continue an earlier aborted download.
 .IP 37
-FILE couldn't read file. Failed to open the file. Permissions?
+FILE could not read file. Failed to open the file. Permissions?
 .IP 38
 LDAP cannot bind. LDAP bind operation failed.
 .IP 39
@@ -3395,9 +4624,9 @@
 .IP 49
 Malformed telnet option.
 .IP 51
-The peer's SSL certificate or SSH MD5 fingerprint was not OK.
+The peer\(aqs SSL certificate or SSH MD5 fingerprint was not OK.
 .IP 52
-The server didn't reply anything, which here is considered an error.
+The server did not reply anything, which here is considered an error.
 .IP 53
 SSL crypto engine not found.
 .IP 54
@@ -3409,7 +4638,7 @@
 .IP 58
 Problem with the local certificate.
 .IP 59
-Couldn't use specified SSL cipher.
+Could not use specified SSL cipher.
 .IP 60
 Peer certificate cannot be authenticated with known CA certificates.
 .IP 61
@@ -3453,9 +4682,9 @@
 .IP 80
 Failed to shut down the SSL connection.
 .IP 82
-Could not load CRL file, missing or wrong format (added in 7.19.0).
+Could not load CRL file, missing or wrong format.
 .IP 83
-Issuer check failed (added in 7.19.0).
+Issuer check failed.
 .IP 84
 The FTP PRET command failed.
 .IP 85
diff --git a/docs/examples/Makefile.m32 b/docs/examples/Makefile.m32
index 45ec867..c27b35f 100644
--- a/docs/examples/Makefile.m32
+++ b/docs/examples/Makefile.m32
@@ -178,12 +178,10 @@
 endif
 ifeq ($(findstring -rtmp,$(CFG)),-rtmp)
 RTMP = 1
-SSL = 1
 ZLIB = 1
 endif
 ifeq ($(findstring -ssh2,$(CFG)),-ssh2)
 SSH2 = 1
-SSL = 1
 ZLIB = 1
 endif
 ifeq ($(findstring -ssl,$(CFG)),-ssl)
@@ -230,6 +228,13 @@
 NGTCP2 = 1
 endif
 
+# SSH2 and RTMP require an SSL library; assume OpenSSL if none specified
+ifneq ($(SSH2)$(RTMP),)
+  ifeq ($(SSL)$(WINSSL),)
+    SSL = 1
+  endif
+endif
+
 INCLUDES = -I. -I$(PROOT) -I$(PROOT)/include -I$(PROOT)/lib
 
 ifdef DYN
@@ -284,7 +289,7 @@
     endif
   endif
   ifneq "$(wildcard $(OPENSSL_INCLUDE)/openssl/opensslv.h)" "$(OPENSSL_INCLUDE)/openssl/opensslv.h"
-  $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
+    $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
   endif
   ifndef OPENSSL_LIBPATH
     OPENSSL_LIBS = -lssl -lcrypto
diff --git a/docs/examples/README.md b/docs/examples/README.md
index c838465..78577f8 100644
--- a/docs/examples/README.md
+++ b/docs/examples/README.md
@@ -16,14 +16,14 @@
 
     `curl-config --cc --cflags --libs` -o example example.c
 
-Some compilers don't like having the arguments in this order but instead
+Some compilers do not like having the arguments in this order but instead
 want you do reorganize them like:
 
     `curl-config --cc` -o example example.c `curl-config --cflags --libs`
 
 **Please** do not use the `curl.se` site as a test target for your
 libcurl applications/experiments. Even if some of the examples use that site
-as a URL at some places, it doesn't mean that the URLs work or that we expect
+as a URL at some places, it does not mean that the URLs work or that we expect
 you to actually torture our website with your tests!  Thanks.
 
 ## Examples
diff --git a/docs/examples/anyauthput.c b/docs/examples/anyauthput.c
index 47b713a..cbb9633 100644
--- a/docs/examples/anyauthput.c
+++ b/docs/examples/anyauthput.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -154,7 +154,7 @@
     /* set user name and password for the authentication */
     curl_easy_setopt(curl, CURLOPT_USERPWD, "user:password");
 
-    /* Now run off and do what you've been told! */
+    /* Now run off and do what you have been told! */
     res = curl_easy_perform(curl);
     /* Check for errors */
     if(res != CURLE_OK)
diff --git a/docs/examples/chkspeed.c b/docs/examples/chkspeed.c
index f9e6f13..bc5387d 100644
--- a/docs/examples/chkspeed.c
+++ b/docs/examples/chkspeed.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -156,7 +156,7 @@
   /* send all data to this function  */
   curl_easy_setopt(curl_handle, CURLOPT_WRITEFUNCTION, WriteCallback);
 
-  /* some servers don't like requests that are made without a user-agent
+  /* some servers do not like requests that are made without a user-agent
      field, so we provide one */
   curl_easy_setopt(curl_handle, CURLOPT_USERAGENT,
                    "libcurl-speedchecker/" CHKSPEED_VERSION);
@@ -206,7 +206,7 @@
   /* cleanup curl stuff */
   curl_easy_cleanup(curl_handle);
 
-  /* we're done with libcurl, so clean it up */
+  /* we are done with libcurl, so clean it up */
   curl_global_cleanup();
 
   return 0;
diff --git a/docs/examples/cookie_interface.c b/docs/examples/cookie_interface.c
index 42cbe46..9168247 100644
--- a/docs/examples/cookie_interface.c
+++ b/docs/examples/cookie_interface.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -69,7 +69,7 @@
   curl_global_init(CURL_GLOBAL_ALL);
   curl = curl_easy_init();
   if(curl) {
-    char nline[256];
+    char nline[512];
 
     curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/");
     curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
@@ -93,9 +93,9 @@
 #define snprintf _snprintf
 #endif
     /* Netscape format cookie */
-    snprintf(nline, sizeof(nline), "%s\t%s\t%s\t%s\t%lu\t%s\t%s",
+    snprintf(nline, sizeof(nline), "%s\t%s\t%s\t%s\t%.0f\t%s\t%s",
              ".example.com", "TRUE", "/", "FALSE",
-             (unsigned long)time(NULL) + 31337UL,
+             difftime(time(NULL) + 31337, (time_t)0),
              "PREF", "hello example, i like you very much!");
     res = curl_easy_setopt(curl, CURLOPT_COOKIELIST, nline);
     if(res != CURLE_OK) {
@@ -104,7 +104,7 @@
       return 1;
     }
 
-    /* HTTP-header style cookie. If you use the Set-Cookie format and don't
+    /* HTTP-header style cookie. If you use the Set-Cookie format and do not
     specify a domain then the cookie is sent for any domain and will not be
     modified, likely not what you intended. Starting in 7.43.0 any-domain
     cookies will not be exported either. For more information refer to the
diff --git a/docs/examples/curlgtk.c b/docs/examples/curlgtk.c
index 51f4b45..c14e482 100644
--- a/docs/examples/curlgtk.c
+++ b/docs/examples/curlgtk.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (c) 2000 - 2020 David Odin (aka DindinX) for MandrakeSoft
+ * Copyright (c) 2000 - 2021 David Odin (aka DindinX) for MandrakeSoft
  */
 /* <DESC>
  * use the libcurl in a gtk-threaded application
@@ -96,7 +96,7 @@
   gtk_widget_show_all(Window);
 
   if(!g_thread_create(&my_thread, argv[1], FALSE, NULL) != 0)
-    g_warning("can't create the thread");
+    g_warning("cannot create the thread");
 
   gdk_threads_enter();
   gtk_main();
diff --git a/docs/examples/ephiperfifo.c b/docs/examples/ephiperfifo.c
index 11761b9..af13169 100644
--- a/docs/examples/ephiperfifo.c
+++ b/docs/examples/ephiperfifo.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -224,7 +224,7 @@
 
   err = read(g->tfd, &count, sizeof(uint64_t));
   if(err == -1) {
-    /* Note that we may call the timer callback even if the timerfd isn't
+    /* Note that we may call the timer callback even if the timerfd is not
      * readable. It's possible that there are multiple events stored in the
      * epoll buffer (i.e. the timer may have fired multiple times). The
      * event count is cleared after the first call so future events in the
@@ -292,7 +292,7 @@
 /* Initialize a new SockInfo structure */
 static void addsock(curl_socket_t s, CURL *easy, int action, GlobalInfo *g)
 {
-  SockInfo *fdp = (SockInfo*)calloc(sizeof(SockInfo), 1);
+  SockInfo *fdp = (SockInfo*)calloc(1, sizeof(SockInfo));
 
   fdp->global = g;
   setsock(fdp, s, easy, action, g);
@@ -455,11 +455,9 @@
 
 int g_should_exit_ = 0;
 
-void SignalHandler(int signo)
+void sigint_handler(int signo)
 {
-  if(signo == SIGINT) {
-    g_should_exit_ = 1;
-  }
+  g_should_exit_ = 1;
 }
 
 int main(int argc, char **argv)
@@ -472,7 +470,7 @@
   (void)argv;
 
   g_should_exit_ = 0;
-  signal(SIGINT, SignalHandler);
+  signal(SIGINT, sigint_handler);
 
   memset(&g, 0, sizeof(GlobalInfo));
   g.epfd = epoll_create1(EPOLL_CLOEXEC);
@@ -505,7 +503,7 @@
   curl_multi_setopt(g.multi, CURLMOPT_TIMERFUNCTION, multi_timer_cb);
   curl_multi_setopt(g.multi, CURLMOPT_TIMERDATA, &g);
 
-  /* we don't call any curl_multi_socket*() function yet as we have no handles
+  /* we do not call any curl_multi_socket*() function yet as we have no handles
      added! */
 
   fprintf(MSG_OUT, "Entering wait loop\n");
diff --git a/docs/examples/evhiperfifo.c b/docs/examples/evhiperfifo.c
index 95c6486..07cfada 100644
--- a/docs/examples/evhiperfifo.c
+++ b/docs/examples/evhiperfifo.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -266,7 +266,7 @@
 /* Initialize a new SockInfo structure */
 static void addsock(curl_socket_t s, CURL *easy, int action, GlobalInfo *g)
 {
-  SockInfo *fdp = calloc(sizeof(SockInfo), 1);
+  SockInfo *fdp = calloc(1, sizeof(SockInfo));
 
   fdp->global = g;
   setsock(fdp, s, easy, action, g);
@@ -439,7 +439,7 @@
   curl_multi_setopt(g.multi, CURLMOPT_TIMERFUNCTION, multi_timer_cb);
   curl_multi_setopt(g.multi, CURLMOPT_TIMERDATA, &g);
 
-  /* we don't call any curl_multi_socket*() function yet as we have no handles
+  /* we do not call any curl_multi_socket*() function yet as we have no handles
      added! */
 
   ev_loop(g.loop, 0);
diff --git a/docs/examples/externalsocket.c b/docs/examples/externalsocket.c
index bb29b0e..292a596 100644
--- a/docs/examples/externalsocket.c
+++ b/docs/examples/externalsocket.c
@@ -97,7 +97,7 @@
 
 #ifdef WIN32
   WSADATA wsaData;
-  int initwsa = WSAStartup(MAKEWORD(2, 0), &wsaData);
+  int initwsa = WSAStartup(MAKEWORD(2, 2), &wsaData);
   if(initwsa) {
     printf("WSAStartup failed: %d\n", initwsa);
     return 1;
diff --git a/docs/examples/fileupload.c b/docs/examples/fileupload.c
index eb484e9..afea643 100644
--- a/docs/examples/fileupload.c
+++ b/docs/examples/fileupload.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -38,11 +38,11 @@
 
   fd = fopen("debugit", "rb"); /* open file to upload */
   if(!fd)
-    return 1; /* can't continue */
+    return 1; /* cannot continue */
 
   /* to get the file size */
   if(fstat(fileno(fd), &file_info) != 0)
-    return 1; /* can't continue */
+    return 1; /* cannot continue */
 
   curl = curl_easy_init();
   if(curl) {
diff --git a/docs/examples/fopen.c b/docs/examples/fopen.c
index 932140e..02ab119 100644
--- a/docs/examples/fopen.c
+++ b/docs/examples/fopen.c
@@ -135,7 +135,7 @@
   CURLMcode mc; /* curl_multi_fdset() return code */
 
   /* only attempt to fill buffer if transactions still running and buffer
-   * doesn't exceed required size already
+   * does not exceed required size already
    */
   if((!file->still_running) || (file->buffer_pos > want))
     return 0;
diff --git a/docs/examples/ftpget.c b/docs/examples/ftpget.c
index 300a282..ad9a383 100644
--- a/docs/examples/ftpget.c
+++ b/docs/examples/ftpget.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -40,7 +40,7 @@
     /* open file for writing */
     out->stream = fopen(out->filename, "wb");
     if(!out->stream)
-      return -1; /* failure, can't open file to write */
+      return -1; /* failure, cannot open file to write */
   }
   return fwrite(buffer, size, nmemb, out->stream);
 }
diff --git a/docs/examples/ftpsget.c b/docs/examples/ftpsget.c
index 44ae3ff..9fcbced 100644
--- a/docs/examples/ftpsget.c
+++ b/docs/examples/ftpsget.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -42,7 +42,7 @@
     /* open file for writing */
     out->stream = fopen(out->filename, "wb");
     if(!out->stream)
-      return -1; /* failure, can't open file to write */
+      return -1; /* failure, cannot open file to write */
   }
   return fwrite(buffer, size, nmemb, out->stream);
 }
diff --git a/docs/examples/ftpupload.c b/docs/examples/ftpupload.c
index 7ed7634..1b7bbf2 100644
--- a/docs/examples/ftpupload.c
+++ b/docs/examples/ftpupload.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -119,7 +119,7 @@
     curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE,
                      (curl_off_t)fsize);
 
-    /* Now run off and do what you've been told! */
+    /* Now run off and do what you have been told! */
     res = curl_easy_perform(curl);
     /* Check for errors */
     if(res != CURLE_OK)
diff --git a/docs/examples/getinmemory.c b/docs/examples/getinmemory.c
index 120ceac..fcb97ea 100644
--- a/docs/examples/getinmemory.c
+++ b/docs/examples/getinmemory.c
@@ -81,7 +81,7 @@
   /* we pass our 'chunk' struct to the callback function */
   curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, (void *)&chunk);
 
-  /* some servers don't like requests that are made without a user-agent
+  /* some servers do not like requests that are made without a user-agent
      field, so we provide one */
   curl_easy_setopt(curl_handle, CURLOPT_USERAGENT, "libcurl-agent/1.0");
 
@@ -109,7 +109,7 @@
 
   free(chunk.memory);
 
-  /* we're done with libcurl, so clean it up */
+  /* we are done with libcurl, so clean it up */
   curl_global_cleanup();
 
   return 0;
diff --git a/docs/examples/ghiper.c b/docs/examples/ghiper.c
index d58adb1..9ebc056 100644
--- a/docs/examples/ghiper.c
+++ b/docs/examples/ghiper.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -427,7 +427,7 @@
   curl_multi_setopt(g->multi, CURLMOPT_TIMERFUNCTION, update_timeout_cb);
   curl_multi_setopt(g->multi, CURLMOPT_TIMERDATA, g);
 
-  /* we don't call any curl_multi_socket*() function yet as we have no handles
+  /* we do not call any curl_multi_socket*() function yet as we have no handles
      added! */
 
   g_main_loop_run(gmain);
diff --git a/docs/examples/hiperfifo.c b/docs/examples/hiperfifo.c
index d7d8725..5af9900 100644
--- a/docs/examples/hiperfifo.c
+++ b/docs/examples/hiperfifo.c
@@ -266,7 +266,7 @@
 /* Initialize a new SockInfo structure */
 static void addsock(curl_socket_t s, CURL *easy, int action, GlobalInfo *g)
 {
-  SockInfo *fdp = calloc(sizeof(SockInfo), 1);
+  SockInfo *fdp = calloc(1, sizeof(SockInfo));
 
   fdp->global = g;
   setsock(fdp, s, easy, action, g);
@@ -447,13 +447,13 @@
   curl_multi_setopt(g.multi, CURLMOPT_TIMERFUNCTION, multi_timer_cb);
   curl_multi_setopt(g.multi, CURLMOPT_TIMERDATA, &g);
 
-  /* we don't call any curl_multi_socket*() function yet as we have no handles
+  /* we do not call any curl_multi_socket*() function yet as we have no handles
      added! */
 
   event_base_dispatch(g.evbase);
 
-  /* this, of course, won't get called since only way to stop this program is
-     via ctrl-C, but it is here to show how cleanup /would/ be done. */
+  /* this, of course, will not get called since only way to stop this program
+     is via ctrl-C, but it is here to show how cleanup /would/ be done. */
   clean_fifo(&g);
   event_del(&g.timer_event);
   event_base_free(g.evbase);
diff --git a/docs/examples/htmltidy.c b/docs/examples/htmltidy.c
index be5350c..73ac6fb 100644
--- a/docs/examples/htmltidy.c
+++ b/docs/examples/htmltidy.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -28,8 +28,8 @@
  */
 
 #include <stdio.h>
-#include <tidy.h>
-#include <tidybuffio.h>
+#include <tidy/tidy.h>
+#include <tidy/tidybuffio.h>
 #include <curl/curl.h>
 
 /* curl write callback, to fill tidy's input buffer...  */
@@ -53,14 +53,14 @@
       printf("%*.*s%s ", indent, indent, "<", name);
       /* walk the attribute list */
       for(attr = tidyAttrFirst(child); attr; attr = tidyAttrNext(attr) ) {
-        printf(tidyAttrName(attr));
+        printf("%s", tidyAttrName(attr));
         tidyAttrValue(attr)?printf("=\"%s\" ",
                                    tidyAttrValue(attr)):printf(" ");
       }
       printf(">\n");
     }
     else {
-      /* if it doesn't have a name, then it's probably text, cdata, etc... */
+      /* if it does not have a name, then it's probably text, cdata, etc... */
       TidyBuffer buf;
       tidyBufInit(&buf);
       tidyNodeGetText(doc, child, &buf);
diff --git a/docs/examples/http2-download.c b/docs/examples/http2-download.c
index 6ba82f3..cb0ef13 100644
--- a/docs/examples/http2-download.c
+++ b/docs/examples/http2-download.c
@@ -37,7 +37,7 @@
 #include <curl/mprintf.h>
 
 #ifndef CURLPIPE_MULTIPLEX
-/* This little trick will just make sure that we don't enable pipelining for
+/* This little trick will just make sure that we do not enable pipelining for
    libcurls old enough to not have this symbol. It is _not_ defined to zero in
    a recent libcurl header. */
 #define CURLPIPE_MULTIPLEX 0
diff --git a/docs/examples/http2-pushinmemory.c b/docs/examples/http2-pushinmemory.c
index 7610ccc..a9c3648 100644
--- a/docs/examples/http2-pushinmemory.c
+++ b/docs/examples/http2-pushinmemory.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -103,7 +103,7 @@
   (void)num_headers; /* unused */
 
   if(pushindex == MAX_FILES)
-    /* can't fit anymore */
+    /* cannot fit anymore */
     return CURL_PUSH_DENY;
 
   /* write to this buffer */
diff --git a/docs/examples/http2-serverpush.c b/docs/examples/http2-serverpush.c
index 3d32f22..b7c1637 100644
--- a/docs/examples/http2-serverpush.c
+++ b/docs/examples/http2-serverpush.c
@@ -35,7 +35,7 @@
 #include <curl/curl.h>
 
 #ifndef CURLPIPE_MULTIPLEX
-#error "too old libcurl, can't do HTTP/2 server push!"
+#error "too old libcurl, cannot do HTTP/2 server push!"
 #endif
 
 static
@@ -180,7 +180,7 @@
   /* here's a new stream, save it in a new file for each new push */
   out = fopen(filename, "wb");
   if(!out) {
-    /* if we can't save it, deny it */
+    /* if we cannot save it, deny it */
     fprintf(stderr, "Failed to create output file for push\n");
     return CURL_PUSH_DENY;
   }
diff --git a/docs/examples/http2-upload.c b/docs/examples/http2-upload.c
index 9485825..742177f 100644
--- a/docs/examples/http2-upload.c
+++ b/docs/examples/http2-upload.c
@@ -39,7 +39,7 @@
 #include <curl/mprintf.h>
 
 #ifndef CURLPIPE_MULTIPLEX
-/* This little trick will just make sure that we don't enable pipelining for
+/* This little trick will just make sure that we do not enable pipelining for
    libcurls old enough to not have this symbol. It is _not_ defined to zero in
    a recent libcurl header. */
 #define CURLPIPE_MULTIPLEX 0
@@ -124,7 +124,7 @@
     known_offset = 1;
   }
   secs = epoch_offset + tv.tv_sec;
-  now = localtime(&secs);  /* not thread safe but we don't care */
+  now = localtime(&secs);  /* not thread safe but we do not care */
   curl_msnprintf(timebuf, sizeof(timebuf), "%02d:%02d:%02d.%06ld",
                  now->tm_hour, now->tm_min, now->tm_sec, (long)tv.tv_usec);
 
diff --git a/docs/examples/http3.c b/docs/examples/http3.c
index d462d2a..8553e3a 100644
--- a/docs/examples/http3.c
+++ b/docs/examples/http3.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -35,7 +35,7 @@
   if(curl) {
     curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
 
-    /* Forcing HTTP/3 will make the connection fail if the server isn't
+    /* Forcing HTTP/3 will make the connection fail if the server is not
        accessible over QUIC + HTTP/3 on the given host and port.
        Consider using CURLOPT_ALTSVC instead! */
     curl_easy_setopt(curl, CURLOPT_HTTP_VERSION, (long)CURL_HTTP_VERSION_3);
diff --git a/docs/examples/httpcustomheader.c b/docs/examples/httpcustomheader.c
index 7a1e1d8..f431177 100644
--- a/docs/examples/httpcustomheader.c
+++ b/docs/examples/httpcustomheader.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -45,7 +45,7 @@
     chunk = curl_slist_append(chunk, "Host: example.com");
 
     /* Add a header with "blank" contents to the right of the colon. Note that
-       we're then using a semicolon in the string we pass to curl! */
+       we are then using a semicolon in the string we pass to curl! */
     chunk = curl_slist_append(chunk, "X-silly-header;");
 
     /* set our custom set of headers */
diff --git a/docs/examples/httpput-postfields.c b/docs/examples/httpput-postfields.c
index 83c2d1f..eb74eb9 100644
--- a/docs/examples/httpput-postfields.c
+++ b/docs/examples/httpput-postfields.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -67,7 +67,7 @@
     headers = curl_slist_append(headers, "Content-Type: literature/classic");
     curl_easy_setopt(curl, CURLOPT_HTTPHEADER, headers);
 
-    /* pass on content in request body. When CURLOPT_POSTFIELDSIZE isn't used,
+    /* pass on content in request body. When CURLOPT_POSTFIELDSIZE is not used,
        curl does strlen to get the size. */
     curl_easy_setopt(curl, CURLOPT_POSTFIELDS, olivertwist);
 
@@ -82,7 +82,7 @@
        name, not only a directory */
     curl_easy_setopt(curl, CURLOPT_URL, url);
 
-    /* Now run off and do what you've been told! */
+    /* Now run off and do what you have been told! */
     res = curl_easy_perform(curl);
     /* Check for errors */
     if(res != CURLE_OK)
diff --git a/docs/examples/httpput.c b/docs/examples/httpput.c
index 8365ab2..90749da 100644
--- a/docs/examples/httpput.c
+++ b/docs/examples/httpput.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -104,7 +104,7 @@
     curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE,
                      (curl_off_t)file_info.st_size);
 
-    /* Now run off and do what you've been told! */
+    /* Now run off and do what you have been told! */
     res = curl_easy_perform(curl);
     /* Check for errors */
     if(res != CURLE_OK)
diff --git a/docs/examples/https.c b/docs/examples/https.c
index 6dbf8bd..675441a 100644
--- a/docs/examples/https.c
+++ b/docs/examples/https.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -39,7 +39,7 @@
 
 #ifdef SKIP_PEER_VERIFICATION
     /*
-     * If you want to connect to a site who isn't using a certificate that is
+     * If you want to connect to a site who is not using a certificate that is
      * signed by one of the certs in the CA bundle you have, you can skip the
      * verification of the server's certificate. This makes the connection
      * A LOT LESS SECURE.
@@ -53,7 +53,7 @@
 
 #ifdef SKIP_HOSTNAME_VERIFICATION
     /*
-     * If the site you're connecting to uses a different host name that what
+     * If the site you are connecting to uses a different host name that what
      * they have mentioned in their server certificate's commonName (or
      * subjectAltName) fields, libcurl will refuse to connect. You can skip
      * this check, but this will make the connection less secure.
diff --git a/docs/examples/imap-append.c b/docs/examples/imap-append.c
index 8dc6d23..78ecc8d 100644
--- a/docs/examples/imap-append.c
+++ b/docs/examples/imap-append.c
@@ -69,7 +69,7 @@
 
   data = &payload_text[upload_ctx->bytes_read];
 
-  if(data) {
+  if(*data) {
     size_t len = strlen(data);
     if(room < len)
       len = room;
@@ -101,7 +101,7 @@
      * SELECT to ensure you are creating the message in the OUTBOX. */
     curl_easy_setopt(curl, CURLOPT_URL, "imap://imap.example.com/100");
 
-    /* In this case, we're using a callback function to specify the data. You
+    /* In this case, we are using a callback function to specify the data. You
      * could just use the CURLOPT_READDATA option to specify a FILE pointer to
      * read from. */
     curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source);
diff --git a/docs/examples/imap-ssl.c b/docs/examples/imap-ssl.c
index ce890c9..e43639e 100644
--- a/docs/examples/imap-ssl.c
+++ b/docs/examples/imap-ssl.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -51,7 +51,7 @@
     curl_easy_setopt(curl, CURLOPT_URL,
                      "imaps://imap.example.com/INBOX/;UID=1");
 
-    /* If you want to connect to a site who isn't using a certificate that is
+    /* If you want to connect to a site who is not using a certificate that is
      * signed by one of the certs in the CA bundle you have, you can skip the
      * verification of the server's certificate. This makes the connection
      * A LOT LESS SECURE.
@@ -63,7 +63,7 @@
     curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
 #endif
 
-    /* If the site you're connecting to uses a different host name that what
+    /* If the site you are connecting to uses a different host name that what
      * they have mentioned in their server certificate's commonName (or
      * subjectAltName) fields, libcurl will refuse to connect. You can skip
      * this check, but this will make the connection less secure. */
diff --git a/docs/examples/imap-store.c b/docs/examples/imap-store.c
index d39c6ea..9a87a79 100644
--- a/docs/examples/imap-store.c
+++ b/docs/examples/imap-store.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -62,7 +62,7 @@
               curl_easy_strerror(res));
     else {
       /* Set the EXPUNGE command, although you can use the CLOSE command if you
-       * don't want to know the result of the STORE */
+       * do not want to know the result of the STORE */
       curl_easy_setopt(curl, CURLOPT_CUSTOMREQUEST, "EXPUNGE");
 
       /* Perform the second custom request */
diff --git a/docs/examples/imap-tls.c b/docs/examples/imap-tls.c
index d80f54d..d8b587d 100644
--- a/docs/examples/imap-tls.c
+++ b/docs/examples/imap-tls.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -50,14 +50,14 @@
     curl_easy_setopt(curl, CURLOPT_URL,
                      "imap://imap.example.com/INBOX/;UID=1");
 
-    /* In this example, we'll start with a plain text connection, and upgrade
+    /* In this example, we will start with a plain text connection, and upgrade
      * to Transport Layer Security (TLS) using the STARTTLS command. Be careful
      * of using CURLUSESSL_TRY here, because if TLS upgrade fails, the transfer
      * will continue anyway - see the security discussion in the libcurl
      * tutorial for more details. */
     curl_easy_setopt(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_ALL);
 
-    /* If your server doesn't have a valid certificate, then you can disable
+    /* If your server does not have a valid certificate, then you can disable
      * part of the Transport Layer Security protection by setting the
      * CURLOPT_SSL_VERIFYPEER and CURLOPT_SSL_VERIFYHOST options to 0 (false).
      *   curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
diff --git a/docs/examples/multi-app.c b/docs/examples/multi-app.c
index 76c2575..58ad03f 100644
--- a/docs/examples/multi-app.c
+++ b/docs/examples/multi-app.c
@@ -58,7 +58,7 @@
   for(i = 0; i<HANDLECOUNT; i++)
     handles[i] = curl_easy_init();
 
-  /* set the options (I left out a few, you'll get the point anyway) */
+  /* set the options (I left out a few, you will get the point anyway) */
   curl_easy_setopt(handles[HTTP_HANDLE], CURLOPT_URL, "https://example.com");
 
   curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_URL, "ftp://example.com");
diff --git a/docs/examples/multi-debugcallback.c b/docs/examples/multi-debugcallback.c
index af79e56..b173b72 100644
--- a/docs/examples/multi-debugcallback.c
+++ b/docs/examples/multi-debugcallback.c
@@ -135,7 +135,7 @@
 
   http_handle = curl_easy_init();
 
-  /* set the options (I left out a few, you'll get the point anyway) */
+  /* set the options (I left out a few, you will get the point anyway) */
   curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/");
 
   curl_easy_setopt(http_handle, CURLOPT_DEBUGFUNCTION, my_trace);
diff --git a/docs/examples/multi-event.c b/docs/examples/multi-event.c
index ebe9513..6da8513 100644
--- a/docs/examples/multi-event.c
+++ b/docs/examples/multi-event.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -153,7 +153,7 @@
   }
   else {
     if(timeout_ms == 0)
-      timeout_ms = 1; /* 0 means directly call socket_action, but we'll do it
+      timeout_ms = 1; /* 0 means directly call socket_action, but we will do it
                          in a bit */
     struct timeval tv;
     tv.tv_sec = timeout_ms / 1000;
diff --git a/docs/examples/multi-legacy.c b/docs/examples/multi-legacy.c
index ca1a9b9..85ec55d 100644
--- a/docs/examples/multi-legacy.c
+++ b/docs/examples/multi-legacy.c
@@ -58,7 +58,7 @@
   for(i = 0; i<HANDLECOUNT; i++)
     handles[i] = curl_easy_init();
 
-  /* set the options (I left out a few, you'll get the point anyway) */
+  /* set the options (I left out a few, you will get the point anyway) */
   curl_easy_setopt(handles[HTTP_HANDLE], CURLOPT_URL, "https://example.com");
 
   curl_easy_setopt(handles[FTP_HANDLE], CURLOPT_URL, "ftp://example.com");
diff --git a/docs/examples/multi-single.c b/docs/examples/multi-single.c
index e340231..ec27da1 100644
--- a/docs/examples/multi-single.c
+++ b/docs/examples/multi-single.c
@@ -56,7 +56,7 @@
 
   http_handle = curl_easy_init();
 
-  /* set the options (I left out a few, you'll get the point anyway) */
+  /* set the options (I left out a few, you will get the point anyway) */
   curl_easy_setopt(http_handle, CURLOPT_URL, "https://www.example.com/");
 
   /* init a multi stack */
diff --git a/docs/examples/multi-uv.c b/docs/examples/multi-uv.c
index 3da61a2..f8985a8 100644
--- a/docs/examples/multi-uv.c
+++ b/docs/examples/multi-uv.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -163,7 +163,7 @@
   }
   else {
     if(timeout_ms == 0)
-      timeout_ms = 1; /* 0 means directly call socket_action, but we'll do it
+      timeout_ms = 1; /* 0 means directly call socket_action, but we will do it
                          in a bit */
     uv_timer_start(&timeout, on_timeout, timeout_ms, 0);
   }
diff --git a/docs/examples/multithread.c b/docs/examples/multithread.c
index ada1e4a..003c312 100644
--- a/docs/examples/multithread.c
+++ b/docs/examples/multithread.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -41,9 +41,9 @@
 */
 const char * const urls[NUMT]= {
   "https://curl.se/",
-  "ftp://cool.haxx.se/",
-  "https://www.cag.se/",
-  "www.haxx.se"
+  "ftp://example.com/",
+  "https://example.net/",
+  "www.example"
 };
 
 static void *pull_one_url(void *url)
diff --git a/docs/examples/pop3-ssl.c b/docs/examples/pop3-ssl.c
index 4362925..be49289 100644
--- a/docs/examples/pop3-ssl.c
+++ b/docs/examples/pop3-ssl.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -50,7 +50,7 @@
      * pop3s:// rather than pop3:// to request a SSL based connection. */
     curl_easy_setopt(curl, CURLOPT_URL, "pop3s://pop.example.com/1");
 
-    /* If you want to connect to a site who isn't using a certificate that is
+    /* If you want to connect to a site who is not using a certificate that is
      * signed by one of the certs in the CA bundle you have, you can skip the
      * verification of the server's certificate. This makes the connection
      * A LOT LESS SECURE.
@@ -62,7 +62,7 @@
     curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
 #endif
 
-    /* If the site you're connecting to uses a different host name that what
+    /* If the site you are connecting to uses a different host name that what
      * they have mentioned in their server certificate's commonName (or
      * subjectAltName) fields, libcurl will refuse to connect. You can skip
      * this check, but this will make the connection less secure. */
diff --git a/docs/examples/pop3-tls.c b/docs/examples/pop3-tls.c
index 1ce97a5..496a3de 100644
--- a/docs/examples/pop3-tls.c
+++ b/docs/examples/pop3-tls.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -49,14 +49,14 @@
     /* This will retrieve message 1 from the user's mailbox */
     curl_easy_setopt(curl, CURLOPT_URL, "pop3://pop.example.com/1");
 
-    /* In this example, we'll start with a plain text connection, and upgrade
+    /* In this example, we will start with a plain text connection, and upgrade
      * to Transport Layer Security (TLS) using the STLS command. Be careful of
      * using CURLUSESSL_TRY here, because if TLS upgrade fails, the transfer
      * will continue anyway - see the security discussion in the libcurl
      * tutorial for more details. */
     curl_easy_setopt(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_ALL);
 
-    /* If your server doesn't have a valid certificate, then you can disable
+    /* If your server does not have a valid certificate, then you can disable
      * part of the Transport Layer Security protection by setting the
      * CURLOPT_SSL_VERIFYPEER and CURLOPT_SSL_VERIFYHOST options to 0 (false).
      *   curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
diff --git a/docs/examples/postinmemory.c b/docs/examples/postinmemory.c
index e3a676f..d0f7970 100644
--- a/docs/examples/postinmemory.c
+++ b/docs/examples/postinmemory.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -75,13 +75,13 @@
     /* we pass our 'chunk' struct to the callback function */
     curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void *)&chunk);
 
-    /* some servers don't like requests that are made without a user-agent
+    /* some servers do not like requests that are made without a user-agent
        field, so we provide one */
     curl_easy_setopt(curl, CURLOPT_USERAGENT, "libcurl-agent/1.0");
 
     curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postthis);
 
-    /* if we don't provide POSTFIELDSIZE, libcurl will strlen() by
+    /* if we do not provide POSTFIELDSIZE, libcurl will strlen() by
        itself */
     curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)strlen(postthis));
 
diff --git a/docs/examples/postit2-formadd.c b/docs/examples/postit2-formadd.c
index 43dbb39..cef89f6 100644
--- a/docs/examples/postit2-formadd.c
+++ b/docs/examples/postit2-formadd.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -26,7 +26,7 @@
 /* Example code that uploads a file name 'foo' to a remote script that accepts
  * "HTML form based" (as described in RFC1738) uploads using HTTP POST.
  *
- * The imaginary form we'll fill in looks like:
+ * The imaginary form we will fill in looks like:
  *
  * <form method="post" enctype="multipart/form-data" action="examplepost.cgi">
  * Enter file: <input type="file" name="sendfile" size="40">
diff --git a/docs/examples/postit2.c b/docs/examples/postit2.c
index 95b565e..923fead 100644
--- a/docs/examples/postit2.c
+++ b/docs/examples/postit2.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -26,7 +26,7 @@
 /* Example code that uploads a file name 'foo' to a remote script that accepts
  * "HTML form based" (as described in RFC1738) uploads using HTTP POST.
  *
- * The imaginary form we'll fill in looks like:
+ * The imaginary form we will fill in looks like:
  *
  * <form method="post" enctype="multipart/form-data" action="examplepost.cgi">
  * Enter file: <input type="file" name="sendfile" size="40">
diff --git a/docs/examples/progressfunc.c b/docs/examples/progressfunc.c
index 00c67fa..68f47d5 100644
--- a/docs/examples/progressfunc.c
+++ b/docs/examples/progressfunc.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -112,7 +112,7 @@
 
 #if LIBCURL_VERSION_NUM >= 0x072000
     /* xferinfo was introduced in 7.32.0, no earlier libcurl versions will
-       compile as they won't have the symbols around.
+       compile as they will not have the symbols around.
 
        If built with a newer libcurl, but running with an older libcurl:
        curl_easy_setopt() will fail in run-time trying to set the new
diff --git a/docs/examples/sendrecv.c b/docs/examples/sendrecv.c
index 9f40829..44741ae 100644
--- a/docs/examples/sendrecv.c
+++ b/docs/examples/sendrecv.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -63,9 +63,9 @@
   const char *request = "GET / HTTP/1.0\r\nHost: example.com\r\n\r\n";
   size_t request_len = strlen(request);
 
-  /* A general note of caution here: if you're using curl_easy_recv() or
+  /* A general note of caution here: if you are using curl_easy_recv() or
      curl_easy_send() to implement HTTP or _any_ other protocol libcurl
-     supports "natively", you're doing it wrong and you should stop.
+     supports "natively", you are doing it wrong and you should stop.
 
      This example uses HTTP only to show how to use this API, it does not
      suggest that writing an application doing this is sensible.
@@ -87,7 +87,8 @@
       return 1;
     }
 
-    /* Extract the socket from the curl handle - we'll need it for waiting. */
+    /* Extract the socket from the curl handle - we will need it for
+       waiting. */
     res = curl_easy_getinfo(curl, CURLINFO_ACTIVESOCKET, &sockfd);
 
     if(res != CURLE_OK) {
diff --git a/docs/examples/sftpget.c b/docs/examples/sftpget.c
index 37840c9..3c74d2a 100644
--- a/docs/examples/sftpget.c
+++ b/docs/examples/sftpget.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -34,8 +34,8 @@
 /*
  * This is an example showing how to get a single file from an SFTP server.
  * It delays the actual destination file creation until the first write
- * callback so that it won't create an empty file in case the remote file
- * doesn't exist or something else fails.
+ * callback so that it will not create an empty file in case the remote file
+ * does not exist or something else fails.
  */
 
 struct FtpFile {
@@ -51,7 +51,7 @@
     /* open file for writing */
     out->stream = fopen(out->filename, "wb");
     if(!out->stream)
-      return -1; /* failure, can't open file to write */
+      return -1; /* failure, cannot open file to write */
   }
   return fwrite(buffer, size, nmemb, out->stream);
 }
diff --git a/docs/examples/simplepost.c b/docs/examples/simplepost.c
index 8580c5e..70252a4 100644
--- a/docs/examples/simplepost.c
+++ b/docs/examples/simplepost.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -39,7 +39,7 @@
     curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
     curl_easy_setopt(curl, CURLOPT_POSTFIELDS, postthis);
 
-    /* if we don't provide POSTFIELDSIZE, libcurl will strlen() by
+    /* if we do not provide POSTFIELDSIZE, libcurl will strlen() by
        itself */
     curl_easy_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)strlen(postthis));
 
diff --git a/docs/examples/simplessl.c b/docs/examples/simplessl.c
index d4d8b9e..f34ee47 100644
--- a/docs/examples/simplessl.c
+++ b/docs/examples/simplessl.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -35,7 +35,7 @@
    3.1. set a #define USE_ENGINE
    3.2. set pEngine to the name of the crypto engine you use
    3.3. set pKeyName to the key identifier you want to use
-   4.   if you don't use a crypto engine:
+   4.   if you do not use a crypto engine:
    4.1. set pKeyName to the file name of your client key
    4.2. if the format of the key file is DER, set pKeyType to "DER"
 
@@ -86,14 +86,14 @@
         /* use crypto engine */
         if(curl_easy_setopt(curl, CURLOPT_SSLENGINE, pEngine) != CURLE_OK) {
           /* load the crypto engine */
-          fprintf(stderr, "can't set crypto engine\n");
+          fprintf(stderr, "cannot set crypto engine\n");
           break;
         }
         if(curl_easy_setopt(curl, CURLOPT_SSLENGINE_DEFAULT, 1L) != CURLE_OK) {
           /* set the crypto engine as default */
           /* only needed for the first time you load
              a engine in a curl object... */
-          fprintf(stderr, "can't set crypto engine as default\n");
+          fprintf(stderr, "cannot set crypto engine as default\n");
           break;
         }
       }
@@ -119,7 +119,7 @@
       /* set the file with the certs vaildating the server */
       curl_easy_setopt(curl, CURLOPT_CAINFO, pCACertFile);
 
-      /* disconnect if we can't validate server's cert */
+      /* disconnect if we cannot validate server's cert */
       curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 1L);
 
       /* Perform the request, res will get the return code */
diff --git a/docs/examples/smooth-gtk-thread.c b/docs/examples/smooth-gtk-thread.c
index 81d405e..231c0dd 100644
--- a/docs/examples/smooth-gtk-thread.c
+++ b/docs/examples/smooth-gtk-thread.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -60,55 +60,47 @@
 
 size_t write_file(void *ptr, size_t size, size_t nmemb, FILE *stream)
 {
-  /* printf("write_file\n"); */
   return fwrite(ptr, size, nmemb, stream);
 }
 
-/* https://weather.com/weather/today/l/46214?cc=*&dayf=5&unit=i */
-void *pull_one_url(void *NaN)
+static void run_one(gchar *http, int j)
 {
-  /* Stop threads from entering unless j is incremented */
-  pthread_mutex_lock(&lock);
-  while(j < num_urls) {
-    CURL *curl;
-    gchar *http;
+  FILE *outfile = fopen(urls[j], "wb");
+  CURL *curl;
 
+  curl = curl_easy_init();
+  if(curl) {
     printf("j = %d\n", j);
 
-    http =
-      g_strdup_printf("xoap.weather.com/weather/local/%s?cc=*&dayf=5&unit=i\n",
-                      urls[j]);
+    /* Set the URL and transfer type */
+    curl_easy_setopt(curl, CURLOPT_URL, http);
 
-    printf("http %s", http);
+    /* Write to the file */
+    curl_easy_setopt(curl, CURLOPT_WRITEDATA, outfile);
+    curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_file);
+    curl_easy_perform(curl);
 
-    curl = curl_easy_init();
-    if(curl) {
+    fclose(outfile);
+    curl_easy_cleanup(curl);
+  }
+}
 
-      FILE *outfile = fopen(urls[j], "wb");
-
-      /* Set the URL and transfer type */
-      curl_easy_setopt(curl, CURLOPT_URL, http);
-
-      /* Write to the file */
-      curl_easy_setopt(curl, CURLOPT_WRITEDATA, outfile);
-      curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, write_file);
-
-      j++;  /* critical line */
-      pthread_mutex_unlock(&lock);
-
-      curl_easy_perform(curl);
-
-      fclose(outfile);
-      printf("fclose\n");
-
-      curl_easy_cleanup(curl);
+void *pull_one_url(void *NaN)
+{
+  /* protect the reading and increasing of 'j' with a mutex */
+  pthread_mutex_lock(&lock);
+  while(j < num_urls) {
+    int i = j;
+    j++;
+    pthread_mutex_unlock(&lock);
+    http = g_strdup_printf("https://example.com/%s", urls[i]);
+    if(http) {
+      run_one(http, i);
+      g_free(http);
     }
-    g_free(http);
-
-    /* Adds more latency, testing the mutex.*/
-    sleep(1);
-
-  } /* end while */
+    pthread_mutex_lock(&lock);
+  }
+  pthread_mutex_unlock(&lock);
   return NULL;
 }
 
@@ -130,7 +122,7 @@
   pthread_t tid[NUMT];
   int i;
 
-  /* Make sure I don't create more threads than urls. */
+  /* Make sure I do not create more threads than urls. */
   for(i = 0; i < NUMT && i < num_urls ; i++) {
     int error = pthread_create(&tid[i],
                                NULL, /* default attributes please */
@@ -214,7 +206,7 @@
                    G_CALLBACK(cb_delete), NULL);
 
   if(!g_thread_create(&create_thread, progress_bar, FALSE, NULL) != 0)
-    g_warning("can't create the thread");
+    g_warning("cannot create the thread");
 
   gtk_main();
   gdk_threads_leave();
diff --git a/docs/examples/smtp-authzid.c b/docs/examples/smtp-authzid.c
index e541f09..b315b21 100644
--- a/docs/examples/smtp-authzid.c
+++ b/docs/examples/smtp-authzid.c
@@ -113,7 +113,7 @@
     /* Force PLAIN authentication */
     curl_easy_setopt(curl, CURLOPT_LOGIN_OPTIONS, "AUTH=PLAIN");
 
-    /* Note that this option isn't strictly required, omitting it will result
+    /* Note that this option is not strictly required, omitting it will result
      * in libcurl sending the MAIL FROM command with empty sender data. All
      * autoresponses should have an empty reverse-path, and should be directed
      * to the address in the reverse-path which triggered them. Otherwise,
@@ -127,7 +127,7 @@
     recipients = curl_slist_append(recipients, TO_ADDR);
     curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, recipients);
 
-    /* We're using a callback function to specify the payload (the headers and
+    /* We are using a callback function to specify the payload (the headers and
      * body of the message). You could just use the CURLOPT_READDATA option to
      * specify a FILE pointer to read from. */
     curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source);
@@ -145,13 +145,13 @@
     /* Free the list of recipients */
     curl_slist_free_all(recipients);
 
-    /* curl won't send the QUIT command until you call cleanup, so you should
-     * be able to re-use this connection for additional messages (setting
-     * CURLOPT_MAIL_FROM and CURLOPT_MAIL_RCPT as required, and calling
-     * curl_easy_perform() again. It may not be a good idea to keep the
-     * connection open for a very long time though (more than a few minutes
-     * may result in the server timing out the connection), and you do want to
-     * clean up in the end.
+    /* curl will not send the QUIT command until you call cleanup, so you
+     * should be able to re-use this connection for additional messages
+     * (setting CURLOPT_MAIL_FROM and CURLOPT_MAIL_RCPT as required, and
+     * calling curl_easy_perform() again. It may not be a good idea to keep
+     * the connection open for a very long time though (more than a few
+     * minutes may result in the server timing out the connection), and you do
+     * want to clean up in the end.
      */
     curl_easy_cleanup(curl);
   }
diff --git a/docs/examples/smtp-expn.c b/docs/examples/smtp-expn.c
index 9de5b32..2c11c4f 100644
--- a/docs/examples/smtp-expn.c
+++ b/docs/examples/smtp-expn.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -66,10 +66,10 @@
     /* Free the list of recipients */
     curl_slist_free_all(recipients);
 
-    /* Curl won't send the QUIT command until you call cleanup, so you should
-     * be able to re-use this connection for additional requests. It may not be
-     * a good idea to keep the connection open for a very long time though
-     * (more than a few minutes may result in the server timing out the
+    /* curl will not send the QUIT command until you call cleanup, so you
+     * should be able to re-use this connection for additional requests. It
+     * may not be a good idea to keep the connection open for a very long time
+     * though (more than a few minutes may result in the server timing out the
      * connection) and you do want to clean up in the end.
      */
     curl_easy_cleanup(curl);
diff --git a/docs/examples/smtp-mail.c b/docs/examples/smtp-mail.c
index 5159786..2c0cfb2 100644
--- a/docs/examples/smtp-mail.c
+++ b/docs/examples/smtp-mail.c
@@ -99,7 +99,7 @@
     /* This is the URL for your mailserver */
     curl_easy_setopt(curl, CURLOPT_URL, "smtp://mail.example.com");
 
-    /* Note that this option isn't strictly required, omitting it will result
+    /* Note that this option is not strictly required, omitting it will result
      * in libcurl sending the MAIL FROM command with empty sender data. All
      * autoresponses should have an empty reverse-path, and should be directed
      * to the address in the reverse-path which triggered them. Otherwise,
@@ -115,7 +115,7 @@
     recipients = curl_slist_append(recipients, CC_ADDR);
     curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, recipients);
 
-    /* We're using a callback function to specify the payload (the headers and
+    /* We are using a callback function to specify the payload (the headers and
      * body of the message). You could just use the CURLOPT_READDATA option to
      * specify a FILE pointer to read from. */
     curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source);
@@ -133,13 +133,13 @@
     /* Free the list of recipients */
     curl_slist_free_all(recipients);
 
-    /* curl won't send the QUIT command until you call cleanup, so you should
-     * be able to re-use this connection for additional messages (setting
-     * CURLOPT_MAIL_FROM and CURLOPT_MAIL_RCPT as required, and calling
-     * curl_easy_perform() again. It may not be a good idea to keep the
-     * connection open for a very long time though (more than a few minutes
-     * may result in the server timing out the connection), and you do want to
-     * clean up in the end.
+    /* curl will not send the QUIT command until you call cleanup, so you
+     * should be able to re-use this connection for additional messages
+     * (setting CURLOPT_MAIL_FROM and CURLOPT_MAIL_RCPT as required, and
+     * calling curl_easy_perform() again. It may not be a good idea to keep
+     * the connection open for a very long time though (more than a few
+     * minutes may result in the server timing out the connection), and you do
+     * want to clean up in the end.
      */
     curl_easy_cleanup(curl);
   }
diff --git a/docs/examples/smtp-mime.c b/docs/examples/smtp-mime.c
index 4a2ff19..564f920 100644
--- a/docs/examples/smtp-mime.c
+++ b/docs/examples/smtp-mime.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -84,7 +84,7 @@
     /* This is the URL for your mailserver */
     curl_easy_setopt(curl, CURLOPT_URL, "smtp://mail.example.com");
 
-    /* Note that this option isn't strictly required, omitting it will result
+    /* Note that this option is not strictly required, omitting it will result
      * in libcurl sending the MAIL FROM command with empty sender data. All
      * autoresponses should have an empty reverse-path, and should be directed
      * to the address in the reverse-path which triggered them. Otherwise,
@@ -145,13 +145,13 @@
     curl_slist_free_all(recipients);
     curl_slist_free_all(headers);
 
-    /* curl won't send the QUIT command until you call cleanup, so you should
-     * be able to re-use this connection for additional messages (setting
-     * CURLOPT_MAIL_FROM and CURLOPT_MAIL_RCPT as required, and calling
-     * curl_easy_perform() again. It may not be a good idea to keep the
-     * connection open for a very long time though (more than a few minutes
-     * may result in the server timing out the connection), and you do want to
-     * clean up in the end.
+    /* curl will not send the QUIT command until you call cleanup, so you
+     * should be able to re-use this connection for additional messages
+     * (setting CURLOPT_MAIL_FROM and CURLOPT_MAIL_RCPT as required, and
+     * calling curl_easy_perform() again. It may not be a good idea to keep
+     * the connection open for a very long time though (more than a few
+     * minutes may result in the server timing out the connection), and you do
+     * want to clean up in the end.
      */
     curl_easy_cleanup(curl);
 
diff --git a/docs/examples/smtp-multi.c b/docs/examples/smtp-multi.c
index ac867a2..4ba7ecb 100644
--- a/docs/examples/smtp-multi.c
+++ b/docs/examples/smtp-multi.c
@@ -101,7 +101,7 @@
   /* This is the URL for your mailserver */
   curl_easy_setopt(curl, CURLOPT_URL, "smtp://mail.example.com");
 
-  /* Note that this option isn't strictly required, omitting it will result in
+  /* Note that this option is not strictly required, omitting it will result in
    * libcurl sending the MAIL FROM command with empty sender data. All
    * autoresponses should have an empty reverse-path, and should be directed
    * to the address in the reverse-path which triggered them. Otherwise, they
@@ -116,7 +116,7 @@
   recipients = curl_slist_append(recipients, CC_MAIL);
   curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, recipients);
 
-  /* We're using a callback function to specify the payload (the headers and
+  /* We are using a callback function to specify the payload (the headers and
    * body of the message). You could just use the CURLOPT_READDATA option to
    * specify a FILE pointer to read from. */
   curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source);
diff --git a/docs/examples/smtp-ssl.c b/docs/examples/smtp-ssl.c
index 6181bb0..099dedb 100644
--- a/docs/examples/smtp-ssl.c
+++ b/docs/examples/smtp-ssl.c
@@ -101,7 +101,7 @@
      * than smtp:// to request a SSL based connection. */
     curl_easy_setopt(curl, CURLOPT_URL, "smtps://mainserver.example.net");
 
-    /* If you want to connect to a site who isn't using a certificate that is
+    /* If you want to connect to a site who is not using a certificate that is
      * signed by one of the certs in the CA bundle you have, you can skip the
      * verification of the server's certificate. This makes the connection
      * A LOT LESS SECURE.
@@ -113,7 +113,7 @@
     curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
 #endif
 
-    /* If the site you're connecting to uses a different host name that what
+    /* If the site you are connecting to uses a different host name that what
      * they have mentioned in their server certificate's commonName (or
      * subjectAltName) fields, libcurl will refuse to connect. You can skip
      * this check, but this will make the connection less secure. */
@@ -121,7 +121,7 @@
     curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
 #endif
 
-    /* Note that this option isn't strictly required, omitting it will result
+    /* Note that this option is not strictly required, omitting it will result
      * in libcurl sending the MAIL FROM command with empty sender data. All
      * autoresponses should have an empty reverse-path, and should be directed
      * to the address in the reverse-path which triggered them. Otherwise,
@@ -137,7 +137,7 @@
     recipients = curl_slist_append(recipients, CC_MAIL);
     curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, recipients);
 
-    /* We're using a callback function to specify the payload (the headers and
+    /* We are using a callback function to specify the payload (the headers and
      * body of the message). You could just use the CURLOPT_READDATA option to
      * specify a FILE pointer to read from. */
     curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source);
diff --git a/docs/examples/smtp-tls.c b/docs/examples/smtp-tls.c
index a9c45fa..41024b1 100644
--- a/docs/examples/smtp-tls.c
+++ b/docs/examples/smtp-tls.c
@@ -103,14 +103,14 @@
      * matches your server configuration. */
     curl_easy_setopt(curl, CURLOPT_URL, "smtp://mainserver.example.net:587");
 
-    /* In this example, we'll start with a plain text connection, and upgrade
+    /* In this example, we will start with a plain text connection, and upgrade
      * to Transport Layer Security (TLS) using the STARTTLS command. Be careful
      * of using CURLUSESSL_TRY here, because if TLS upgrade fails, the transfer
      * will continue anyway - see the security discussion in the libcurl
      * tutorial for more details. */
     curl_easy_setopt(curl, CURLOPT_USE_SSL, (long)CURLUSESSL_ALL);
 
-    /* If your server doesn't have a valid certificate, then you can disable
+    /* If your server does not have a valid certificate, then you can disable
      * part of the Transport Layer Security protection by setting the
      * CURLOPT_SSL_VERIFYPEER and CURLOPT_SSL_VERIFYHOST options to 0 (false).
      *   curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
@@ -123,7 +123,7 @@
      * for more information. */
     curl_easy_setopt(curl, CURLOPT_CAINFO, "/path/to/certificate.pem");
 
-    /* Note that this option isn't strictly required, omitting it will result
+    /* Note that this option is not strictly required, omitting it will result
      * in libcurl sending the MAIL FROM command with empty sender data. All
      * autoresponses should have an empty reverse-path, and should be directed
      * to the address in the reverse-path which triggered them. Otherwise,
@@ -139,7 +139,7 @@
     recipients = curl_slist_append(recipients, CC_MAIL);
     curl_easy_setopt(curl, CURLOPT_MAIL_RCPT, recipients);
 
-    /* We're using a callback function to specify the payload (the headers and
+    /* We are using a callback function to specify the payload (the headers and
      * body of the message). You could just use the CURLOPT_READDATA option to
      * specify a FILE pointer to read from. */
     curl_easy_setopt(curl, CURLOPT_READFUNCTION, payload_source);
diff --git a/docs/examples/smtp-vrfy.c b/docs/examples/smtp-vrfy.c
index 7d02101..26819a5 100644
--- a/docs/examples/smtp-vrfy.c
+++ b/docs/examples/smtp-vrfy.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -37,7 +37,7 @@
  * 1) This example requires libcurl 7.34.0 or above.
  * 2) Not all email servers support this command and even if your email server
  *    does support it, it may respond with a 252 response code even though the
- *    address doesn't exist.
+ *    address does not exist.
  */
 
 int main(void)
@@ -66,10 +66,10 @@
     /* Free the list of recipients */
     curl_slist_free_all(recipients);
 
-    /* Curl won't send the QUIT command until you call cleanup, so you should
-     * be able to re-use this connection for additional requests. It may not be
-     * a good idea to keep the connection open for a very long time though
-     * (more than a few minutes may result in the server timing out the
+    /* curl will not send the QUIT command until you call cleanup, so you
+     * should be able to re-use this connection for additional requests. It
+     * may not be a good idea to keep the connection open for a very long time
+     * though (more than a few minutes may result in the server timing out the
      * connection) and you do want to clean up in the end.
      */
     curl_easy_cleanup(curl);
diff --git a/docs/examples/threaded-ssl.c b/docs/examples/threaded-ssl.c
index 44c6a6c..e594b81 100644
--- a/docs/examples/threaded-ssl.c
+++ b/docs/examples/threaded-ssl.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -121,7 +121,7 @@
 
   curl = curl_easy_init();
   curl_easy_setopt(curl, CURLOPT_URL, url);
-  /* this example doesn't verify the server's certificate, which means we
+  /* this example does not verify the server's certificate, which means we
      might be downloading stuff from an impostor */
   curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
   curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
@@ -135,7 +135,7 @@
 {
   pthread_t tid[NUMT];
   int i;
-  (void)argc; /* we don't use any arguments in this example */
+  (void)argc; /* we do not use any arguments in this example */
   (void)argv;
 
   /* Must initialize libcurl before any threads are started */
diff --git a/docs/examples/urlapi.c b/docs/examples/urlapi.c
index 229954d..0c67480 100644
--- a/docs/examples/urlapi.c
+++ b/docs/examples/urlapi.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -26,8 +26,8 @@
 #include <stdio.h>
 #include <curl/curl.h>
 
-#if !CURL_AT_LEAST_VERSION(7, 62, 0)
-#error "this example requires curl 7.62.0 or later"
+#if !CURL_AT_LEAST_VERSION(7, 80, 0)
+#error "this example requires curl 7.80.0 or later"
 #endif
 
 int main(void)
@@ -47,7 +47,7 @@
                     "http://example.com/path/index.html", 0);
 
   if(uc) {
-    fprintf(stderr, "curl_url_set() failed: %in", uc);
+    fprintf(stderr, "curl_url_set() failed: %s", curl_url_strerror(uc));
     goto cleanup;
   }
 
diff --git a/docs/examples/xmlstream.c b/docs/examples/xmlstream.c
index e6416c3..0a8bff3 100644
--- a/docs/examples/xmlstream.c
+++ b/docs/examples/xmlstream.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -98,7 +98,7 @@
   size_t real_size = length * nmemb;
   struct ParserStruct *state = (struct ParserStruct *) XML_GetUserData(parser);
 
-  /* Only parse if we're not already in a failure state. */
+  /* Only parse if we are not already in a failure state. */
   if(state->ok && XML_Parse(parser, contents, real_size, 0) == 0) {
     int error_code = XML_GetErrorCode(parser);
     fprintf(stderr, "Parsing response buffer of length %lu failed"
diff --git a/docs/libcurl/ABI.md b/docs/libcurl/ABI.md
index 8cf5162..fcd6be4 100644
--- a/docs/libcurl/ABI.md
+++ b/docs/libcurl/ABI.md
@@ -17,7 +17,7 @@
 
  In libcurl land, you cannot tell by the libcurl version number if that
  libcurl is binary compatible or not with another libcurl version. As a rule,
- we don't break the ABI so you can *always* upgrade to a later version without
+ we do not break the ABI so you can *always* upgrade to a later version without
  any loss or change in functionality.
 
 ## Soname Bumps
@@ -38,11 +38,11 @@
 
 ## Downgrades
 
- Going to an older libcurl version from one you're currently using can be a
+ Going to an older libcurl version from one you are currently using can be a
  tricky thing. Mostly we add features and options to newer libcurls as that
- won't break ABI or hamper existing applications. This has the implication
+ will not break ABI or hamper existing applications. This has the implication
  that going backwards may get you in a situation where you pick a libcurl that
- doesn't support the options your application needs. Or possibly you even
+ does not support the options your application needs. Or possibly you even
  downgrade so far so you cross an ABI break border and thus a different
  soname, and then your application may need to adapt to the modified ABI.
 
diff --git a/docs/libcurl/Makefile.inc b/docs/libcurl/Makefile.inc
index 30eb779..706d8b6 100644
--- a/docs/libcurl/Makefile.inc
+++ b/docs/libcurl/Makefile.inc
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2008 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2008 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -95,6 +95,7 @@
  curl_url_dup.3 \
  curl_url_get.3 \
  curl_url_set.3 \
+ curl_url_strerror.3 \
  curl_version.3 \
  curl_version_info.3 \
  libcurl-easy.3 \
diff --git a/docs/libcurl/curl_easy_cleanup.3 b/docs/libcurl/curl_easy_cleanup.3
index d173202..07af52f 100644
--- a/docs/libcurl/curl_easy_cleanup.3
+++ b/docs/libcurl/curl_easy_cleanup.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_cleanup 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_cleanup 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_cleanup - End a libcurl easy handle
@@ -35,7 +35,7 @@
 
 This might close all connections this handle has used and possibly has kept
 open until now - unless it was attached to a multi handle while doing the
-transfers. Don't call this function if you intend to transfer more files,
+transfers. Do not call this function if you intend to transfer more files,
 re-using handles is a key to good performance with libcurl.
 
 Occasionally you may get your progress callback or header callback called from
@@ -50,12 +50,6 @@
 
 Passing in a NULL pointer in \fIhandle\fP will make this function return
 immediately with no action.
-.SH "OLD TIMES"
-For libcurl versions before 7.17,: after you've called this function, you can
-safely remove all the strings you've previously told libcurl to use, as it
-won't use them anymore now.
-.SH RETURN VALUE
-None
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -66,6 +60,10 @@
   curl_easy_cleanup(curl);
 }
 .fi
+.SH AVAILABILITY
+Added in 7.1
+.SH RETURN VALUE
+None
 .SH "SEE ALSO"
 .BR curl_easy_init "(3), " curl_easy_duphandle "(3), "
 .BR curl_easy_reset "(3), "
diff --git a/docs/libcurl/curl_easy_duphandle.3 b/docs/libcurl/curl_easy_duphandle.3
index a1da59d..e6b4368 100644
--- a/docs/libcurl/curl_easy_duphandle.3
+++ b/docs/libcurl/curl_easy_duphandle.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_duphandle 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_duphandle 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_duphandle - Clone a libcurl session handle
@@ -46,6 +46,21 @@
 
 In multi-threaded programs, this function must be called in a synchronous way,
 the input handle may not be in use when cloned.
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+CURL *nother;
+if(curl) {
+  CURLcode res;
+  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+  nother = curl_easy_duphandle(curl);
+  res = curl_easy_perform(nother);
+  curl_easy_cleanup(nother);
+  curl_easy_cleanup(curl);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.9
 .SH RETURN VALUE
 If this function returns NULL, something went wrong and no valid handle was
 returned.
diff --git a/docs/libcurl/curl_easy_escape.3 b/docs/libcurl/curl_easy_escape.3
index d5aa503..23232db 100644
--- a/docs/libcurl/curl_easy_escape.3
+++ b/docs/libcurl/curl_easy_escape.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_escape 3 "November 09, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_escape 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_escape - URL encodes the given string
@@ -40,7 +40,7 @@
 the input \fIstring\fP to find out the size. This function does not accept
 input strings longer than \fBCURL_MAX_INPUT_LENGTH\fP (8 MB).
 
-You must \fIcurl_free(3)\fP the returned string when you're done with it.
+You must \fIcurl_free(3)\fP the returned string when you are done with it.
 .SH ENCODING
 libcurl is typically not aware of, nor does it care about, character
 encodings. \fIcurl_easy_escape(3)\fP encodes the data byte-by-byte into the
@@ -50,10 +50,6 @@
 
 The caller of \fIcurl_easy_escape(3)\fP must make sure that the data passed in
 to the function is encoded correctly.
-.SH AVAILABILITY
-Added in 7.15.4 and replaces the old \fIcurl_escape(3)\fP function.
-.SH RETURN VALUE
-A pointer to a null-terminated string or NULL if it failed.
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -65,5 +61,9 @@
   }
 }
 .fi
+.SH AVAILABILITY
+Added in 7.15.4 and replaces the old \fIcurl_escape(3)\fP function.
+.SH RETURN VALUE
+A pointer to a null-terminated string or NULL if it failed.
 .SH "SEE ALSO"
 .BR curl_easy_unescape "(3), " curl_free "(3), " RFC 3986
diff --git a/docs/libcurl/curl_easy_getinfo.3 b/docs/libcurl/curl_easy_getinfo.3
index 61d165f..98c4d97 100644
--- a/docs/libcurl/curl_easy_getinfo.3
+++ b/docs/libcurl/curl_easy_getinfo.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_getinfo 3 "February 19, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_getinfo 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_getinfo - extract information from a curl handle
@@ -283,6 +283,28 @@
 The time it took for all redirection steps
 include name lookup, connect, pretransfer and transfer before final
 transaction was started. So, this is zero if no redirection took place.
+.SH EXAMPLE
+.nf
+  curl = curl_easy_init();
+  if(curl) {
+    curl_easy_setopt(curl, CURLOPT_URL, "https://www.example.com/");
+    res = curl_easy_perform(curl);
+
+    if(CURLE_OK == res) {
+      char *ct;
+      /* ask for the content-type */
+      res = curl_easy_getinfo(curl, CURLINFO_CONTENT_TYPE, &ct);
+
+      if((CURLE_OK == res) && ct)
+        printf("We received Content-Type: %s\\n", ct);
+    }
+
+    /* always cleanup */
+    curl_easy_cleanup(curl);
+  }
+.fi
+.SH AVAILABILITY
+Added in 7.4.1
 .SH RETURN VALUE
 If the operation was successful, CURLE_OK is returned. Otherwise an
 appropriate error code will be returned.
diff --git a/docs/libcurl/curl_easy_init.3 b/docs/libcurl/curl_easy_init.3
index b77f098..afdbe3e 100644
--- a/docs/libcurl/curl_easy_init.3
+++ b/docs/libcurl/curl_easy_init.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_init 3 "December 31, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_init 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_init - Start a libcurl easy session
@@ -42,9 +42,6 @@
 \fIcurl_global_init(3)\fP yourself properly.  See the description in
 \fBlibcurl\fP(3) of global environment requirements for details of how to use
 this function.
-.SH RETURN VALUE
-If this function returns NULL, something went wrong and you cannot use the
-other curl functions.
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -55,6 +52,11 @@
   curl_easy_cleanup(curl);
 }
 .fi
+.SH AVAILABILITY
+Always
+.SH RETURN VALUE
+If this function returns NULL, something went wrong and you cannot use the
+other curl functions.
 .SH "SEE ALSO"
 .BR curl_easy_cleanup "(3), " curl_global_init "(3), " curl_easy_reset "(3), "
 .BR curl_easy_perform "(3) "
diff --git a/docs/libcurl/curl_easy_option_by_id.3 b/docs/libcurl/curl_easy_option_by_id.3
index a7a722b..2710330 100644
--- a/docs/libcurl/curl_easy_option_by_id.3
+++ b/docs/libcurl/curl_easy_option_by_id.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_option_by_id 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_option_by_id 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_option_by_id - find an easy setopt option by id
@@ -38,6 +38,13 @@
 function as well.
 
 If libcurl has no option with the given id, this function returns NULL.
+.SH EXAMPLE
+.nf
+const struct curl_easyoption *opt = curl_easy_option_by_id(CURLOPT_URL);
+if(opt) {
+  printf("This option wants type %x\\n", opt->type);
+}
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.73.0
 .SH RETURN VALUE
diff --git a/docs/libcurl/curl_easy_option_by_name.3 b/docs/libcurl/curl_easy_option_by_name.3
index deb0f30..1b96d59 100644
--- a/docs/libcurl/curl_easy_option_by_name.3
+++ b/docs/libcurl/curl_easy_option_by_name.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_option_by_name 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_option_by_name 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_option_by_name - find an easy setopt option by name
@@ -36,6 +36,13 @@
 name comparison is made case insensitive.
 
 If libcurl has no option with the given name, this function returns NULL.
+.SH EXAMPLE
+.nf
+const struct curl_easyoption *opt = curl_easy_option_by_name("URL");
+if(opt) {
+  printf("This option wants CURLoption %x\\n", (int)opt->id);
+}
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.73.0
 .SH RETURN VALUE
diff --git a/docs/libcurl/curl_easy_option_next.3 b/docs/libcurl/curl_easy_option_next.3
index a28990d..355ae27 100644
--- a/docs/libcurl/curl_easy_option_next.3
+++ b/docs/libcurl/curl_easy_option_next.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_option_next 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_option_next 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_option_next - iterate over easy setopt options
@@ -65,6 +65,16 @@
 
 If the \fBCURLOT_FLAG_ALIAS\fP bit is set in the flags field, it means the
 name is provided for backwards compatibility as an alias.
+.SH EXAMPLE
+.nf
+/* iterate over all available options */
+const struct curl_easyoption *opt;
+opt = curl_easy_option_by_next(NULL);
+while(opt) {
+  printf("Name: %s\\n", opt->name);
+  opt = curl_easy_option_by_next(opt);
+}
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.73.0
 .SH RETURN VALUE
diff --git a/docs/libcurl/curl_easy_pause.3 b/docs/libcurl/curl_easy_pause.3
index b97da63..aba9d4f 100644
--- a/docs/libcurl/curl_easy_pause.3
+++ b/docs/libcurl/curl_easy_pause.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_pause 3 "December 22, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_pause 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_pause - pause and unpause a connection
@@ -36,7 +36,7 @@
 A connection can be paused by using this function or by letting the read or
 the write callbacks return the proper magic return code
 (\fICURL_READFUNC_PAUSE\fP and \fICURL_WRITEFUNC_PAUSE\fP). A write callback
-that returns pause signals to the library that it couldn't take care of any
+that returns pause signals to the library that it could not take care of any
 data at all, and that data will then be delivered again to the callback when
 the transfer is unpaused.
 
@@ -60,19 +60,15 @@
 .IP CURLPAUSE_RECV
 Pause receiving data. There will be no data received on this connection until
 this function is called again without this bit set. Thus, the write callback
-(\fICURLOPT_WRITEFUNCTION(3)\fP) won't be called.
+(\fICURLOPT_WRITEFUNCTION(3)\fP) will not be called.
 .IP CURLPAUSE_SEND
 Pause sending data. There will be no data sent on this connection until this
 function is called again without this bit set. Thus, the read callback
-(\fICURLOPT_READFUNCTION(3)\fP) won't be called.
+(\fICURLOPT_READFUNCTION(3)\fP) will not be called.
 .IP CURLPAUSE_ALL
 Convenience define that pauses both directions.
 .IP CURLPAUSE_CONT
 Convenience define that unpauses both directions.
-.SH RETURN VALUE
-CURLE_OK (zero) means that the option was set properly, and a non-zero return
-code means something wrong occurred after the new state was set.  See the
-\fIlibcurl-errors(3)\fP man page for the full list with descriptions.
 .SH LIMITATIONS
 The pausing of transfers does not work with protocols that work without
 network connectivity, like FILE://. Trying to pause such a transfer, in any
@@ -89,11 +85,14 @@
 
 When such a paused stream is unpaused again, any buffered data will be
 delivered first.
-.SH AVAILABILITY
-Added in libcurl 7.18.0.
+.SH EXAMPLE
+.nf
+/* pause a transfer in both directions */
+curl_easy_pause(curl, CURL_READFUNC_PAUSE | CURL_WRITEFUNC_PAUSE);
+.fi
 .SH "MEMORY USE"
 When pausing a read by returning the magic return code from a write callback,
-the read data is already in libcurl's internal buffers so it'll have to keep
+the read data is already in libcurl's internal buffers so it will have to keep
 it in an allocated buffer until the receiving is again unpaused using this
 function.
 
@@ -101,8 +100,14 @@
 automatically on download, libcurl will continue to uncompress the entire
 downloaded chunk and it will cache the data uncompressed. This has the side-
 effect that if you download something that is compressed a lot, it can result
-in a very large data amount needing to be allocated to save the data during
-the pause. This said, you should probably consider not using paused receiving
-if you allow libcurl to uncompress data automatically.
+in a large data amount needing to be allocated to save the data during the
+pause. This said, you should probably consider not using paused receiving if
+you allow libcurl to uncompress data automatically.
+.SH AVAILABILITY
+Added in 7.18.0.
+.SH RETURN VALUE
+CURLE_OK (zero) means that the option was set properly, and a non-zero return
+code means something wrong occurred after the new state was set.  See the
+\fIlibcurl-errors(3)\fP man page for the full list with descriptions.
 .SH "SEE ALSO"
 .BR curl_easy_cleanup "(3), " curl_easy_reset "(3)"
diff --git a/docs/libcurl/curl_easy_perform.3 b/docs/libcurl/curl_easy_perform.3
index 17e6042..99a3e1c 100644
--- a/docs/libcurl/curl_easy_perform.3
+++ b/docs/libcurl/curl_easy_perform.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_perform 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_perform 3 "November 08, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_perform - perform a blocking file transfer
@@ -30,12 +30,12 @@
 .ad
 .SH DESCRIPTION
 Invoke this function after \fIcurl_easy_init(3)\fP and all the
-\fIcurl_easy_setopt(3)\fP calls are made, and will perform the transfer as
+\fIcurl_easy_setopt(3)\fP calls are made, and it performs the transfer as
 described in the options. It must be called with the same \fBeasy_handle\fP as
 input as the \fIcurl_easy_init(3)\fP call returned.
 
 \fIcurl_easy_perform(3)\fP performs the entire request in a blocking manner
-and returns when done, or if it failed. For non-blocking behavior, see
+and returns when done, or earlier if it fails. For non-blocking behavior, see
 \fIcurl_multi_perform(3)\fP.
 
 You can do any amount of calls to \fIcurl_easy_perform(3)\fP while using the
@@ -51,14 +51,14 @@
 another time. If you want parallel transfers, you must use several curl
 easy_handles.
 
+A network transfer moves data to a peer or from a peer. An application tells
+libcurl how to receive data by setting the \fICURLOPT_WRITEFUNCTION(3)\fP and
+\fICURLOPT_WRITEDATA(3)\fP options. To tell libcurl what data to send, there
+are a few more alternatives but two common ones are
+\fICURLOPT_READFUNCTION(3)\fP and \fICURLOPT_POSTFIELDS(3)\fP.
+
 While the \fBeasy_handle\fP is added to a multi handle, it cannot be used by
 \fIcurl_easy_perform(3)\fP.
-.SH RETURN VALUE
-CURLE_OK (0) means everything was ok, non-zero means an error occurred as
-.I <curl/curl.h>
-defines - see \fIlibcurl-errors(3)\fP. If the \fICURLOPT_ERRORBUFFER(3)\fP was
-set with \fIcurl_easy_setopt(3)\fP there will be a readable error message in
-the error buffer when non-zero is returned.
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -69,6 +69,14 @@
   curl_easy_cleanup(curl);
 }
 .fi
+.SH AVAILABILITY
+Always
+.SH RETURN VALUE
+CURLE_OK (0) means everything was ok, non-zero means an error occurred as
+.I <curl/curl.h>
+defines - see \fIlibcurl-errors(3)\fP. If the \fICURLOPT_ERRORBUFFER(3)\fP was
+set with \fIcurl_easy_setopt(3)\fP there will be a readable error message in
+the error buffer when non-zero is returned.
 .SH "SEE ALSO"
 .BR curl_easy_init "(3), " curl_easy_setopt "(3), "
 .BR curl_multi_add_handle "(3), " curl_multi_perform "(3), "
diff --git a/docs/libcurl/curl_easy_recv.3 b/docs/libcurl/curl_easy_recv.3
index 76ed187..e23f381 100644
--- a/docs/libcurl/curl_easy_recv.3
+++ b/docs/libcurl/curl_easy_recv.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_recv 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_recv 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_recv - receives raw data on an "easy" connection
@@ -61,7 +61,22 @@
 Furthermore if you wait on the socket and it tells you there is data to read,
 \fIcurl_easy_recv(3)\fP may return \fBCURLE_AGAIN\fP if the only data that was
 read was for internal SSL processing, and no other data is available.
+.SH EXAMPLE
+.nf
+ curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+ /* Do not do the transfer - only connect to host */
+ curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, 1L);
+ res = curl_easy_perform(curl);
 
+ if(res == CURLE_OK) {
+   /* Extract the socket from the curl handle -
+      we will need it for waiting. */
+   res = curl_easy_getinfo(curl, CURLINFO_ACTIVESOCKET, &sockfd);
+
+   /* read data */
+   res = curl_easy_recv(curl, buf, sizeof(buf), &nread);
+ }
+.fi
 .SH AVAILABILITY
 Added in 7.18.2.
 .SH RETURN VALUE
@@ -77,8 +92,6 @@
 
 If there's no socket available to use from the previous transfer, this function
 returns \fBCURLE_UNSUPPORTED_PROTOCOL\fP.
-.SH EXAMPLE
-See \fBsendrecv.c\fP in \fBdocs/examples\fP directory for usage example.
 .SH "SEE ALSO"
 .BR curl_easy_setopt "(3), " curl_easy_perform "(3), "
 .BR curl_easy_getinfo "(3), "
diff --git a/docs/libcurl/curl_easy_reset.3 b/docs/libcurl/curl_easy_reset.3
index 0e064ca..a08b2d7 100644
--- a/docs/libcurl/curl_easy_reset.3
+++ b/docs/libcurl/curl_easy_reset.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_reset 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_reset 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_reset - reset all options of a libcurl session handle
@@ -36,6 +36,14 @@
 It does not change the following information kept in the handle: live
 connections, the Session ID cache, the DNS cache, the cookies, the shares or
 the alt-svc cache.
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+
+/* ... the handle is used and options are set ... */
+
+curl_easy_reset(curl);
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.12.1
 .SH RETURN VALUE
diff --git a/docs/libcurl/curl_easy_send.3 b/docs/libcurl/curl_easy_send.3
index 4db7f54..804d8c5 100644
--- a/docs/libcurl/curl_easy_send.3
+++ b/docs/libcurl/curl_easy_send.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_send 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_send 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_send - sends raw data over an "easy" connection
@@ -54,13 +54,28 @@
 Furthermore if you wait on the socket and it tells you it's writable,
 \fIcurl_easy_send(3)\fP may return \fBCURLE_AGAIN\fP if the only data that was
 sent was for internal SSL processing, and no other data could be sent.
+.SH EXAMPLE
+.nf
+ curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+ /* Do not do the transfer - only connect to host */
+ curl_easy_setopt(curl, CURLOPT_CONNECT_ONLY, 1L);
+ res = curl_easy_perform(curl);
 
+ if(res == CURLE_OK) {
+   /* Extract the socket from the curl handle -
+      we will need it for waiting. */
+   res = curl_easy_getinfo(curl, CURLINFO_ACTIVESOCKET, &sockfd);
+
+   /* send data */
+   res = curl_easy_send(curl, "hello", 5, &sent);
+ }
+.fi
 .SH AVAILABILITY
 Added in 7.18.2.
 .SH RETURN VALUE
 On success, returns \fBCURLE_OK\fP and stores the number of bytes actually
-sent into \fB*n\fP. Note that this may very well be less than the amount you
-wanted to send.
+sent into \fB*n\fP. Note that this may be less than the amount you wanted to
+send.
 
 On failure, returns the appropriate error code.
 
@@ -69,8 +84,6 @@
 
 If there's no socket available to use from the previous transfer, this function
 returns \fBCURLE_UNSUPPORTED_PROTOCOL\fP.
-.SH EXAMPLE
-See \fBsendrecv.c\fP in \fBdocs/examples\fP directory for usage example.
 .SH "SEE ALSO"
 .BR curl_easy_setopt "(3), " curl_easy_perform "(3), " curl_easy_getinfo "(3), "
 .BR curl_easy_recv "(3) "
diff --git a/docs/libcurl/curl_easy_setopt.3 b/docs/libcurl/curl_easy_setopt.3
index 16f5278..fa466ca 100644
--- a/docs/libcurl/curl_easy_setopt.3
+++ b/docs/libcurl/curl_easy_setopt.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_setopt 3 "July 16, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_setopt 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_setopt \- set options for a curl easy handle
@@ -45,11 +45,11 @@
 options back to internal default with \fIcurl_easy_reset(3)\fP.
 
 Strings passed to libcurl as 'char *' arguments, are copied by the library;
-thus the string storage associated to the pointer argument may be overwritten
-after \fIcurl_easy_setopt(3)\fP returns. The only exception to this rule is
-really \fICURLOPT_POSTFIELDS(3)\fP, but the alternative that copies the string
-\fICURLOPT_COPYPOSTFIELDS(3)\fP has some usage characteristics you need to
-read up on. This function does not accept input strings longer than
+the string storage associated to the pointer argument may be discarded or
+reused after \fIcurl_easy_setopt(3)\fP returns. The only exception to this
+rule is really \fICURLOPT_POSTFIELDS(3)\fP, but the alternative that copies
+the string \fICURLOPT_COPYPOSTFIELDS(3)\fP has some usage characteristics you
+need to read up on. This function does not accept input strings longer than
 \fBCURL_MAX_INPUT_LENGTH\fP (8 MB).
 
 The order in which the options are set does not matter.
@@ -145,6 +145,10 @@
 Callback to be called before a new resolve request is started. See \fICURLOPT_RESOLVER_START_FUNCTION(3)\fP
 .IP CURLOPT_RESOLVER_START_DATA
 Data pointer to pass to resolver start callback. See \fICURLOPT_RESOLVER_START_DATA(3)\fP
+.IP CURLOPT_PREREQFUNCTION
+Callback to be called after a connection is established but before a request is made on that connection. See \fICURLOPT_PREREQFUNCTION(3)\fP
+.IP CURLOPT_PREREQDATA
+Data pointer to pass to the CURLOPT_PREREQFUNCTION callback. See \fICURLOPT_PREREQDATA(3)\fP
 .SH ERROR OPTIONS
 .IP CURLOPT_ERRORBUFFER
 Error message buffer. See \fICURLOPT_ERRORBUFFER(3)\fP
@@ -265,7 +269,7 @@
 .IP CURLOPT_XOAUTH2_BEARER
 OAuth2 bearer token. See \fICURLOPT_XOAUTH2_BEARER(3)\fP
 .IP CURLOPT_DISALLOW_USERNAME_IN_URL
-Don't allow username in URL. See \fICURLOPT_DISALLOW_USERNAME_IN_URL(3)\fP
+Do not allow username in URL. See \fICURLOPT_DISALLOW_USERNAME_IN_URL(3)\fP
 .SH HTTP OPTIONS
 .IP CURLOPT_AUTOREFERER
 Automatically set Referer: header. See \fICURLOPT_AUTOREFERER(3)\fP
@@ -489,7 +493,9 @@
 .IP CURLOPT_FORBID_REUSE
 Prevent subsequent connections from re-using this. See \fICURLOPT_FORBID_REUSE(3)\fP
 .IP CURLOPT_MAXAGE_CONN
-Limit the age of connections for reuse. See \fICURLOPT_MAXAGE_CONN(3)\fP
+Limit the age (idle time) of connections for reuse. See \fICURLOPT_MAXAGE_CONN(3)\fP
+.IP CURLOPT_MAXLIFETIME_CONN
+Limit the age (since creation) of connections for reuse. See \fICURLOPT_MAXLIFETIME_CONN(3)\fP
 .IP CURLOPT_CONNECTTIMEOUT
 Timeout for the connection phase. See \fICURLOPT_CONNECTTIMEOUT(3)\fP
 .IP CURLOPT_CONNECTTIMEOUT_MS
@@ -643,6 +649,8 @@
 Enable SSH compression. See \fICURLOPT_SSH_COMPRESSION(3)\fP
 .IP CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
 MD5 of host's public key. See \fICURLOPT_SSH_HOST_PUBLIC_KEY_MD5(3)\fP
+.IP CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256
+SHA256 of host's public key. See \fICURLOPT_SSH_HOST_PUBLIC_KEY_SHA256(3)\fP
 .IP CURLOPT_SSH_PUBLIC_KEYFILE
 File name of public key. See \fICURLOPT_SSH_PUBLIC_KEYFILE(3)\fP
 .IP CURLOPT_SSH_PRIVATE_KEYFILE
@@ -665,6 +673,18 @@
 .SH TELNET OPTIONS
 .IP CURLOPT_TELNETOPTIONS
 TELNET options. See \fICURLOPT_TELNETOPTIONS(3)\fP
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  CURLcode res;
+  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+  res = curl_easy_perform(curl);
+  curl_easy_cleanup(curl);
+}
+.fi
+.SH AVAILABILITY
+Always
 .SH RETURN VALUE
 \fICURLE_OK\fP (zero) means that the option was set properly, non-zero means an
 error occurred as \fI<curl/curl.h>\fP defines. See the \fIlibcurl-errors(3)\fP
@@ -677,21 +697,11 @@
 \fBCURLE_BAD_FUNCTION_ARGUMENT\fP is returned when the argument to an option
 is invalid, like perhaps out of range.
 
-If you try to set an option that libcurl doesn't know about, perhaps because
+If you try to set an option that libcurl does not know about, perhaps because
 the library is too old to support it or the option was removed in a recent
 version, this function will return \fICURLE_UNKNOWN_OPTION\fP. If support for
 the option was disabled at compile-time, it will return
 \fICURLE_NOT_BUILT_IN\fP.
-.SH EXAMPLE
-.nf
-CURL *curl = curl_easy_init();
-if(curl) {
-  CURLcode res;
-  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
-  res = curl_easy_perform(curl);
-  curl_easy_cleanup(curl);
-}
-.fi
 .SH "SEE ALSO"
 .BR curl_easy_init "(3), " curl_easy_cleanup "(3), " curl_easy_reset "(3), "
 .BR curl_easy_getinfo "(3), " curl_multi_setopt "(3), "
diff --git a/docs/libcurl/curl_easy_strerror.3 b/docs/libcurl/curl_easy_strerror.3
index 51fc271..a8e7400 100644
--- a/docs/libcurl/curl_easy_strerror.3
+++ b/docs/libcurl/curl_easy_strerror.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_easy_strerror 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_strerror 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_strerror - return string describing error code
@@ -33,9 +33,19 @@
 
 Typically applications also appreciate \fICURLOPT_ERRORBUFFER(3)\fP for more
 specific error descriptions generated at run-time.
+.SH EXAMPLE
+.nf
+  /* Perform the request, res will get the return code */
+  res = curl_easy_perform(curl);
+  /* Check for errors */
+  if(res != CURLE_OK)
+    fprintf(stderr, "curl_easy_perform() failed: %s\\n",
+            curl_easy_strerror(res));
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.12.0
 .SH RETURN VALUE
 A pointer to a null-terminated string.
 .SH "SEE ALSO"
-.BR libcurl-errors "(3), " curl_multi_strerror "(3), " curl_share_strerror "(3)"
+.BR libcurl-errors "(3), " curl_multi_strerror "(3), "
+.BR curl_share_strerror "(3), " curl_url_strerror "(3)"
diff --git a/docs/libcurl/curl_easy_unescape.3 b/docs/libcurl/curl_easy_unescape.3
index ec9ff93..5d6a0f6 100644
--- a/docs/libcurl/curl_easy_unescape.3
+++ b/docs/libcurl/curl_easy_unescape.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_unescape 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_unescape 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_unescape - URL decodes the given string
@@ -46,7 +46,21 @@
 longer string can be unescaped if the string length is returned in this
 parameter.
 
-You must \fIcurl_free(3)\fP the returned string when you're done with it.
+You must \fIcurl_free(3)\fP the returned string when you are done with it.
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  int decodelen;
+  char *decoded = curl_easy_unescape(curl, "%63%75%72%6c", 12, &decodelen);
+  if(decoded) {
+    /* do not assume printf() works on the decoded data! */
+    printf("Decoded: ");
+    /* ... */
+    curl_free(decoded);
+  }
+}
+.fi
 .SH AVAILABILITY
 Added in 7.15.4 and replaces the old \fIcurl_unescape(3)\fP function.
 .SH RETURN VALUE
diff --git a/docs/libcurl/curl_easy_upkeep.3 b/docs/libcurl/curl_easy_upkeep.3
index 689bee4..15a590f 100644
--- a/docs/libcurl/curl_easy_upkeep.3
+++ b/docs/libcurl/curl_easy_upkeep.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_easy_upkeep 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_easy_upkeep 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_easy_upkeep - Perform any connection upkeep checks.
@@ -42,14 +42,6 @@
 This function must be explicitly called in order to perform the upkeep work.
 The connection upkeep interval is set with
 \fICURLOPT_UPKEEP_INTERVAL_MS(3)\fP.
-
-.SH AVAILABILITY
-Added in 7.62.0.
-.SH RETURN VALUE
-On success, returns \fBCURLE_OK\fP.
-
-On failure, returns the appropriate error code.
-
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -74,5 +66,13 @@
   /* always cleanup */
   curl_easy_cleanup(curl);
 }
-
 .fi
+.SH AVAILABILITY
+Added in 7.62.0.
+.SH RETURN VALUE
+On success, returns \fBCURLE_OK\fP.
+
+On failure, returns the appropriate error code.
+.SH SEE ALSO
+.BR CURLOPT_TCP_KEEPALIVE "(3), "
+.BR CURLOPT_TCP_KEEPIDLE "(3), "
diff --git a/docs/libcurl/curl_escape.3 b/docs/libcurl/curl_escape.3
index 65b8c6a..ebbfa60 100644
--- a/docs/libcurl/curl_escape.3
+++ b/docs/libcurl/curl_escape.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_escape 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_escape 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_escape - URL encodes the given string
@@ -36,10 +36,18 @@
 A-Z or 0-9 will be converted to their "URL escaped" version (%NN where NN is a
 two-digit hexadecimal number).
 
-If the 'length' argument is set to 0, curl_escape() will use strlen() on the
-input 'url' string to find out the size.
+If the \fBlengthf\fP argument is set to 0, curl_escape() will use strlen() on
+the input \fBurl\fP string to find out the size.
 
-You must \fIcurl_free(3)\fP the returned string when you're done with it.
+You must \fIcurl_free(3)\fP the returned string when you are done with it.
+.SH EXAMPLE
+.nf
+char *output = curl_escape("data to convert", 15);
+if(output) {
+  printf("Encoded: %s\\n", output);
+  curl_free(output);
+}
+.fi
 .SH AVAILABILITY
 Since 7.15.4, \fIcurl_easy_escape(3)\fP should be used. This function will
 be removed in a future release.
diff --git a/docs/libcurl/curl_formadd.3 b/docs/libcurl/curl_formadd.3
index baf20db..39724ca 100644
--- a/docs/libcurl/curl_formadd.3
+++ b/docs/libcurl/curl_formadd.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_formadd 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_formadd 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_formadd - add a section to a multipart/formdata HTTP POST
@@ -34,7 +34,7 @@
 
 curl_formadd() is used to append sections when building a multipart/formdata
 HTTP POST (sometimes referred to as RFC2388-style posts). Append one section
-at a time until you've added all the sections you want included and then you
+at a time until you have added all the sections you want included and then you
 pass the \fIfirstitem\fP pointer as parameter to \fICURLOPT_HTTPPOST(3)\fP.
 \fIlastitem\fP is set after each \fIcurl_formadd(3)\fP call and on repeated
 invokes it should be left as set to allow repeated invokes to find the end of
@@ -53,7 +53,7 @@
 First, there are some basics you need to understand about multipart/formdata
 posts. Each part consists of at least a NAME and a CONTENTS part. If the part
 is made for file upload, there are also a stored CONTENT-TYPE and a FILENAME.
-Below, we'll discuss what options you use to set these properties in the
+Below, we will discuss what options you use to set these properties in the
 parts you want to add to your post.
 
 The options listed first are for making normal parts. The options from
@@ -62,28 +62,28 @@
 .SH OPTIONS
 .IP CURLFORM_COPYNAME
 followed by a string which provides the \fIname\fP of this part. libcurl
-copies the string so your application doesn't need to keep it around after
-this function call. If the name isn't NUL-terminated, you must set its length
+copies the string so your application does not need to keep it around after
+this function call. If the name is not NUL-terminated, you must set its length
 with \fBCURLFORM_NAMELENGTH\fP. The \fIname\fP is not allowed to contain
 zero-valued bytes. The copied data will be freed by \fIcurl_formfree(3)\fP.
 .IP CURLFORM_PTRNAME
 followed by a string which provides the \fIname\fP of this part. libcurl
 will use the pointer and refer to the data in your application, so you
 must make sure it remains until curl no longer needs it. If the name
-isn't NUL-terminated, you must set its length with \fBCURLFORM_NAMELENGTH\fP.
+is not NUL-terminated, you must set its length with \fBCURLFORM_NAMELENGTH\fP.
 The \fIname\fP is not allowed to contain zero-valued bytes.
 .IP CURLFORM_COPYCONTENTS
 followed by a pointer to the contents of this part, the actual data
-to send away. libcurl copies the provided data, so your application doesn't
-need to keep it around after this function call. If the data isn't null
-terminated, or if you'd like it to contain zero bytes, you must
+to send away. libcurl copies the provided data, so your application does not
+need to keep it around after this function call. If the data is not null
+terminated, or if you would like it to contain zero bytes, you must
 set the length of the name with \fBCURLFORM_CONTENTSLENGTH\fP. The copied
 data will be freed by \fIcurl_formfree(3)\fP.
 .IP CURLFORM_PTRCONTENTS
 followed by a pointer to the contents of this part, the actual data
 to send away. libcurl will use the pointer and refer to the data in your
 application, so you must make sure it remains until curl no longer needs it.
-If the data isn't NUL-terminated, or if you'd like it to contain zero bytes,
+If the data is not NUL-terminated, or if you would like it to contain zero bytes,
 you must set its length  with \fBCURLFORM_CONTENTSLENGTH\fP.
 .IP CURLFORM_CONTENTLEN
 followed by a curl_off_t value giving the length of the contents. Note that
@@ -166,25 +166,13 @@
 the POST occurs, if you free it before the post completes you may experience
 problems.
 
-When you've passed the HttpPost pointer to \fIcurl_easy_setopt(3)\fP (using
+When you have passed the HttpPost pointer to \fIcurl_easy_setopt(3)\fP (using
 the \fICURLOPT_HTTPPOST(3)\fP option), you must not free the list until after
-you've called \fIcurl_easy_cleanup(3)\fP for the curl handle.
+you have called \fIcurl_easy_cleanup(3)\fP for the curl handle.
 
 See example below.
-.SH AVAILABILITY
-Deprecated in 7.56.0. Before this release, field names were allowed to
-contain zero-valued bytes. The pseudo-filename "-" to read stdin is
-discouraged although still supported, but data is not read before being
-actually sent: the effective data size can then not be automatically
-determined, resulting in a chunked encoding transfer. Backslashes and
-double quotes in field and file names are now escaped before transmission.
-.SH RETURN VALUE
-0 means everything was ok, non-zero means an error occurred corresponding
-to a CURL_FORMADD_* constant defined in
-.I <curl/curl.h>
 .SH EXAMPLE
 .nf
-
  struct curl_httppost* post = NULL;
  struct curl_httppost* last = NULL;
  char namebuffer[] = "name buffer";
@@ -261,7 +249,17 @@
               CURLFORM_FILECONTENT, ".bashrc", CURLFORM_END);
  /* Set the form info */
  curl_easy_setopt(curl, CURLOPT_HTTPPOST, post);
-
+.SH AVAILABILITY
+Deprecated in 7.56.0. Before this release, field names were allowed to
+contain zero-valued bytes. The pseudo-filename "-" to read stdin is
+discouraged although still supported, but data is not read before being
+actually sent: the effective data size can then not be automatically
+determined, resulting in a chunked encoding transfer. Backslashes and
+double quotes in field and file names are now escaped before transmission.
+.SH RETURN VALUE
+0 means everything was ok, non-zero means an error occurred corresponding
+to a CURL_FORMADD_* constant defined in
+.I <curl/curl.h>
 .SH "SEE ALSO"
 .BR curl_easy_setopt "(3),"
 .BR curl_formfree "(3),"
diff --git a/docs/libcurl/curl_formfree.3 b/docs/libcurl/curl_formfree.3
index a0423cf..86639cc 100644
--- a/docs/libcurl/curl_formfree.3
+++ b/docs/libcurl/curl_formfree.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_formfree 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_formfree 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_formfree - free a previously build multipart/formdata HTTP POST chain
@@ -44,6 +44,22 @@
 
 Passing in a NULL pointer in \fIform\fP will make this function return
 immediately with no action.
+.SH EXAMPLE
+.nf
+  /* Fill in a file upload field */
+  curl_formadd(&formpost,
+               &lastptr,
+               CURLFORM_COPYNAME, "file",
+               CURLFORM_FILE, "nice-image.jpg",
+               CURLFORM_END);
+
+  curl_easy_setopt(curl, CURLOPT_HTTPPOST, formpost);
+
+  curl_easy_perform(curl);
+
+  /* then cleanup the formpost chain */
+  curl_formfree(formpost);
+.fi
 .SH AVAILABILITY
 Deprecated in 7.56.0.
 .SH RETURN VALUE
diff --git a/docs/libcurl/curl_formget.3 b/docs/libcurl/curl_formget.3
index 77e9f0f..923941b 100644
--- a/docs/libcurl/curl_formget.3
+++ b/docs/libcurl/curl_formget.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_formget 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_formget 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_formget - serialize a previously built multipart/formdata HTTP POST chain
@@ -43,13 +43,10 @@
 callback should return the buffer length passed to it on success.
 
 If the \fBCURLFORM_STREAM\fP option is used in the formpost, it will prevent
-\fIcurl_formget(3)\fP from working until you've performed the actual HTTP
+\fIcurl_formget(3)\fP from working until you have performed the actual HTTP
 request as only then will libcurl get the actual read callback to use!
-.SH RETURN VALUE
-0 means everything was ok, non-zero means an error occurred
 .SH EXAMPLE
 .nf
-
  size_t print_httppost_callback(void *arg, const char *buf, size_t len)
  {
    fwrite(buf, len, 1, stdout);
@@ -68,5 +65,7 @@
 .SH AVAILABILITY
 This function was added in libcurl 7.15.5. The form API is deprecated in
 libcurl 7.56.0.
+.SH RETURN VALUE
+0 means everything was ok, non-zero means an error occurred
 .SH "SEE ALSO"
 .BR curl_formadd "(3), " curl_mime_init "(3)"
diff --git a/docs/libcurl/curl_free.3 b/docs/libcurl/curl_free.3
index 6251a5a..b936a42 100644
--- a/docs/libcurl/curl_free.3
+++ b/docs/libcurl/curl_free.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_free 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_free 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_free - reclaim memory that has been obtained through a libcurl call
@@ -35,5 +35,17 @@
 
 Passing in a NULL pointer in \fIptr\fP will make this function return
 immediately with no action.
+.SH EXAMPLE
+.nf
+  char *width = curl_getenv("COLUMNS");
+  if(width) {
+    /* it was set! */
+    curl_free(width);
+  }
+.fi
+.SH AVAILABILITY
+Always
+.SH RETURN VALUE
+None
 .SH "SEE ALSO"
 .BR curl_easy_unescape "(3), " curl_easy_escape "(3) "
diff --git a/docs/libcurl/curl_getdate.3 b/docs/libcurl/curl_getdate.3
index e01c88e..22e8af8 100644
--- a/docs/libcurl/curl_getdate.3
+++ b/docs/libcurl/curl_getdate.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_getdate 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_getdate 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_getdate - Convert a date string to number of seconds
@@ -63,36 +63,39 @@
 year, MM as the month number and DD as the day of the month, for the specified
 calendar date.
 .PP
-.SH EXAMPLES
+.SH EXAMPLE
 .nf
-Sun, 06 Nov 1994 08:49:37 GMT
-Sunday, 06-Nov-94 08:49:37 GMT
-Sun Nov  6 08:49:37 1994
-06 Nov 1994 08:49:37 GMT
-06-Nov-94 08:49:37 GMT
-Nov  6 08:49:37 1994
-06 Nov 1994 08:49:37
-06-Nov-94 08:49:37
-1994 Nov 6 08:49:37
-GMT 08:49:37 06-Nov-94 Sunday
-94 6 Nov 08:49:37
-1994 Nov 6
-06-Nov-94
-Sun Nov 6 94
-1994.Nov.6
-Sun/Nov/6/94/GMT
-Sun, 06 Nov 1994 08:49:37 CET
-06 Nov 1994 08:49:37 EST
-Sun, 12 Sep 2004 15:05:58 -0700
-Sat, 11 Sep 2004 21:32:11 +0200
-20040912 15:05:58 -0700
-20040911 +0200
+ time_t t;
+ t = curl_getdate("Sun, 06 Nov 1994 08:49:37 GMT", NULL);
+ t = curl_getdate("Sunday, 06-Nov-94 08:49:37 GMT", NULL);
+ t = curl_getdate("Sun Nov  6 08:49:37 1994", NULL);
+ t = curl_getdate("06 Nov 1994 08:49:37 GMT", NULL);
+ t = curl_getdate("06-Nov-94 08:49:37 GMT", NULL);
+ t = curl_getdate("Nov  6 08:49:37 1994", NULL);
+ t = curl_getdate("06 Nov 1994 08:49:37", NULL);
+ t = curl_getdate("06-Nov-94 08:49:37", NULL);
+ t = curl_getdate("1994 Nov 6 08:49:37", NULL);
+ t = curl_getdate("GMT 08:49:37 06-Nov-94 Sunday", NULL);
+ t = curl_getdate("94 6 Nov 08:49:37", NULL);
+ t = curl_getdate("1994 Nov 6", NULL);
+ t = curl_getdate("06-Nov-94", NULL);
+ t = curl_getdate("Sun Nov 6 94", NULL);
+ t = curl_getdate("1994.Nov.6", NULL);
+ t = curl_getdate("Sun/Nov/6/94/GMT", NULL);
+ t = curl_getdate("Sun, 06 Nov 1994 08:49:37 CET", NULL);
+ t = curl_getdate("06 Nov 1994 08:49:37 EST", NULL);
+ t = curl_getdate("Sun, 12 Sep 2004 15:05:58 -0700", NULL);
+ t = curl_getdate("Sat, 11 Sep 2004 21:32:11 +0200", NULL);
+ t = curl_getdate("20040912 15:05:58 -0700", NULL);
+ t = curl_getdate("20040911 +0200", NULL);
 .fi
 .SH STANDARDS
-This parser was written to handle date formats specified in RFC 822 (including
-the update in RFC 1123) using time zone name or time zone delta and RFC 850
-(obsoleted by RFC 1036) and ANSI C's asctime() format. These formats are the
-only ones RFC 7231 says HTTP applications may use.
+This parser handles date formats specified in RFC 822 (including the update in
+RFC 1123) using time zone name or time zone delta and RFC 850 (obsoleted by
+RFC 1036) and ANSI C's asctime() format. These formats are the only ones RFC
+7231 says HTTP applications may use.
+.SH AVAILABILITY
+Always
 .SH RETURN VALUE
 This function returns -1 when it fails to parse the date string. Otherwise it
 returns the number of seconds as described.
diff --git a/docs/libcurl/curl_getenv.3 b/docs/libcurl/curl_getenv.3
index d8b4582..1ec6c66 100644
--- a/docs/libcurl/curl_getenv.3
+++ b/docs/libcurl/curl_getenv.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_getenv 3 "December 31, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_getenv 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_getenv - return value for environment name
@@ -33,7 +33,15 @@
 emulate its behavior and provide an identical interface for all operating
 systems libcurl builds on (including win32).
 
-You must \fIcurl_free(3)\fP the returned string when you're done with it.
+You must \fIcurl_free(3)\fP the returned string when you are done with it.
+.SH EXAMPLE
+.nf
+  char *width = curl_getenv("COLUMNS");
+  if(width) {
+    /* it was set! */
+    curl_free(width);
+  }
+.fi
 .SH AVAILABILITY
 This function will be removed from the public libcurl API in a near future. It
 will instead be made "available" by source code access only, and then as
@@ -42,8 +50,8 @@
 A pointer to a null-terminated string or NULL if it failed to find the
 specified name.
 .SH NOTE
-Under unix operating systems, there isn't any point in returning an allocated
-memory, although other systems won't work properly if this isn't done. The
+Under unix operating systems, there is no point in returning an allocated
+memory, although other systems will not work properly if this is not done. The
 unix implementation thus has to suffer slightly from the drawbacks of other
 systems.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/curl_global_cleanup.3 b/docs/libcurl/curl_global_cleanup.3
index c3622f4..0a6881e 100644
--- a/docs/libcurl/curl_global_cleanup.3
+++ b/docs/libcurl/curl_global_cleanup.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_cleanup 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_global_cleanup 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_global_cleanup - global libcurl cleanup
@@ -36,7 +36,7 @@
 
 \fBThis function is not thread safe.\fP You must not call it when any other
 thread in the program (i.e. a thread sharing the same memory) is running.
-This doesn't just mean no other thread that is using libcurl.  Because
+This does not just mean no other thread that is using libcurl.  Because
 \fIcurl_global_cleanup(3)\fP calls functions of other libraries that are
 similarly thread unsafe, it could conflict with any other thread that uses
 these other libraries.
@@ -50,6 +50,18 @@
 still running then your program may crash or other corruption may occur. We
 recommend you do not run libcurl from any module that may be unloaded
 dynamically. This behavior may be addressed in the future.
+.SH EXAMPLE
+.nf
+ curl_global_init(CURL_GLOBAL_DEFAULT);
+
+ /* use libcurl, then before exiting... */
+
+ curl_global_cleanup();
+.fi
+.SH AVAILABILITY
+Added in 7.8
+.SH RETURN VALUE
+None
 .SH "SEE ALSO"
 .BR curl_global_init "(3), "
 .BR libcurl "(3), "
diff --git a/docs/libcurl/curl_global_init.3 b/docs/libcurl/curl_global_init.3
index f844543..1bd6f45 100644
--- a/docs/libcurl/curl_global_init.3
+++ b/docs/libcurl/curl_global_init.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_init 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_global_init 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_global_init - Global libcurl initialisation
@@ -40,13 +40,13 @@
 
 The flags option is a bit pattern that tells libcurl exactly what features to
 init, as described below. Set the desired bits by ORing the values together.
-In normal operation, you must specify CURL_GLOBAL_ALL.  Don't use any other
-value unless you are familiar with it and mean to control internal operations of
-libcurl.
+In normal operation, you must specify CURL_GLOBAL_ALL.  Do not use any other
+value unless you are familiar with it and mean to control internal operations
+of libcurl.
 
 \fBThis function is not thread safe.\fP You must not call it when any other
 thread in the program (i.e. a thread sharing the same memory) is running.
-This doesn't just mean no other thread that is using libcurl.  Because
+This does not just mean no other thread that is using libcurl.  Because
 \fIcurl_global_init(3)\fP calls functions of other libraries that are
 similarly thread unsafe, it could conflict with any other thread that uses
 these other libraries.
@@ -93,6 +93,16 @@
 Before 7.69.0: when this flag is set, curl will acknowledge EINTR condition
 when connecting or when waiting for data.  Otherwise, curl waits until full
 timeout elapses. (Added in 7.30.0)
+.SH EXAMPLE
+.nf
+ curl_global_init(CURL_GLOBAL_DEFAULT);
+
+ /* use libcurl, then before exiting... */
+
+ curl_global_cleanup();
+.fi
+.SH AVAILABILITY
+Added in 7.8
 .SH RETURN VALUE
 If this function returns non-zero, something went wrong and you cannot use the
 other curl functions.
diff --git a/docs/libcurl/curl_global_init_mem.3 b/docs/libcurl/curl_global_init_mem.3
index 4f39a64..ffa93e7 100644
--- a/docs/libcurl/curl_global_init_mem.3
+++ b/docs/libcurl/curl_global_init_mem.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_init_mem 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_global_init_mem 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_global_init_mem - Global libcurl initialisation with memory callbacks
@@ -57,11 +57,20 @@
 .RE
 This function is otherwise the same as \fIcurl_global_init(3)\fP, please refer
 to that man page for documentation.
-.SH "CAUTION"
+.SH CAUTION
 Manipulating these gives considerable powers to the application to severely
 screw things up for libcurl. Take care!
+.SH EXAMPLE
+.nf
+ curl_global_init_mem(CURL_GLOBAL_DEFAULT, curl_malloc_cb,
+                      curl_free_cb, curl_realloc_cb,
+                      curl_strdup_cb, curl_calloc_cb);
+.fi
 .SH AVAILABILITY
 Added in 7.12.0
+.SH RETURN VALUE
+CURLE_OK (0) means everything was ok, non-zero means an error occurred as
+\fI<curl/curl.h>\fP defines - see \fIlibcurl-errors(3)\fP.
 .SH "SEE ALSO"
 .BR curl_global_init "(3), "
 .BR curl_global_cleanup "(3), "
diff --git a/docs/libcurl/curl_global_sslset.3 b/docs/libcurl/curl_global_sslset.3
index ab172d3..f03e660 100644
--- a/docs/libcurl/curl_global_sslset.3
+++ b/docs/libcurl/curl_global_sslset.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_global_sslset 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_global_sslset 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_global_sslset - Select SSL backend to use with libcurl
@@ -82,8 +82,20 @@
 
 \fBThis function is not thread safe.\fP You must not call it when any other
 thread in the program (i.e. a thread sharing the same memory) is running.
-This doesn't just mean no other thread that is using libcurl.
+This does not just mean no other thread that is using libcurl.
+.SH EXAMPLE
+.nf
+  /* choose a specific backend */
+  curl_global_sslset(CURLSSLBACKEND_WOLFSSL, NULL, NULL);
 
+  /* list the available ones */
+  const curl_ssl_backend **list;
+  curl_global_sslset((curl_sslbackend)-1, NULL, &list);
+
+  for(i = 0; list[i]; i++)
+    printf("SSL backend #%d: '%s' (ID: %d)\\n",
+           i, list[i]->name, list[i]->id);
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.56.0. Before this version, there was no
 support for choosing SSL backends at runtime.
@@ -91,7 +103,8 @@
 If this function returns CURLSSLSET_OK, the backend was successfully selected.
 
 If the chosen backend is unknown (or support for the chosen backend has not
-been compiled into libcurl), the function returns \fICURLSSLSET_UNKNOWN_BACKEND\fP.
+been compiled into libcurl), the function returns
+\fICURLSSLSET_UNKNOWN_BACKEND\fP.
 
 If the backend had been configured previously, or if \fIcurl_global_init(3)\fP
 has already been called, the function returns \fICURLSSLSET_TOO_LATE\fP.
diff --git a/docs/libcurl/curl_mime_addpart.3 b/docs/libcurl/curl_mime_addpart.3
index 5b080d0..d7d0a64 100644
--- a/docs/libcurl/curl_mime_addpart.3
+++ b/docs/libcurl/curl_mime_addpart.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_addpart 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_addpart 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_addpart - append a new empty part to a mime structure
@@ -35,10 +35,6 @@
 
 \fImime\fP is the handle of the mime structure in which the new part must be
 appended.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-A mime part structure handle, or NULL upon failure.
 .SH EXAMPLE
 .nf
  curl_mime *mime;
@@ -54,6 +50,10 @@
  curl_mime_data(part, "This is the field data", CURL_ZERO_TERMINATED);
  curl_mime_name(part, "data");
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+A mime part structure handle, or NULL upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_init "(3),"
 .BR curl_mime_name "(3),"
diff --git a/docs/libcurl/curl_mime_data.3 b/docs/libcurl/curl_mime_data.3
index de9241e..fc8677c 100644
--- a/docs/libcurl/curl_mime_data.3
+++ b/docs/libcurl/curl_mime_data.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_data 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_data 3 "November 01, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_data - set a mime part's body data from memory
@@ -43,12 +43,8 @@
 is retained. It is possible to unassign part's contents by setting
 \fIdata\fP to NULL.
 
-Setting very large data is memory consuming: one might consider using
+Setting large data is memory consuming: one might consider using
 \fIcurl_mime_data_cb(3)\fP in such a case.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure.
 .SH EXAMPLE
 .nf
  curl_mime *mime;
@@ -63,6 +59,10 @@
  /* add data to the part  */
  curl_mime_data(part, "raw contents to send", CURL_ZERO_TERMINATED);
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_data_cb "(3),"
diff --git a/docs/libcurl/curl_mime_data_cb.3 b/docs/libcurl/curl_mime_data_cb.3
index b0cd3aa..ab9060d 100644
--- a/docs/libcurl/curl_mime_data_cb.3
+++ b/docs/libcurl/curl_mime_data_cb.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_data_cb 3 "July 13, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_data_cb 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_data_cb - set a callback-based data source for a mime part's body
@@ -70,9 +70,9 @@
 cause it to stop the current transfer.
 
 If you stop the current transfer by returning 0 "pre-maturely" (i.e. before the
-server expected it, like when you've said you will upload N bytes and you
+server expected it, like when you have said you will upload N bytes and you
 upload less than N bytes), you may experience that the server "hangs" waiting
-for the rest of the data that won't come.
+for the rest of the data that will not come.
 
 The read callback may return \fICURL_READFUNC_ABORT\fP to stop the current
 operation immediately, resulting in a \fICURLE_ABORTED_BY_CALLBACK\fP error
@@ -97,11 +97,6 @@
 the pointed item to be shared between the original and the copied handle.
 In particular, special attention should be given to the \fIfreefunc\fP
 procedure code since it will be called twice with the same argument.
-
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure.
 .SH EXAMPLE
 Sending a huge data string will cause the same amount of memory to be
 allocated: to avoid overhead resources consumption, one might want to use a
@@ -161,6 +156,10 @@
  curl_mime_data_cb(part, hugectl.size, read_callback, seek_callback, NULL,
                    &hugectl);
 
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_data "(3),"
diff --git a/docs/libcurl/curl_mime_encoder.3 b/docs/libcurl/curl_mime_encoder.3
index 9a2b1c8..2ff1e8e 100644
--- a/docs/libcurl/curl_mime_encoder.3
+++ b/docs/libcurl/curl_mime_encoder.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_encoder 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_encoder 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_encoder - set a mime part's encoder and content transfer encoding
@@ -42,7 +42,7 @@
 retained.
 
 Upon multipart rendering, the part's content is encoded according to the
-pertaining scheme and a corresponding \fIContent-Transfer-Encoding"\fP header
+pertaining scheme and a corresponding \fI"Content-Transfer-Encoding"\fP header
 is added to the part.
 
 Supported encoding schemes are:
@@ -71,10 +71,6 @@
 Encoding should not be applied to multiparts, thus the use of this
 function on a part with content set with \fIcurl_mime_subparts\fP() is
 strongly discouraged.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure.
 .SH EXAMPLE
 .nf
  curl_mime *mime;
@@ -92,6 +88,10 @@
  /* encode file data in base64 for transfer */
  curl_mime_encoder(part, "base64");
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_headers "(3),"
diff --git a/docs/libcurl/curl_mime_filedata.3 b/docs/libcurl/curl_mime_filedata.3
index 512ebd7..d73d18a 100644
--- a/docs/libcurl/curl_mime_filedata.3
+++ b/docs/libcurl/curl_mime_filedata.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_filedata 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_filedata 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_filedata - set a mime part's body data from a file contents
@@ -54,13 +54,6 @@
 
 Setting a part's contents twice is valid: only the value set by the last call
 is retained.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure. CURLE_READ_ERROR is only an
-indication that the file is not yet readable: it can be safely ignored at
-this time, but the file must be made readable before the pertaining
-easy handle is performed.
 .SH EXAMPLE
 .nf
  curl_mime *mime;
@@ -78,6 +71,13 @@
  /* set name */
  curl_mime_name(part, "data");
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure. CURLE_READ_ERROR is only an
+indication that the file is not yet readable: it can be safely ignored at
+this time, but the file must be made readable before the pertaining
+easy handle is performed.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_data "(3),"
diff --git a/docs/libcurl/curl_mime_filename.3 b/docs/libcurl/curl_mime_filename.3
index 17160e5..bfee067 100644
--- a/docs/libcurl/curl_mime_filename.3
+++ b/docs/libcurl/curl_mime_filename.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_filename 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_filename 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_filename - set a mime part's remote file name
@@ -43,10 +43,6 @@
 The remote file name string is copied into the part, thus the associated
 storage may safely be released or reused after call. Setting a part's file
 name twice is valid: only the value set by the last call is retained.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure.
 .SH EXAMPLE
 .nf
  curl_mime *mime;
@@ -67,6 +63,10 @@
  /* set name */
  curl_mime_name(part, "data");
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_filedata "(3),"
diff --git a/docs/libcurl/curl_mime_free.3 b/docs/libcurl/curl_mime_free.3
index 0468403..b858e1e 100644
--- a/docs/libcurl/curl_mime_free.3
+++ b/docs/libcurl/curl_mime_free.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_free 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_free 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_free - free a previously built mime structure
@@ -43,6 +43,16 @@
 
 Passing in a NULL pointer in \fImime\fP will make this function return
 immediately with no action.
+.SH EXAMPLE
+.nf
+  /* Build the mime message. */
+  mime = curl_mime_init(curl);
+
+  /* ... */
+
+  /* Free multipart message. */
+  curl_mime_free(mime);
+.fi
 .SH AVAILABILITY
 As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
 .SH RETURN VALUE
diff --git a/docs/libcurl/curl_mime_headers.3 b/docs/libcurl/curl_mime_headers.3
index 9c0c4d8..895218f 100644
--- a/docs/libcurl/curl_mime_headers.3
+++ b/docs/libcurl/curl_mime_headers.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_headers 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_headers 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_headers - set a mime part's custom headers
@@ -43,10 +43,6 @@
 
 Setting a part's custom headers list twice is valid: only the value set by
 the last call is retained.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure.
 .SH EXAMPLE
 .nf
  struct curl_slist *headers = NULL;
@@ -62,5 +58,9 @@
  /* set name */
  curl_mime_name(part, "numbers");
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3)"
diff --git a/docs/libcurl/curl_mime_init.3 b/docs/libcurl/curl_mime_init.3
index 3531e4a..59c351d 100644
--- a/docs/libcurl/curl_mime_init.3
+++ b/docs/libcurl/curl_mime_init.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,15 +19,16 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_init 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_init 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_init - create a mime handle
 .SH SYNOPSIS
-.B #include <curl/curl.h>
-.sp
-.BI "curl_mime * curl_mime_init(CURL * " easy_handle ");"
-.ad
+.nf
+#include <curl/curl.h>
+
+curl_mime *curl_mime_init(CURL *easy_handle);
+.fi
 .SH DESCRIPTION
 \fIcurl_mime_init(3)\fP creates a handle to a new empty mime structure
 intended to be used with \fIeasy_handle\fP. This mime structure can be
@@ -37,14 +38,8 @@
 
 Using a mime handle is the recommended way to post an HTTP form, format and
 send a multi-part e-mail with SMTP or upload such an e-mail to an IMAP server.
-
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-A mime struct handle, or NULL upon failure.
 .SH EXAMPLE
 .nf
-
  CURL *easy = curl_easy_init();
  curl_mime *mime;
  curl_mimepart *part;
@@ -63,7 +58,10 @@
  /* Clean-up. */
  curl_easy_cleanup(easy);
  curl_mime_free(mime);
-
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+A mime struct handle, or NULL upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_free "(3),"
diff --git a/docs/libcurl/curl_mime_name.3 b/docs/libcurl/curl_mime_name.3
index d61cc00..9ead5c7 100644
--- a/docs/libcurl/curl_mime_name.3
+++ b/docs/libcurl/curl_mime_name.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_name 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_name 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_name - set a mime part's name
@@ -40,10 +40,6 @@
 safely be released or reused after call. Setting a part's name twice is valid:
 only the value set by the last call is retained. It is possible to "unname" a
 part by setting \fIname\fP to NULL.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure.
 .SH EXAMPLE
 .nf
  curl_mime *mime;
@@ -58,6 +54,10 @@
  /* give the part a name */
  curl_mime_name(part, "shoe_size");
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_data "(3),"
diff --git a/docs/libcurl/curl_mime_subparts.3 b/docs/libcurl/curl_mime_subparts.3
index 9a1b8c3..2e5a295 100644
--- a/docs/libcurl/curl_mime_subparts.3
+++ b/docs/libcurl/curl_mime_subparts.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_subparts 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_subparts 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_subparts - set subparts of a multipart mime part
@@ -43,12 +43,32 @@
 Setting a part's contents twice is valid: only the value set by the last call
 is retained. It is possible to unassign previous part's contents by setting
 \fIsubparts\fP to NULL.
+.SH EXAMPLE
+.nf
+ /* The inline part is an alternative proposing the html and the text
+    versions of the e-mail. */
+ alt = curl_mime_init(curl);
+
+ /* HTML message. */
+ part = curl_mime_addpart(alt);
+ curl_mime_data(part, inline_html, CURL_ZERO_TERMINATED);
+ curl_mime_type(part, "text/html");
+
+ /* Text message. */
+ part = curl_mime_addpart(alt);
+ curl_mime_data(part, inline_text, CURL_ZERO_TERMINATED);
+
+ /* Create the inline part. */
+ part = curl_mime_addpart(mime);
+ curl_mime_subparts(part, alt);
+ curl_mime_type(part, "multipart/alternative");
+ slist = curl_slist_append(NULL, "Content-Disposition: inline");
+ curl_mime_headers(part, slist, 1);
+.fi
 .SH AVAILABILITY
 As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
 .SH RETURN VALUE
 CURLE_OK or a CURL error code upon failure.
-.SH EXAMPLE
-TODO
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_init "(3)"
diff --git a/docs/libcurl/curl_mime_type.3 b/docs/libcurl/curl_mime_type.3
index 7958acd..84d9fd3 100644
--- a/docs/libcurl/curl_mime_type.3
+++ b/docs/libcurl/curl_mime_type.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_mime_type 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_mime_type 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_mime_type - set a mime part's content type
@@ -54,10 +54,6 @@
 - For a multipart part, multipart/mixed.
 .br
 - text/plain in other cases.
-.SH AVAILABILITY
-As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
-.SH RETURN VALUE
-CURLE_OK or a CURL error code upon failure.
 .SH EXAMPLE
 .nf
  curl_mime *mime;
@@ -78,6 +74,10 @@
  /* set name */
  curl_mime_name(part, "image");
 .fi
+.SH AVAILABILITY
+As long as at least one of HTTP, SMTP or IMAP is enabled. Added in 7.56.0.
+.SH RETURN VALUE
+CURLE_OK or a CURL error code upon failure.
 .SH "SEE ALSO"
 .BR curl_mime_addpart "(3),"
 .BR curl_mime_name "(3),"
diff --git a/docs/libcurl/curl_mprintf.3 b/docs/libcurl/curl_mprintf.3
index d795e14..063d084 100644
--- a/docs/libcurl/curl_mprintf.3
+++ b/docs/libcurl/curl_mprintf.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_printf 3 "July 07, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_printf 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_maprintf, curl_mfprintf, curl_mprintf, curl_msnprintf, curl_msprintf
@@ -240,6 +240,11 @@
 .TP
 .B %
 A '%' is written. No argument is converted.
+.SH EXAMPLE
+.nf
+  mprintf("My name is %s\\n", name);
+  mprintf("Pi is almost %f\\n", 25/8);
+.fi
 .SH AVAILABILITY
 These functions will be removed from the public libcurl API in the future. Do
 not use them in new programs or projects.
diff --git a/docs/libcurl/curl_multi_add_handle.3 b/docs/libcurl/curl_multi_add_handle.3
index 589b955..9c0a7cd 100644
--- a/docs/libcurl/curl_multi_add_handle.3
+++ b/docs/libcurl/curl_multi_add_handle.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_add_handle 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_add_handle 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_add_handle - add an easy handle to a multi session
@@ -48,7 +48,7 @@
 connection re-use.
 
 If you have \fICURLMOPT_TIMERFUNCTION(3)\fP set in the multi handle (and you
-really should if you're working event-based with
+really should if you are working event-based with
 \fIcurl_multi_socket_action(3)\fP and friends), that callback will be called
 from within this function to ask for an updated timer so that your main event
 loop will get the activity on this handle to get started.
@@ -65,6 +65,17 @@
 2 - \fIcurl_easy_cleanup(3)\fP
 
 3 - \fIcurl_multi_cleanup(3)\fP
+.SH EXAMPLE
+.nf
+  /* init a multi stack */
+  multi_handle = curl_multi_init();
+
+  /* add individual transfers */
+  curl_multi_add_handle(multi_handle, http_handle);
+  curl_multi_add_handle(multi_handle, http_handle2);
+.fi
+.SH AVAILABILITY
+ADded in 7.9.6
 .SH RETURN VALUE
 CURLMcode type, general libcurl multi interface error code.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/curl_multi_assign.3 b/docs/libcurl/curl_multi_assign.3
index 67b18ad..7e8c190 100644
--- a/docs/libcurl/curl_multi_assign.3
+++ b/docs/libcurl/curl_multi_assign.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_assign 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_assign 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_assign \- set data to associate with an internal socket
@@ -36,7 +36,7 @@
 When set, the \fIsockptr\fP pointer will be passed to all future socket
 callbacks for the specific \fIsockfd\fP socket.
 
-If the given \fIsockfd\fP isn't already in use by libcurl, this function will
+If the given \fIsockfd\fP is not already in use by libcurl, this function will
 return an error.
 
 libcurl only keeps one single pointer associated with a socket, so calling
@@ -47,9 +47,16 @@
 something that just about every application that uses this API will need and
 then libcurl can just as well do it since it already has an internal hash
 table lookup for this.
-.SH "RETURN VALUE"
+.SH EXAMPLE
+.nf
+ /* make our struct pointer associated with socket fd */
+ mc = curl_multi_assign(multi_handle, fd, ourstructp);
+.fi
+.SH AVAILABILITY
+Added in 7.15.5
+.SH RETURN VALUE
 The standard CURLMcode for multi interface error codes.
-.SH "TYPICAL USAGE"
+.SH TYPICAL USAGE
 In a typical application you allocate a struct or at least use some kind of
 semi-dynamic data for each socket that we must wait for action on when using
 the \fIcurl_multi_socket_action(3)\fP approach.
@@ -57,8 +64,6 @@
 When our socket-callback gets called by libcurl and we get to know about yet
 another socket to wait for, we can use \fIcurl_multi_assign(3)\fP to point out
 the particular data so that when we get updates about this same socket again,
-we don't have to find the struct associated with this socket by ourselves.
-.SH AVAILABILITY
-This function was added in libcurl 7.15.5.
+we do not have to find the struct associated with this socket by ourselves.
 .SH "SEE ALSO"
 .BR curl_multi_setopt "(3), " curl_multi_socket_action "(3) "
diff --git a/docs/libcurl/curl_multi_cleanup.3 b/docs/libcurl/curl_multi_cleanup.3
index 0d4eb36..9bd0604 100644
--- a/docs/libcurl/curl_multi_cleanup.3
+++ b/docs/libcurl/curl_multi_cleanup.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_cleanup 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_cleanup 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_cleanup - close down a multi session
@@ -44,6 +44,15 @@
 
 Passing in a NULL pointer in \fImulti_handle\fP will make this function return
 CURLM_BAD_HANDLE immediately with no other action.
+.SH EXAMPLE
+.nf
+ /* when the multi transfer is done ... */
+
+ /* remove all easy handles, then: */
+ curl_multi_cleanup(multi_handle);
+.fi
+.SH AVAILABILITY
+Added in 7.9.6
 .SH RETURN VALUE
 CURLMcode type, general libcurl multi interface error code. On success,
 CURLM_OK is returned.
diff --git a/docs/libcurl/curl_multi_fdset.3 b/docs/libcurl/curl_multi_fdset.3
index ce3fb85..de7e375 100644
--- a/docs/libcurl/curl_multi_fdset.3
+++ b/docs/libcurl/curl_multi_fdset.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_fdset 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_fdset 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_fdset - extracts file descriptor information from a multi handle
@@ -37,7 +37,7 @@
 This function extracts file descriptor information from a given multi_handle.
 libcurl returns its fd_set sets. The application can use these to select() on,
 but be sure to FD_ZERO them before calling this function as
-\fIcurl_multi_fdset(3)\fP only adds its own descriptors, it doesn't zero or
+\fIcurl_multi_fdset(3)\fP only adds its own descriptors, it does not zero or
 otherwise remove any others. The \fIcurl_multi_perform(3)\fP function should
 be called as soon as one of them is ready to be read from or written to.
 
@@ -56,7 +56,7 @@
 If no file descriptors are set by libcurl, \fImax_fd\fP will contain -1 when
 this function returns. Otherwise it will contain the highest descriptor number
 libcurl set. When libcurl returns -1 in \fImax_fd\fP, it is because libcurl
-currently does something that isn't possible for your application to monitor
+currently does something that is not possible for your application to monitor
 with a socket and unfortunately you can then not know exactly when the current
 action is completed using select(). You then need to wait a while before you
 proceed and call \fIcurl_multi_perform(3)\fP anyway. How long to wait? Unless
@@ -67,7 +67,7 @@
 When doing select(), you should use \fIcurl_multi_timeout(3)\fP to figure out
 how long to wait for action. Call \fIcurl_multi_perform(3)\fP even if no
 activity has been seen on the fd_sets after the timeout expires as otherwise
-internal retries and timeouts may not work as you'd think and want.
+internal retries and timeouts may not work as you would think and want.
 
 If one of the sockets used by libcurl happens to be larger than what can be
 set in an fd_set, which on POSIX systems means that the file descriptor is
@@ -76,6 +76,21 @@
 cause crashes, or worse. The effect of NOT storing it will possibly save you
 from the crash, but will make your program NOT wait for sockets it should wait
 for...
+.SH EXAMPLE
+.nf
+ /* get file descriptors from the transfers */
+ mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
+
+ if(mc != CURLM_OK) {
+   fprintf(stderr, "curl_multi_fdset() failed, code %d.\\n", mc);
+   break;
+ }
+
+ /* wait for activity on one of the sockets */
+ rc = select(maxfd + 1, &fdread, &fdwrite, &fdexcep, &timeout);
+.fi
+.SH AVAILABILITY
+Added in 7.9.6
 .SH RETURN VALUE
 CURLMcode type, general libcurl multi interface error code. See
 \fIlibcurl-errors(3)\fP
diff --git a/docs/libcurl/curl_multi_info_read.3 b/docs/libcurl/curl_multi_info_read.3
index d2aeb4e..b99d4ab 100644
--- a/docs/libcurl/curl_multi_info_read.3
+++ b/docs/libcurl/curl_multi_info_read.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_info_read 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_info_read 3 "November 01, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_info_read - read multi stack informationals
@@ -49,10 +49,10 @@
 calling \fIcurl_multi_cleanup(3)\fP, \fIcurl_multi_remove_handle(3)\fP or
 \fIcurl_easy_cleanup(3)\fP.
 
-The 'CURLMsg' struct is very simple and only contains very basic information.
-If more involved information is wanted, the particular "easy handle" is
-present in that struct and can be used in subsequent regular
-\fIcurl_easy_getinfo(3)\fP calls (or similar):
+The 'CURLMsg' struct is simple and only contains basic information. If more
+involved information is wanted, the particular "easy handle" is present in
+that struct and can be used in subsequent regular \fIcurl_easy_getinfo(3)\fP
+calls (or similar):
 
 .nf
  struct CURLMsg {
@@ -87,7 +87,9 @@
   }
 } while(m);
 .fi
-.SH "RETURN VALUE"
+.SH AVAILABILITY
+Added in 7.9.6
+.SH RETURN VALUE
 A pointer to a filled-in struct, or NULL if it failed or ran out of
 structs. It also writes the number of messages left in the queue (after this
 read) in the integer the second argument points to.
diff --git a/docs/libcurl/curl_multi_init.3 b/docs/libcurl/curl_multi_init.3
index fda0510..1507f0b 100644
--- a/docs/libcurl/curl_multi_init.3
+++ b/docs/libcurl/curl_multi_init.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_init 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_init 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_init - create a multi handle
@@ -33,6 +33,17 @@
 multi-functions, sometimes referred to as a multi handle in some places in the
 documentation. This init call MUST have a corresponding call to
 \fIcurl_multi_cleanup(3)\fP when the operation is complete.
+.SH EXAMPLE
+.fi
+  /* init a multi stack */
+  multi_handle = curl_multi_init();
+
+  /* add individual transfers */
+  curl_multi_add_handle(multi_handle, http_handle);
+  curl_multi_add_handle(multi_handle, http_handle2);
+.nf
+.SH AVAILABILITY
+Added in 7.9.6
 .SH RETURN VALUE
 If this function returns NULL, something went wrong and you cannot use the
 other curl functions.
diff --git a/docs/libcurl/curl_multi_perform.3 b/docs/libcurl/curl_multi_perform.3
index 6365e03..fb1c57e 100644
--- a/docs/libcurl/curl_multi_perform.3
+++ b/docs/libcurl/curl_multi_perform.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_perform 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_perform 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_perform - reads/writes available data from each easy handle
@@ -29,8 +29,9 @@
 CURLMcode curl_multi_perform(CURLM *multi_handle, int *running_handles);
 .ad
 .SH DESCRIPTION
-This function handles transfers on all the added handles that need attention
-in an non-blocking fashion.
+This function performs transfers on all the added handles that need attention
+in an non-blocking fashion. The easy handles have previously been added to the
+multi handle with \fIcurl_multi_add_handle(3)\fP.
 
 When an application has found out there's data available for the multi_handle
 or a timeout has elapsed, the application should call this function to
@@ -38,94 +39,54 @@
 \fIcurl_multi_perform(3)\fP returns as soon as the reads/writes are done. This
 function does not require that there actually is any data available for
 reading or that data can be written, it can be called just in case. It will
-write the number of handles that still transfer data in the second argument's
+store the number of handles that still transfer data in the second argument's
 integer-pointer.
 
 If the amount of \fIrunning_handles\fP is changed from the previous call (or
-is less than the amount of easy handles you've added to the multi handle), you
+is less than the amount of easy handles you have added to the multi handle), you
 know that there is one or more transfers less "running". You can then call
 \fIcurl_multi_info_read(3)\fP to get information about each individual
 completed transfer, and that returned info includes CURLcode and more. If an
-added handle fails very quickly, it may never be counted as a running_handle.
-You could use \fIcurl_multi_info_read(3)\fP to track actual status of the
-added handles in that case.
+added handle fails quickly, it may never be counted as a running_handle.  You
+could use \fIcurl_multi_info_read(3)\fP to track actual status of the added
+handles in that case.
 
 When \fIrunning_handles\fP is set to zero (0) on the return of this function,
 there is no longer any transfers in progress.
 .SH EXAMPLE
 .nf
-#ifdef _WIN32
-#define SHORT_SLEEP Sleep(100)
-#else
-#define SHORT_SLEEP usleep(100000)
-#endif
+int still_running;
+do {
+  CURLMcode mc = curl_multi_perform(multi_handle, &still_running);
 
-fd_set fdread;
-fd_set fdwrite;
-fd_set fdexcep;
-int maxfd = -1;
+  if(!mc && still_running)
+    /* wait for activity, timeout or "nothing" */
+    mc = curl_multi_poll(multi_handle, NULL, 0, 1000, NULL);
 
-long curl_timeo;
-
-curl_multi_timeout(multi_handle, &curl_timeo);
-if(curl_timeo < 0)
-  curl_timeo = 1000;
-
-timeout.tv_sec = curl_timeo / 1000;
-timeout.tv_usec = (curl_timeo % 1000) * 1000;
-
-FD_ZERO(&fdread);
-FD_ZERO(&fdwrite);
-FD_ZERO(&fdexcep);
-
-/* get file descriptors from the transfers */
-mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
-
-if(maxfd == -1) {
-  SHORT_SLEEP;
-  rc = 0;
-}
-else
-  rc = select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
-
-switch(rc) {
-case -1:
-  /* select error */
-  break;
-case 0:
-default:
-  /* timeout or readable/writable sockets */
-  curl_multi_perform(multi_handle, &still_running);
-  break;
-}
+  if(mc) {
+    fprintf(stderr, "curl_multi_poll() failed, code %d.\\n", (int)mc);
+    break;
+  }
 
 /* if there are still transfers, loop! */
+} while(still_running);
 .fi
-.SH "RETURN VALUE"
+.SH AVAILABILITY
+Added in 7.9.6
+.SH RETURN VALUE
 CURLMcode type, general libcurl multi interface error code.
 
-Before version 7.20.0 (released on February 9 2010): If you receive \fICURLM_CALL_MULTI_PERFORM\fP, this
-basically means that you should call \fIcurl_multi_perform(3)\fP again, before
-you select() on more actions. You don't have to do it immediately, but the
-return code means that libcurl may have more data available to return or that
-there may be more data to send off before it is "satisfied". Do note that
-\fIcurl_multi_perform(3)\fP will return \fICURLM_CALL_MULTI_PERFORM\fP only
-when it wants to be called again \fBimmediately\fP. When things are fine and
-there is nothing immediate it wants done, it'll return \fICURLM_OK\fP and you
-need to wait for \&"action" and then call this function again.
-
-This function only returns errors etc regarding the whole multi stack.
-Problems still might have occurred on individual transfers even when this
-function returns \fICURLM_OK\fP. Use \fIcurl_multi_info_read(3)\fP to figure
-out how individual transfers did.
+This function returns errors regarding the whole multi stack. Problems on
+individual transfers may have occurred even when this function returns
+\fICURLM_OK\fP. Use \fIcurl_multi_info_read(3)\fP to figure out how individual
+transfers did.
 .SH "TYPICAL USAGE"
-Most applications will use \fIcurl_multi_fdset(3)\fP to get the multi_handle's
-file descriptors, and \fIcurl_multi_timeout(3)\fP to get a suitable timeout
-period, then it'll wait for action on the file descriptors using
-\fBselect(3)\fP. As soon as one or more file descriptor is ready,
-\fIcurl_multi_perform(3)\fP gets called.
+Most applications will use \fIcurl_multi_poll(3)\fP to make libcurl wait for
+activity on any of the ongoing transfers. As soon as one or more file
+descriptor has activity or the function times out, the application calls
+\fIcurl_multi_perform(3)\fP.
 .SH "SEE ALSO"
 .BR curl_multi_cleanup "(3), " curl_multi_init "(3), "
-.BR curl_multi_wait "(3), "
+.BR curl_multi_wait "(3), " curl_multi_add_handle "(3), "
 .BR curl_multi_fdset "(3), " curl_multi_info_read "(3), "
 .BR libcurl-errors "(3)"
diff --git a/docs/libcurl/curl_multi_poll.3 b/docs/libcurl/curl_multi_poll.3
index 5757de4..eba9967 100644
--- a/docs/libcurl/curl_multi_poll.3
+++ b/docs/libcurl/curl_multi_poll.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_poll 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_poll 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_poll - polls on all easy handles in a multi handle
@@ -108,11 +108,11 @@
 
 curl_multi_remove_handle(multi_handle, easy_handle);
 .fi
+.SH AVAILABILITY
+Added in 7.66.0.
 .SH RETURN VALUE
 CURLMcode type, general libcurl multi interface error code. See
 \fIlibcurl-errors(3)\fP
-.SH AVAILABILITY
-This function was added in libcurl 7.66.0.
 .SH "SEE ALSO"
 .BR curl_multi_fdset "(3), " curl_multi_perform "(3), "
 .BR curl_multi_wait "(3), " curl_multi_wakeup "(3)"
diff --git a/docs/libcurl/curl_multi_remove_handle.3 b/docs/libcurl/curl_multi_remove_handle.3
index 099b929..a618277 100644
--- a/docs/libcurl/curl_multi_remove_handle.3
+++ b/docs/libcurl/curl_multi_remove_handle.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_remove_handle 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_remove_handle 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_remove_handle - remove an easy handle from a multi session
@@ -41,6 +41,20 @@
 
 It is fine to remove a handle at any time during a transfer, just not from
 within any libcurl callback function.
+.SH EXAMPLE
+.nf
+/* when an easy handle has completed, remove it */
+msg = curl_multi_info_read(multi_handle, &queued);
+if(msg) {
+  if(msg->msg == CURLMSG_DONE) {
+    /* a transfer ended */
+    fprintf(stderr, "Transfer completed\\n");
+    curl_multi_remove_handle(multi_handle, msg->easy_handle);
+  }
+}
+.fi
+.SH AVAILABILITY
+Added in 7.9.6
 .SH RETURN VALUE
 CURLMcode type, general libcurl multi interface error code.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/curl_multi_setopt.3 b/docs/libcurl/curl_multi_setopt.3
index 51fe710..1191525 100644
--- a/docs/libcurl/curl_multi_setopt.3
+++ b/docs/libcurl/curl_multi_setopt.3
@@ -19,14 +19,14 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_setopt 3 "December 31, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_setopt 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_setopt \- set options for a curl multi handle
 .SH SYNOPSIS
 #include <curl/curl.h>
 
-CURLMcode curl_multi_setopt(CURLM * multi_handle, CURLMoption option, param);
+CURLMcode curl_multi_setopt(CURLM *multi_handle, CURLMoption option, param);
 .SH DESCRIPTION
 \fIcurl_multi_setopt(3)\fP is used to tell a libcurl multi handle how to
 behave. By using the appropriate options to \fIcurl_multi_setopt(3)\fP, you
@@ -70,12 +70,17 @@
 See \fICURLMOPT_TIMERDATA(3)\fP
 .IP CURLMOPT_MAX_CONCURRENT_STREAMS
 See \fICURLMOPT_MAX_CONCURRENT_STREAMS(3)\fP
-.SH RETURNS
+.SH EXAMPLE
+.fi
+  /* Limit the amount of simultaneous connections curl should allow: */
+  curl_multi_setopt(handle, CURLMOPT_MAXCONNECTS, (long)MAX_PARALLEL);
+.nf
+.SH AVAILABILITY
+Added in 7.15.4
+.SH RETURN VALUE
 The standard CURLMcode for multi interface error codes. Note that it returns a
 CURLM_UNKNOWN_OPTION if you try setting an option that this version of libcurl
-doesn't know of.
-.SH AVAILABILITY
-This function was added in libcurl 7.15.4.
+does not know of.
 .SH "SEE ALSO"
 .BR curl_multi_cleanup "(3), " curl_multi_init "(3), "
 .BR curl_multi_socket "(3), " curl_multi_info_read "(3)"
diff --git a/docs/libcurl/curl_multi_socket.3 b/docs/libcurl/curl_multi_socket.3
index 32416d1..e16bef2 100644
--- a/docs/libcurl/curl_multi_socket.3
+++ b/docs/libcurl/curl_multi_socket.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,14 +19,14 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_socket 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_socket 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_socket \- reads/writes available data
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
-CURLMcode curl_multi_socket(CURLM * multi_handle, curl_socket_t sockfd,
+CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t sockfd,
                             int *running_handles);
 
 CURLMcode curl_multi_socket_all(CURLM *multi_handle,
@@ -67,17 +67,14 @@
 Force libcurl to (re-)check all its internal sockets and transfers instead of
 just a single one by calling \fIcurl_multi_socket_all(3)\fP. Note that there
 should not be any reason to use this function!
-.SH "CALLBACK DETAILS"
-
+.SH CALLBACK
 The socket \fBcallback\fP function uses a prototype like this
 .nf
-
   int curl_socket_callback(CURL *easy,      /* easy handle */
                            curl_socket_t s, /* socket */
                            int action,      /* see values below */
                            void *userp,    /* private callback pointer */
                            void *socketp); /* private socket pointer */
-
 .fi
 The callback MUST return 0.
 
@@ -110,22 +107,6 @@
 
 The \fIuserp\fP argument is a private pointer you have previously set with
 \fIcurl_multi_setopt(3)\fP and the \fICURLMOPT_SOCKETDATA(3)\fP option.
-.SH "RETURN VALUE"
-CURLMcode type, general libcurl multi interface error code.
-
-Legacy: If you receive \fICURLM_CALL_MULTI_PERFORM\fP, this basically means
-that you should call \fIcurl_multi_socket(3)\fP again, before you wait for
-more actions on libcurl's sockets. You don't have to do it immediately, but
-the return code means that libcurl may have more data available to return or
-that there may be more data to send off before it is "satisfied".
-
-In modern libcurls, \fICURLM_CALL_MULTI_PERFORM\fP or
-\fICURLM_CALL_MULTI_SOCKET\fP should not be returned and no application needs
-to care about them.
-
-NOTE that the return code is for the whole multi stack. Problems still might have
-occurred on individual transfers even when one of these functions
-return OK.
 .SH "TYPICAL USAGE"
 1. Create a multi handle
 
@@ -148,12 +129,24 @@
 call \fIcurl_multi_socket_action(3)\fP with \fICURL_SOCKET_TIMEOUT\fP
 
 8. Go back to step 6.
+.SH EXAMPLE
+.nf
+/* the event-library gets told when there activity on the socket 'fd',
+   which we translate to a call to curl_multi_socket_action() */
+int running;
+rc = curl_multi_socket(multi_handle, fd, &running);
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.15.4, and is deemed stable since
 7.16.0.
 
 \fIcurl_multi_socket(3)\fP is deprecated, use
 \fIcurl_multi_socket_action(3)\fP instead!
+.SH "RETURN VALUE"
+CURLMcode type, general libcurl multi interface error code.
+
+The return code is for the whole multi stack. Problems still might have
+occurred on individual transfers even when one of these functions return OK.
 .SH "SEE ALSO"
 .BR curl_multi_cleanup "(3), " curl_multi_init "(3), "
 .BR curl_multi_fdset "(3), " curl_multi_info_read "(3), "
diff --git a/docs/libcurl/curl_multi_socket_action.3 b/docs/libcurl/curl_multi_socket_action.3
index 61d9979..d621684 100644
--- a/docs/libcurl/curl_multi_socket_action.3
+++ b/docs/libcurl/curl_multi_socket_action.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_socket_action 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_socket_action 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_socket_action \- reads/writes available data given an action
@@ -27,7 +27,7 @@
 .nf
 #include <curl/curl.h>
 
-CURLMcode curl_multi_socket_action(CURLM * multi_handle,
+CURLMcode curl_multi_socket_action(CURLM *multi_handle,
                                    curl_socket_t sockfd,
                                    int ev_bitmask,
                                    int *running_handles);
@@ -89,8 +89,19 @@
 8, When activity is detected, call curl_multi_socket_action() for the
 socket(s) that got action. If no activity is detected and the timeout expires,
 call \fIcurl_multi_socket_action(3)\fP with \fICURL_SOCKET_TIMEOUT\fP.
+.SH EXAMPLE
+.nf
+/* the event-library gets told when there activity on the socket 'fd',
+   which we translate to a call to curl_multi_socket_action() */
+int running;
+rc = curl_multi_socket_action(multi_handle, fd, EVENT,
+                              &running);
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.15.4, and is deemed stable since 7.16.0.
+.SH RETURN VALUE
+CURLMcode type, general libcurl multi interface error code. See
+\fIlibcurl-errors(3)\fP
 .SH "SEE ALSO"
 .BR curl_multi_cleanup "(3), " curl_multi_init "(3), "
 .BR curl_multi_fdset "(3), " curl_multi_info_read "(3), "
diff --git a/docs/libcurl/curl_multi_strerror.3 b/docs/libcurl/curl_multi_strerror.3
index ce7b38b..7c6c8f2 100644
--- a/docs/libcurl/curl_multi_strerror.3
+++ b/docs/libcurl/curl_multi_strerror.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_strerror 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_strerror 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_strerror - return string describing error code
@@ -30,9 +30,18 @@
 .SH DESCRIPTION
 The curl_multi_strerror() function returns a string describing the CURLMcode
 error code passed in the argument \fIerrornum\fP.
+.SH EXAMPLE
+.nf
+int still_running;
+
+CURLMcode mc = curl_multi_perform(multi_handle, &still_running);
+if(mc)
+  printf("error: %s\\n", curl_multi_strerror(mc));
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.12.0
 .SH RETURN VALUE
 A pointer to a null-terminated string.
 .SH "SEE ALSO"
-.BR libcurl-errors "(3), " curl_easy_strerror "(3), " curl_share_strerror "(3)"
+.BR libcurl-errors "(3), " curl_easy_strerror "(3), "
+.BR curl_share_strerror "(3), " curl_url_strerror "(3)"
diff --git a/docs/libcurl/curl_multi_timeout.3 b/docs/libcurl/curl_multi_timeout.3
index 3e69f17..ef7090f 100644
--- a/docs/libcurl/curl_multi_timeout.3
+++ b/docs/libcurl/curl_multi_timeout.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_timeout 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_timeout 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_timeout \- how long to wait for action before proceeding
@@ -35,13 +35,12 @@
 
 Proceeding means either doing the socket-style timeout action: call the
 \fIcurl_multi_socket_action(3)\fP function with the \fBsockfd\fP argument set
-to CURL_SOCKET_TIMEOUT, or call \fIcurl_multi_perform(3)\fP if you're using
+to CURL_SOCKET_TIMEOUT, or call \fIcurl_multi_perform(3)\fP if you are using
 the simpler and older multi interface approach.
 
 The timeout value returned in the long \fBtimeout\fP points to, is in number
-of milliseconds at this very moment. If 0, it means you should proceed
-immediately without waiting for anything. If it returns -1, there's no timeout
-at all set.
+of milliseconds at this moment. If 0, it means you should proceed immediately
+without waiting for anything. If it returns -1, there's no timeout at all set.
 
 An application that uses the multi_socket API SHOULD NOT use this function, but
 SHOULD instead use \fIcurl_multi_setopt(3)\fP and its
@@ -66,14 +65,14 @@
 /* wait for activities no longer than the set timeout */
 select(maxfd+1, &fdread, &fdwrite, &fdexcep, &timeout);
 .fi
-.SH "RETURN VALUE"
-The standard CURLMcode for multi interface error codes.
-.SH "TYPICAL USAGE"
+.SH TYPICAL USAGE
 Call \fIcurl_multi_timeout(3)\fP, then wait for action on the sockets. You
 figure out which sockets to wait for by calling \fIcurl_multi_fdset(3)\fP or
 by a previous call to \fIcurl_multi_socket(3)\fP.
 .SH AVAILABILITY
 This function was added in libcurl 7.15.4.
+.SH RETURN VALUE
+The standard CURLMcode for multi interface error codes.
 .SH "SEE ALSO"
 .BR curl_multi_fdset "(3), " curl_multi_info_read "(3), "
 .BR curl_multi_socket "(3), " curl_multi_setopt "(3) "
diff --git a/docs/libcurl/curl_multi_wait.3 b/docs/libcurl/curl_multi_wait.3
index 911d1e8..4e10c57 100644
--- a/docs/libcurl/curl_multi_wait.3
+++ b/docs/libcurl/curl_multi_wait.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_wait 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_wait 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_wait - polls on all easy handles in a multi handle
@@ -115,10 +115,10 @@
 
 curl_multi_remove_handle(multi_handle, easy_handle);
 .fi
+.SH AVAILABILITY
+This function was added in libcurl 7.28.0.
 .SH RETURN VALUE
 CURLMcode type, general libcurl multi interface error code. See
 \fIlibcurl-errors(3)\fP
-.SH AVAILABILITY
-This function was added in libcurl 7.28.0.
 .SH "SEE ALSO"
 .BR curl_multi_fdset "(3), " curl_multi_perform "(3)", curl_multi_poll "(3) ",
diff --git a/docs/libcurl/curl_multi_wakeup.3 b/docs/libcurl/curl_multi_wakeup.3
index ef04dcb..67508c6 100644
--- a/docs/libcurl/curl_multi_wakeup.3
+++ b/docs/libcurl/curl_multi_wakeup.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_multi_wakeup 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_multi_wakeup 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_multi_wakeup - wakes up a sleeping curl_multi_poll call
@@ -42,10 +42,6 @@
 operation.
 
 This function has no effect on \fIcurl_multi_wait(3)\fP calls.
-.SH RETURN VALUE
-CURLMcode type, general libcurl multi interface error code.
-.SH AVAILABILITY
-Added in 7.68.0
 .SH EXAMPLE
 .nf
 CURL *easy_handle;
@@ -83,5 +79,9 @@
 }
 
 .fi
+.SH AVAILABILITY
+Added in 7.68.0
+.SH RETURN VALUE
+CURLMcode type, general libcurl multi interface error code.
 .SH "SEE ALSO"
 .BR curl_multi_poll "(3), " curl_multi_wait "(3)"
diff --git a/docs/libcurl/curl_share_cleanup.3 b/docs/libcurl/curl_share_cleanup.3
index b4214d6..17e6860 100644
--- a/docs/libcurl/curl_share_cleanup.3
+++ b/docs/libcurl/curl_share_cleanup.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_cleanup 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_share_cleanup 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_share_cleanup - Clean up a shared object
@@ -34,6 +34,16 @@
 
 Passing in a NULL pointer in \fIshare_handle\fP will make this function return
 immediately with no action.
+.SH EXAMPLE
+.nf
+  CURLSHcode sh
+  share = curl_share_init();
+  sh = curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_CONNECT);
+  /* use the share, then ... */
+  curl_share_cleanup(share);
+.fi
+.SH AVAILABILITY
+Added in 7.10
 .SH RETURN VALUE
 CURLSHE_OK (zero) means that the option was set properly, non-zero means an
 error occurred as \fI<curl/curl.h>\fP defines. See the \fIlibcurl-errors.3\fP
diff --git a/docs/libcurl/curl_share_init.3 b/docs/libcurl/curl_share_init.3
index f20141a..e04bdd9 100644
--- a/docs/libcurl/curl_share_init.3
+++ b/docs/libcurl/curl_share_init.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_init 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_share_init 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_share_init - Create a shared object
@@ -37,6 +37,16 @@
 This \fIshare handle\fP is what you pass to curl using the
 \fICURLOPT_SHARE(3)\fP option with \fIcurl_easy_setopt(3)\fP, to make that
 specific curl handle use the data in this share.
+.SH EXAMPLE
+.nf
+  CURLSHcode sh
+  share = curl_share_init();
+  sh = curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_CONNECT);
+  if(sh)
+    printf("Error: %s\\n", curl_share_strerror(sh));
+.fi
+.SH AVAILABILITY
+Added in 7.10
 .SH RETURN VALUE
 If this function returns NULL, something went wrong (out of memory, etc.)
 and therefore the share object was not created.
diff --git a/docs/libcurl/curl_share_setopt.3 b/docs/libcurl/curl_share_setopt.3
index 6d26460..7a621a4 100644
--- a/docs/libcurl/curl_share_setopt.3
+++ b/docs/libcurl/curl_share_setopt.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_setopt 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_share_setopt 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_share_setopt - Set options for a shared object
@@ -107,6 +107,16 @@
 .IP CURLSHOPT_USERDATA
 The \fIparameter\fP allows you to specify a pointer to data that will be passed
 to the lock_function and unlock_function each time it is called.
+.SH EXAMPLE
+.nf
+  CURLSHcode sh
+  share = curl_share_init();
+  sh = curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_CONNECT);
+  if(sh)
+    printf("Error: %s\\n", curl_share_strerror(sh));
+.fi
+.SH AVAILABILITY
+Added in 7.10
 .SH RETURN VALUE
 CURLSHE_OK (zero) means that the option was set properly, non-zero means an
 error occurred as \fI<curl/curl.h>\fP defines. See the \fIlibcurl-errors.3\fP
diff --git a/docs/libcurl/curl_share_strerror.3 b/docs/libcurl/curl_share_strerror.3
index e003ae1..c4c93c9 100644
--- a/docs/libcurl/curl_share_strerror.3
+++ b/docs/libcurl/curl_share_strerror.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_share_strerror 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_share_strerror 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_share_strerror - return string describing error code
@@ -30,9 +30,18 @@
 .SH DESCRIPTION
 The curl_share_strerror() function returns a string describing the CURLSHcode
 error code passed in the argument \fIerrornum\fP.
+.SH EXAMPLE
+.nf
+  CURLSHcode sh
+  share = curl_share_init();
+  sh = curl_share_setopt(share, CURLSHOPT_SHARE, CURL_LOCK_DATA_CONNECT);
+  if(sh)
+    printf("Error: %s\\n", curl_share_strerror(sh));
+.fi
 .SH AVAILABILITY
 This function was added in libcurl 7.12.0
 .SH RETURN VALUE
 A pointer to a null-terminated string.
 .SH "SEE ALSO"
-.BR libcurl-errors "(3), " curl_multi_strerror "(3), " curl_easy_strerror "(3)"
+.BR libcurl-errors "(3), " curl_multi_strerror "(3), "
+.BR curl_easy_strerror "(3), " curl_url_strerror "(3)"
diff --git a/docs/libcurl/curl_slist_append.3 b/docs/libcurl/curl_slist_append.3
index 3d3bef2..3caa152 100644
--- a/docs/libcurl/curl_slist_append.3
+++ b/docs/libcurl/curl_slist_append.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_slist_append 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_slist_append 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_slist_append - add a string to an slist
@@ -38,11 +38,6 @@
 
 The list should be freed again (after usage) with
 \fIcurl_slist_free_all(3)\fP.
-.SH RETURN VALUE
-A null pointer is returned if anything went wrong, otherwise the new list
-pointer is returned. To avoid overwriting an existing non-empty list on
-failure, the new list should be returned to a temporary variable which can
-be tested for NULL before updating the original list pointer.
 .SH EXAMPLE
 .nf
 CURL *handle;
@@ -69,5 +64,12 @@
 
 curl_slist_free_all(slist); /* free the list again */
 .fi
+.SH AVAILABILITY
+Always
+.SH RETURN VALUE
+A null pointer is returned if anything went wrong, otherwise the new list
+pointer is returned. To avoid overwriting an existing non-empty list on
+failure, the new list should be returned to a temporary variable which can
+be tested for NULL before updating the original list pointer.
 .SH "SEE ALSO"
 .BR curl_slist_free_all "(3), "
diff --git a/docs/libcurl/curl_slist_free_all.3 b/docs/libcurl/curl_slist_free_all.3
index 9aed31d..dfdafb8 100644
--- a/docs/libcurl/curl_slist_free_all.3
+++ b/docs/libcurl/curl_slist_free_all.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_slist_free_all 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_slist_free_all 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_slist_free_all - free an entire curl_slist list
@@ -34,8 +34,6 @@
 
 Passing in a NULL pointer in \fIlist\fP will make this function return
 immediately with no action.
-.SH RETURN VALUE
-Nothing.
 .SH EXAMPLE
 .nf
 CURL *handle;
@@ -52,5 +50,9 @@
 
 curl_slist_free_all(slist); /* free the list again */
 .fi
+.SH AVAILABILITY
+Always
+.SH RETURN VALUE
+Nothing.
 .SH "SEE ALSO"
 .BR curl_slist_append "(3), "
diff --git a/docs/libcurl/curl_strequal.3 b/docs/libcurl/curl_strequal.3
index 0684af2..8bfb1b6 100644
--- a/docs/libcurl/curl_strequal.3
+++ b/docs/libcurl/curl_strequal.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_strequal 3 "November 05, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_strequal 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_strequal, curl_strnequal - case insensitive string comparisons
@@ -42,11 +42,18 @@
 These functions are provided by libcurl to enable applications to compare
 strings in a truly portable manner. There are no standard portable case
 insensitive string comparison functions. These two work on all platforms.
+.SH EXAMPLE
+.nf
+if(curl_strequal(name, input))
+  printf("Name and input matches\\n");
+if(curl_strnequal(name, input, 5))
+  printf("Name and input matches in the 5 first bytes\\n");
+.fi
 .SH AVAILABILITY
 These functions will be removed from the public libcurl API in a near
 future. They will instead be made "available" by source code access only, and
 then as curlx_strequal() and curlx_strenqual().
 .SH RETURN VALUE
-Non-zero if the strings are identical. Zero if they're not.
+Non-zero if the strings are identical. Zero if they are not.
 .SH "SEE ALSO"
 .BR strcmp "(3), " strcasecmp "(3)"
diff --git a/docs/libcurl/curl_unescape.3 b/docs/libcurl/curl_unescape.3
index 192ff3b..29b80ca 100644
--- a/docs/libcurl/curl_unescape.3
+++ b/docs/libcurl/curl_unescape.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_unescape 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_unescape 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_unescape - URL decodes the given string
@@ -39,7 +39,21 @@
 If the 'length' argument is set to 0, curl_unescape() will use strlen() on the
 input 'url' string to find out the size.
 
-You must \fIcurl_free(3)\fP the returned string when you're done with it.
+You must \fIcurl_free(3)\fP the returned string when you are done with it.
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  int decodelen;
+  char *decoded = curl_unescape("%63%75%72%6c", 12, &decodelen);
+  if(decoded) {
+    /* do not assume printf() works on the decoded data! */
+    printf("Decoded: ");
+    /* ... */
+    curl_free(decoded);
+  }
+}
+.fi
 .SH AVAILABILITY
 Since 7.15.4, \fIcurl_easy_unescape(3)\fP should be used. This function will
 be removed in a future release.
diff --git a/docs/libcurl/curl_url.3 b/docs/libcurl/curl_url.3
index b53cfcd..c285760 100644
--- a/docs/libcurl/curl_url.3
+++ b/docs/libcurl/curl_url.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_url 3 "March 27, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_url 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_url - returns a new CURLU handle
@@ -30,8 +30,6 @@
 .SH DESCRIPTION
 This function will allocates and returns a pointer to a fresh CURLU handle, to
 be used for further use of the URL API.
-.SH RETURN VALUE
-Returns a \fBCURLU *\fP if successful, or NULL if out of memory.
 .SH EXAMPLE
 .nf
   CURLUcode rc;
@@ -48,7 +46,9 @@
   }
 .fi
 .SH AVAILABILITY
-Added in curl 7.62.0
+Added in 7.62.0
+.SH RETURN VALUE
+Returns a \fBCURLU *\fP if successful, or NULL if out of memory.
 .SH "SEE ALSO"
 .BR curl_url_cleanup "(3), " curl_url_get "(3), " curl_url_set "(3), "
-.BR curl_url_dup "(3), " CURLOPT_CURLU "(3), "
+.BR curl_url_dup "(3), " curl_url_strerror "(3), " CURLOPT_CURLU "(3)"
diff --git a/docs/libcurl/curl_url_cleanup.3 b/docs/libcurl/curl_url_cleanup.3
index 4e8085b..94ff559 100644
--- a/docs/libcurl/curl_url_cleanup.3
+++ b/docs/libcurl/curl_url_cleanup.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_url_cleanup 3 "March 27, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_url_cleanup 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_url_cleanup - free a CURLU handle
@@ -30,8 +30,6 @@
 .fi
 .SH DESCRIPTION
 Frees all the resources associated with the given CURLU handle!
-.SH RETURN VALUE
-none
 .SH EXAMPLE
 .nf
   CURLU *url = curl_url();
@@ -39,7 +37,9 @@
   curl_url_cleanup(url);
 .fi
 .SH AVAILABILITY
-Added in curl 7.62.0
+Added in 7.62.0
+.SH RETURN VALUE
+none
 .SH "SEE ALSO"
 .BR curl_url_dup "(3), " curl_url "(3), " curl_url_set "(3), "
 .BR curl_url_get "(3), " CURLOPT_CURLU "(3), "
diff --git a/docs/libcurl/curl_url_dup.3 b/docs/libcurl/curl_url_dup.3
index f851edd..2afccfe 100644
--- a/docs/libcurl/curl_url_dup.3
+++ b/docs/libcurl/curl_url_dup.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_url_dup 3 "March 27, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_url_dup 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_url_dup - duplicate a CURLU handle
@@ -32,8 +32,6 @@
 Duplicates a given CURLU \fIinhandle\fP and all its contents and returns a
 pointer to a new CURLU handle. The new handle also needs to be freed with
 \fIcurl_url_cleanup(3)\fP.
-.SH RETURN VALUE
-Returns a new handle or NULL if out of memory.
 .SH EXAMPLE
 .nf
   CURLUcode rc;
@@ -47,7 +45,9 @@
   curl_url_cleanup(url);
 .fi
 .SH AVAILABILITY
-Added in curl 7.62.0
+Added in 7.62.0
+.SH RETURN VALUE
+Returns a new handle or NULL if out of memory.
 .SH "SEE ALSO"
 .BR curl_url_cleanup "(3), " curl_url "(3), " curl_url_set "(3), "
 .BR curl_url_get "(3), " CURLOPT_CURLU "(3), "
diff --git a/docs/libcurl/curl_url_get.3 b/docs/libcurl/curl_url_get.3
index a93400b..34f0b49 100644
--- a/docs/libcurl/curl_url_get.3
+++ b/docs/libcurl/curl_url_get.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_url_get 3 "March 27, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_url_get 3 "October 25, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_url_get - extract a part from a URL
@@ -57,7 +57,7 @@
 .IP CURLU_URLDECODE
 Asks \fIcurl_url_get(3)\fP to URL decode the contents before returning it. It
 will not attempt to decode the scheme, the port number or the full URL.
-

 The query component will also get plus-to-space conversion as a bonus when
 this bit is set.
 
@@ -67,6 +67,14 @@
 
 If there's any byte values lower than 32 in the decoded string, the get
 operation will return an error instead.
+.IP CURLU_URLENCODE
+If set, will make \fIcurl_url_get(3)\fP URL encode the host name part when a
+full URL is retrieved. If not set (default), libcurl returns the URL with the
+host name "raw" to support IDN names to appear as-is. IDN host names are
+typically using non-ASCII bytes that otherwise will be percent-encoded.
+
+Note that even when not asking for URL encoding, the '%' (byte 37) will be URL
+encoded to make sure the host name remains valid.
 .SH PARTS
 .IP CURLUPART_URL
 When asked to return the full URL, \fIcurl_url_get(3)\fP will return a
@@ -85,15 +93,19 @@
 .IP CURLUPART_PORT
 Port cannot be URL decoded on get.
 .IP CURLUPART_PATH
+\fIpart\fP will be '/' even if no path is supplied in the URL.
 .IP CURLUPART_QUERY
+The initial question mark that denotes the beginning of the query part is
+a delimiter only.
+It is not part of the query contents.
+
+
+A not-present query will lead \fIpart\fP to be set to NULL.
+A zero-length query will lead \fIpart\fP to be set to a zero-length string.
+
 The query part will also get pluses converted to space when asked to URL
 decode on get with the CURLU_URLDECODE bit.
 .IP CURLUPART_FRAGMENT
-.SH RETURN VALUE
-Returns a CURLUcode error value, which is CURLUE_OK (0) if everything went
-fine.
-
-If this function returns an error, no URL part is returned.
 .SH EXAMPLE
 .nf
   CURLUcode rc;
@@ -110,7 +122,13 @@
   }
 .fi
 .SH AVAILABILITY
-Added in curl 7.62.0. CURLUPART_ZONEID was added in 7.65.0.
+Added in 7.62.0. CURLUPART_ZONEID was added in 7.65.0.
+.SH RETURN VALUE
+Returns a CURLUcode error value, which is CURLUE_OK (0) if everything went
+fine.  See the \fIlibcurl-errors(3)\fP man page for the full list with
+descriptions.
+
+If this function returns an error, no URL part is returned.
 .SH "SEE ALSO"
 .BR curl_url_cleanup "(3), " curl_url "(3), " curl_url_set "(3), "
-.BR curl_url_dup "(3), " CURLOPT_CURLU "(3), "
+.BR curl_url_dup "(3), " curl_url_strerror "(3), " CURLOPT_CURLU "(3)"
diff --git a/docs/libcurl/curl_url_set.3 b/docs/libcurl/curl_url_set.3
index 7328025..3c63913 100644
--- a/docs/libcurl/curl_url_set.3
+++ b/docs/libcurl/curl_url_set.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_url_set 3 "May 31, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_url_set 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_url_set - set a URL part
@@ -81,7 +81,7 @@
 encode on set with the CURLU_URLENCODE bit.
 
 If used together with the \fICURLU_APPENDQUERY\fP bit, the provided part will
-be appended on the end of the existing query - and if the previous part didn't
+be appended on the end of the existing query - and if the previous part did not
 end with an ampersand (&), an ampersand will be inserted before the new
 appended part.
 
@@ -123,7 +123,7 @@
 permits empty authority sections, similar to how file scheme is handled.
 .IP CURLU_PATH_AS_IS
 When set for \fBCURLUPART_URL\fP, this makes libcurl skip the normalization of
-the path. That's the procedure where curl otherwise removes sequences of
+the path. That is the procedure where curl otherwise removes sequences of
 dot-slash and dot-dot etc. The same option used for transfers is called
 \fICURLOPT_PATH_AS_IS(3)\fP.
 .IP CURLU_ALLOW_SPACE
@@ -135,15 +135,6 @@
 space before stored. This affects how the URL will be constructed when
 \fIcurl_url_get(3)\fP is subsequently used to extract the full URL or
 individual parts.
-.SH RETURN VALUE
-Returns a CURLUcode error value, which is CURLUE_OK (0) if everything went
-fine.
-
-A URL string passed on to \fIcurl_url_set(3)\fP for the \fBCURLUPART_URL\fP
-part, must be shorter than 8000000 bytes otherwise it returns
-\fBCURLUE_MALFORMED_INPUT\fP (added in 7.65.0).
-
-If this function returns an error, no URL part is set.
 .SH EXAMPLE
 .nf
   CURLUcode rc;
@@ -157,7 +148,17 @@
   curl_url_cleanup(url);
 .fi
 .SH AVAILABILITY
-Added in curl 7.62.0. CURLUPART_ZONEID was added in 7.65.0.
+Added in 7.62.0. CURLUPART_ZONEID was added in 7.65.0.
+.SH RETURN VALUE
+Returns a CURLUcode error value, which is CURLUE_OK (0) if everything went
+fine.  See the \fIlibcurl-errors(3)\fP man page for the full list with
+descriptions.
+
+A URL string passed on to \fIcurl_url_set(3)\fP for the \fBCURLUPART_URL\fP
+part, must be shorter than 8000000 bytes otherwise it returns
+\fBCURLUE_MALFORMED_INPUT\fP (added in 7.65.0).
+
+If this function returns an error, no URL part is set.
 .SH "SEE ALSO"
 .BR curl_url_cleanup "(3), " curl_url "(3), " curl_url_get "(3), "
-.BR curl_url_dup "(3), " CURLOPT_CURLU "(3), "
+.BR curl_url_dup "(3), " curl_url_strerror "(3), " CURLOPT_CURLU "(3)"
diff --git a/docs/libcurl/curl_url_strerror.3 b/docs/libcurl/curl_url_strerror.3
new file mode 100644
index 0000000..4e5ce71
--- /dev/null
+++ b/docs/libcurl/curl_url_strerror.3
@@ -0,0 +1,50 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" *
+.\" * This software is licensed as described in the file COPYING, which
+.\" * you should have received as part of this distribution. The terms
+.\" * are also available at https://curl.se/docs/copyright.html.
+.\" *
+.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+.\" * copies of the Software, and permit persons to whom the Software is
+.\" * furnished to do so, under the terms of the COPYING file.
+.\" *
+.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+.\" * KIND, either express or implied.
+.\" *
+.\" **************************************************************************
+.TH curl_url_strerror 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
+
+.SH NAME
+curl_url_strerror - return string describing error code
+.SH SYNOPSIS
+.nf
+.B #include <curl/curl.h>
+.BI "const char *curl_url_strerror(CURLUcode " errornum ");"
+.SH DESCRIPTION
+The curl_url_strerror() function returns a string describing the CURLUcode
+error code passed in the argument \fIerrornum\fP.
+.SH EXAMPLE
+.nf
+  CURLUcode rc;
+  CURLU *url = curl_url();
+  rc = curl_url_set(url, CURLUPART_URL, "https://example.com", 0);
+  if(rc)
+    printf("URL error: %s\\n", curl_url_strerror(rc));
+  curl_url_cleanup(url);
+.fi
+
+.SH AVAILABILITY
+Added in 7.80.0
+.SH RETURN VALUE
+A pointer to a null-terminated string.
+.SH "SEE ALSO"
+.BR libcurl-errors "(3), " curl_url_get "(3), " curl_url_set "(3), "
+.BR curl_easy_strerror "(3), " curl_multi_strerror "(3), "
+.BR curl_share_strerror "(3)"
diff --git a/docs/libcurl/curl_version.3 b/docs/libcurl/curl_version.3
index d738f38..df84773 100644
--- a/docs/libcurl/curl_version.3
+++ b/docs/libcurl/curl_version.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH curl_version 3 "November 04, 2020" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_version 3 "November 04, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_version - returns the libcurl version string
@@ -33,6 +33,13 @@
 its important components (like OpenSSL version).
 
 We recommend using \fIcurl_version_info(3)\fP instead!
+.SH EXAMPLE
+.nf
+printf("libcurl version %s\\n", curl_version());
+.fi
+
+.SH AVAILABILITY
+Always
 .SH RETURN VALUE
 A pointer to a null-terminated string. The string resides in a statically
 allocated buffer and must not be freed by the caller.
diff --git a/docs/libcurl/curl_version_info.3 b/docs/libcurl/curl_version_info.3
index 080de24..9e6dc60 100644
--- a/docs/libcurl/curl_version_info.3
+++ b/docs/libcurl/curl_version_info.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH curl_version_info 3 "April 03, 2021" "libcurl 7.78.0" "libcurl Manual"
+.TH curl_version_info 3 "October 31, 2021" "libcurl 7.80.0" "libcurl Manual"
 
 .SH NAME
 curl_version_info - returns run-time libcurl version info
@@ -108,7 +108,7 @@
 .fi
 
 \fIage\fP describes what the age of this struct is. The number depends on how
-new the libcurl you're using is. You are however guaranteed to get a struct
+new the libcurl you are using is. You are however guaranteed to get a struct
 that you have a matching struct for in the header, as you tell libcurl your
 "age" with the input argument.
 
@@ -192,7 +192,7 @@
 (Added in 7.22.0)
 .IP CURL_VERSION_PSL
 libcurl was built with support for Mozilla's Public Suffix List. This makes
-libcurl ignore cookies with a domain that's on the list.
+libcurl ignore cookies with a domain that is on the list.
 (Added in 7.47.0)
 .IP CURL_VERSION_SPNEGO
 libcurl was built with support for SPNEGO authentication (Simple and Protected
@@ -224,6 +224,16 @@
 names protocols that libcurl supports (using lowercase letters). The protocol
 names are the same as would be used in URLs. The array is terminated by a NULL
 entry.
+.SH EXAMPLE
+.nf
+curl_version_info_data *ver = curl_version_info(CURLVERSION_NOW);
+printf("libcurl version %u.%u.%u\\n",
+       (ver->version_num >> 16) & 0xff,
+       (ver->version_num >> 8) & 0xff,
+       ver->version_num & 0xff,
+.fi
+.SH AVAILABILITY
+Added in 7.10
 .SH RETURN VALUE
 A pointer to a curl_version_info_data struct.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/libcurl-easy.3 b/docs/libcurl/libcurl-easy.3
index fd3edae..7be3544 100644
--- a/docs/libcurl/libcurl-easy.3
+++ b/docs/libcurl/libcurl-easy.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl 3 "November 04, 2020" "libcurl 7.78.0" "libcurl easy interface"
+.TH libcurl 3 "November 08, 2021" "libcurl 7.80.0" "libcurl easy interface"
 
 .SH NAME
 libcurl-easy \- easy interface overview
@@ -29,16 +29,17 @@
 interface functions you use. Use \fIcurl_easy_init(3)\fP to get the handle.
 
 You continue by setting all the options you want in the upcoming transfer, the
-most important among them is the URL itself (you can't transfer anything
+most important among them is the URL itself (you cannot transfer anything
 without a specified URL as you may have figured out yourself). You might want
 to set some callbacks as well that will be called from the library when data
 is available etc. \fIcurl_easy_setopt(3)\fP is used for all this.
 
-\fICURLOPT_URL(3)\fP is only option you really must set, as otherwise there
-can be no transfer. Another commonly used option is \fICURLOPT_VERBOSE(3)\fP
-that will help you see what libcurl is doing under the hood, very useful when
-debugging for example. The \fIcurl_easy_setopt(3)\fP man page has a full index
-of the over 200 available options.
+\fICURLOPT_URL(3)\fP is the only option you really must set, as otherwise
+there can be no transfer. Another commonly used option is
+\fICURLOPT_VERBOSE(3)\fP that will help you see what libcurl is doing under
+the hood, which is useful when debugging for example. The
+\fIcurl_easy_setopt(3)\fP man page has a full index of the almost 300
+available options.
 
 If you at any point would like to blank all previously set options for a
 single easy handle, you can call \fIcurl_easy_reset(3)\fP and you can also
@@ -46,12 +47,12 @@
 \fIcurl_easy_duphandle(3)\fP.
 
 When all is setup, you tell libcurl to perform the transfer using
-\fIcurl_easy_perform(3)\fP.  It will then do the entire operation and won't
+\fIcurl_easy_perform(3)\fP.  It will then do the entire operation and will not
 return until it is done (successfully or not).
 
 After the transfer has been made, you can set new options and make another
-transfer, or if you're done, cleanup the session by calling
-\fIcurl_easy_cleanup(3)\fP. If you want persistent connections, you don't
+transfer, or if you are done, cleanup the session by calling
+\fIcurl_easy_cleanup(3)\fP. If you want persistent connections, you do not
 cleanup immediately, but instead run ahead and perform other transfers using
 the same easy handle.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/libcurl-env.3 b/docs/libcurl/libcurl-env.3
index 4419584..f858055 100644
--- a/docs/libcurl/libcurl-env.3
+++ b/docs/libcurl/libcurl-env.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl-env 3 "March 27, 2021" "libcurl 7.78.0" "libcurl environment variables"
+.TH libcurl-env 3 "October 31, 2021" "libcurl 7.80.0" "libcurl environment variables"
 
 .SH NAME
 libcurl-env \- environment variables libcurl understands
@@ -46,7 +46,7 @@
 .IP CURL_SSL_BACKEND
 When libcurl is built to support multiple SSL backends, it will select a
 specific backend at first use. If no selection is done by the program using
-libcurl, this variable's selection will be used. Setting a name that isn't a
+libcurl, this variable's selection will be used. Setting a name that is not a
 built-in alternative will make libcurl stay with the default.
 
 SSL backend names (case-insensitive): bearssl, gnutls, gskit, mbedtls,
@@ -56,7 +56,7 @@
 checked as the primary way to find the "current" home directory in which
 the .netrc file is likely to exist.
 .IP LOGNAME
-User name to use when invoking the ntlm-wb tool, if NTLMUSER wasn't set.
+User name to use when invoking the ntlm-wb tool, if NTLMUSER was not set.
 .IP NO_PROXY
 This has the same functionality as the \fICURLOPT_NOPROXY(3)\fP option: it
 gives libcurl a comma-separated list of host name patterns for which libcurl
@@ -73,7 +73,7 @@
 used to find the directory for NSS PKI database instead of the built-in.
 .IP USER
 User name to use when invoking the ntlm-wb tool, if NTLMUSER and LOGNAME
-weren't set.
+were not set.
 .SH "Debug Variables"
 There's a set of variables only recognized and used if libcurl was built
 "debug enabled", which should never be true for a library used in production.
diff --git a/docs/libcurl/libcurl-errors.3 b/docs/libcurl/libcurl-errors.3
index 8070af3..b684e8c 100644
--- a/docs/libcurl/libcurl-errors.3
+++ b/docs/libcurl/libcurl-errors.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-errors 3 "June 02, 2021" "libcurl 7.78.0" "libcurl errors"
+.TH libcurl-errors 3 "October 31, 2021" "libcurl 7.80.0" "libcurl errors"
 
 .SH NAME
 libcurl-errors \- error codes in libcurl
@@ -40,13 +40,13 @@
 All fine. Proceed as usual.
 .IP "CURLE_UNSUPPORTED_PROTOCOL (1)"
 The URL you passed to libcurl used a protocol that this libcurl does not
-support. The support might be a compile-time option that you didn't use, it
+support. The support might be a compile-time option that you did not use, it
 can be a misspelled protocol string or just a protocol libcurl has no code
 for.
 .IP "CURLE_FAILED_INIT (2)"
-Very early initialization code failed. This is likely to be an internal error
-or problem, or a resource problem where something fundamental couldn't get
-done at init time.
+Early initialization code failed. This is likely to be an internal error or
+problem, or a resource problem where something fundamental could not get done
+at init time.
 .IP "CURLE_URL_MALFORMAT (3)"
 The URL was not properly formatted.
 .IP "CURLE_NOT_BUILT_IN (4)"
@@ -61,7 +61,7 @@
 .IP "CURLE_COULDNT_CONNECT (7)"
 Failed to connect() to host or proxy.
 .IP "CURLE_WEIRD_SERVER_REPLY (8)"
-The server sent data libcurl couldn't parse. This error code was known as as
+The server sent data libcurl could not parse. This error code was known as as
 \fICURLE_FTP_WEIRD_SERVER_REPLY\fP before 7.51.0.
 .IP "CURLE_REMOTE_ACCESS_DENIED (9)"
 We were denied access to the resource given in the URL.  For FTP, this occurs
@@ -91,7 +91,7 @@
 .IP "CURLE_PARTIAL_FILE (18)"
 A file transfer was shorter or larger than expected. This happens when the
 server first reports an expected transfer size, and then delivers data that
-doesn't match the previously given size.
+does not match the previously given size.
 .IP "CURLE_FTP_COULDNT_RETR_FILE (19)"
 This was either a weird reply to a 'RETR' command or a zero byte transfer
 complete.
@@ -118,7 +118,7 @@
 Operation timeout. The specified time-out period was reached according to the
 conditions.
 .IP "CURLE_FTP_PORT_FAILED (30)"
-The FTP PORT command returned error. This mostly happens when you haven't
+The FTP PORT command returned error. This mostly happens when you have not
 specified a good enough address for libcurl to use. See
 \fICURLOPT_FTPPORT(3)\fP.
 .IP "CURLE_FTP_COULDNT_USE_REST (31)"
@@ -137,8 +137,8 @@
 The download could not be resumed because the specified offset was out of the
 file boundary.
 .IP "CURLE_FILE_COULDNT_READ_FILE (37)"
-A file given with FILE:// couldn't be opened. Most likely because the file
-path doesn't identify an existing file. Did you check file permissions?
+A file given with FILE:// could not be opened. Most likely because the file
+path does not identify an existing file. Did you check file permissions?
 .IP "CURLE_LDAP_CANNOT_BIND (38)"
 LDAP cannot bind. LDAP bind operation failed.
 .IP "CURLE_LDAP_SEARCH_FAILED (39)"
@@ -168,7 +168,7 @@
 Nothing was returned from the server, and under the circumstances, getting
 nothing is considered an error.
 .IP "CURLE_SSL_ENGINE_NOTFOUND (53)"
-The specified crypto engine wasn't found.
+The specified crypto engine was not found.
 .IP "CURLE_SSL_ENGINE_SETFAILED (54)"
 Failed setting the selected SSL crypto engine as default!
 .IP "CURLE_SEND_ERROR (55)"
@@ -286,7 +286,7 @@
 .IP "CURLM_BAD_HANDLE (1)"
 The passed-in handle is not a valid CURLM handle.
 .IP "CURLM_BAD_EASY_HANDLE (2)"
-An easy handle was not good/valid. It could mean that it isn't an easy handle
+An easy handle was not good/valid. It could mean that it is not an easy handle
 at all, or possibly that the handle already is in use by this or another multi
 handle.
 .IP "CURLM_OUT_OF_MEMORY (3)"
@@ -323,19 +323,21 @@
 Not enough memory was available.
 (Added in 7.12.0)
 .IP "CURLSHE_NOT_BUILT_IN (5)"
-The requested sharing could not be done because the library you use don't have
+The requested sharing could not be done because the library you use do not have
 that particular feature enabled. (Added in 7.23.0)
 .SH "CURLUcode"
+The URL interface will return a CURLUcode to indicate when an error has
+occurred.  Also consider \fIcurl_url_strerror(3)\fP.
 .IP "CURLUE_BAD_HANDLE (1)"
-An argument that should be a CURLU pointer was passed in as a NULL.
+An invalid CURLU pointer was passed as argument.
 .IP "CURLUE_BAD_PARTPOINTER (2)"
-A NULL pointer was passed to the 'part' argument of \fIcurl_url_get(3)\fP.
+An invalid 'part' argument was passed as argument.
 .IP "CURLUE_MALFORMED_INPUT (3)"
 A malformed input was passed to a URL API function.
 .IP "CURLUE_BAD_PORT_NUMBER (4)"
 The port number was not a decimal number between 0 and 65535.
 .IP "CURLUE_UNSUPPORTED_SCHEME (5)"
-This libcurl build doesn't support the given URL scheme.
+This libcurl build does not support the given URL scheme.
 .IP "CURLUE_URLDECODE (6)"
 URL decode error, most likely because of rubbish in the input.
 .IP "CURLUE_OUT_OF_MEMORY (7)"
@@ -362,5 +364,6 @@
 There is no fragment part in the URL.
 .SH "SEE ALSO"
 .BR curl_easy_strerror "(3), " curl_multi_strerror "(3), "
-.BR curl_share_strerror "(3), " CURLOPT_ERRORBUFFER "(3), "
-.BR CURLOPT_VERBOSE "(3), " CURLOPT_DEBUGFUNCTION "(3) "
+.BR curl_share_strerror "(3), " curl_url_strerror "(3), "
+.BR CURLOPT_ERRORBUFFER "(3), " CURLOPT_VERBOSE "(3), "
+.BR CURLOPT_DEBUGFUNCTION "(3)"
diff --git a/docs/libcurl/libcurl-multi.3 b/docs/libcurl/libcurl-multi.3
index 0ac2cf0..9735884 100644
--- a/docs/libcurl/libcurl-multi.3
+++ b/docs/libcurl/libcurl-multi.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-multi 3 "November 04, 2020" "libcurl 7.78.0" "libcurl multi interface"
+.TH libcurl-multi 3 "October 31, 2021" "libcurl 7.80.0" "libcurl multi interface"
 
 .SH NAME
 libcurl-multi \- how to use the multi interface
@@ -33,7 +33,7 @@
 
 All functions in the multi interface are prefixed with curl_multi.
 .SH "OBJECTIVES"
-The multi interface offers several abilities that the easy interface doesn't.
+The multi interface offers several abilities that the easy interface does not.
 They are mainly:
 
 1. Enable a "pull" interface. The application that uses libcurl decides where
@@ -78,8 +78,8 @@
 Remember that one of the main ideas with this interface is to let your
 application drive. You drive the transfers by invoking
 \fIcurl_multi_perform(3)\fP. libcurl will then transfer data if there is
-anything available to transfer. It'll use the callbacks and everything else
-you have setup in the individual easy handles. It'll transfer data on all
+anything available to transfer. it will use the callbacks and everything else
+you have setup in the individual easy handles. it will transfer data on all
 current transfers in the multi stack that are ready to transfer anything. It
 may be all, it may be none. When there's nothing more to do for now, it
 returns back to the calling application.
@@ -98,7 +98,7 @@
 \fIcurl_multi_perform(3)\fP stores the number of still running transfers in
 one of its input arguments, and by reading that you can figure out when all
 the transfers in the multi handles are done. 'done' does not mean
-successful. One or more of the transfers may have failed. 
+successful. One or more of the transfers may have failed.
 
 To get information about completed transfers, to figure out success or not and
 similar, \fIcurl_multi_info_read(3)\fP should be called. It can return a
@@ -158,11 +158,11 @@
 better scale upward and beyond thousands of simultaneous transfers without
 losing performance.
 
-When you've added your initial set of handles, you call
+When you have added your initial set of handles, you call
 \fIcurl_multi_socket_action(3)\fP with CURL_SOCKET_TIMEOUT set in the sockfd
-argument, and you'll get callbacks call that sets you up and you then continue
+argument, and you will get callbacks call that sets you up and you then continue
 to call \fIcurl_multi_socket_action(3)\fP accordingly when you get activity on
-the sockets you've been asked to wait on, or if the timeout timer expires.
+the sockets you have been asked to wait on, or if the timeout timer expires.
 
 You can poll \fIcurl_multi_info_read(3)\fP to see if any transfer has
 completed, as it then has a message saying so.
diff --git a/docs/libcurl/libcurl-security.3 b/docs/libcurl/libcurl-security.3
index ef65206..feeb149 100644
--- a/docs/libcurl/libcurl-security.3
+++ b/docs/libcurl/libcurl-security.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-security 3 "June 17, 2021" "libcurl 7.78.0" "libcurl security"
+.TH libcurl-security 3 "October 31, 2021" "libcurl 7.80.0" "libcurl security"
 
 .SH NAME
 libcurl-security \- security considerations when using libcurl
@@ -43,9 +43,9 @@
 should be aware.
 .SH "Command Lines"
 If you use a command line tool (such as curl) that uses libcurl, and you give
-options to the tool on the command line those options can very likely get read
-by other users of your system when they use 'ps' or other tools to list
-currently running processes.
+options to the tool on the command line those options can get read by other
+users of your system when they use 'ps' or other tools to list currently
+running processes.
 
 To avoid these problems, never feed sensitive things to programs using command
 line options. Write them to a protected file and use the \-K option to avoid
@@ -61,22 +61,22 @@
 For applications that enable .netrc use, a user who manage to set the right
 URL might then be possible to pass on passwords.
 
-To avoid these problems, don't use .netrc files and never store passwords in
+To avoid these problems, do not use .netrc files and never store passwords in
 plain text anywhere.
 .SH "Clear Text Passwords"
 Many of the protocols libcurl supports send name and password unencrypted as
-clear text (HTTP Basic authentication, FTP, TELNET etc). It is very easy for
-anyone on your network or a network nearby yours to just fire up a network
-analyzer tool and eavesdrop on your passwords. Don't let the fact that HTTP
-Basic uses base64 encoded passwords fool you. They may not look readable at a
-first glance, but they very easily "deciphered" by anyone within seconds.
+clear text (HTTP Basic authentication, FTP, TELNET etc). It is easy for anyone
+on your network or a network nearby yours to just fire up a network analyzer
+tool and eavesdrop on your passwords. do not let the fact that HTTP Basic uses
+base64 encoded passwords fool you. They may not look readable at a first
+glance, but they are easily "deciphered" by anyone within seconds.
 
 To avoid this problem, use an authentication mechanism or other protocol that
-doesn't let snoopers see your password: Digest, CRAM-MD5, Kerberos, SPNEGO or
+does not let snoopers see your password: Digest, CRAM-MD5, Kerberos, SPNEGO or
 NTLM authentication. Or even better: use authenticated protocols that protect
 the entire connection and everything sent over it.
 .SH "Un-authenticated Connections"
-Protocols that don't have any form of cryptographic authentication cannot
+Protocols that do not have any form of cryptographic authentication cannot
 with any certainty know that they communicate with the right remote server.
 
 If your application is using a fixed scheme or fixed host name, it is not safe
@@ -172,11 +172,11 @@
 .SH "IPv6 Addresses"
 libcurl will normally handle IPv6 addresses transparently and just as easily
 as IPv4 addresses. That means that a sanitizing function that filters out
-addresses like 127.0.0.1 isn't sufficient--the equivalent IPv6 addresses ::1,
+addresses like 127.0.0.1 is not sufficient--the equivalent IPv6 addresses ::1,
 ::, 0:00::0:1, ::127.0.0.1 and ::ffff:7f00:1 supplied somehow by an attacker
 would all bypass a naive filter and could allow access to undesired local
 resources.  IPv6 also has special address blocks like link-local and
-site-local that generally shouldn't be accessed by a server-side libcurl-using
+site-local that generally should not be accessed by a server-side libcurl-using
 application.  A poorly-configured firewall installed in a data center,
 organization or server may also be configured to limit IPv4 connections but
 leave IPv6 connections wide open.  In some cases, setting
@@ -235,14 +235,14 @@
 order to protect applications for inadvertent probes of for example internal
 networks etc. This resulted in CVE-2019-15601 and the associated security fix.
 
-However, we've since been made aware of the fact that the previous fix was far
+However, we have since been made aware of the fact that the previous fix was far
 from adequate as there are several other ways to accomplish more or less the
 same thing: accessing a remote host over the network instead of the local file
 system.
 
 The conclusion we have come to is that this is a weakness or feature in the
 Windows operating system itself, that we as an application cannot safely
-protect users against. It would just be a whack-a-mole race we don't want to
+protect users against. It would just be a whack-a-mole race we do not want to
 participate in. There are too many ways to do it and there's no knob we can
 use to turn off the practice.
 
@@ -252,7 +252,7 @@
 network. curl cannot protect you against this.
 .SH "What if the user can set the URL"
 Applications may find it tempting to let users set the URL that it can work
-on. That's probably fine, but opens up for mischief and trickery that you as
+on. That is probably fine, but opens up for mischief and trickery that you as
 an application author may want to address or take precautions against.
 
 If your curl-using script allow a custom URL do you also, perhaps
@@ -260,7 +260,7 @@
 if creative use of special characters are applied?
 
 If the user can set the URL, the user can also specify the scheme part to
-other protocols that you didn't intend for users to use and perhaps didn't
+other protocols that you did not intend for users to use and perhaps did not
 consider. curl supports over 20 different URL schemes. "http://" might be what
 you thought, "ftp://" or "imap://" might be what the user gives your
 application. Also, cross-protocol operations might be done by using a
@@ -316,8 +316,8 @@
 hard to avoid.
 .SH "Denial of Service"
 A malicious server could cause libcurl to effectively hang by sending data
-very slowly, or even no data at all but just keeping the TCP connection open.
-This could effectively result in a denial-of-service attack. The
+slowly, or even no data at all but just keeping the TCP connection open.  This
+could effectively result in a denial-of-service attack. The
 \fICURLOPT_TIMEOUT(3)\fP and/or \fICURLOPT_LOW_SPEED_LIMIT(3)\fP options can
 be used to mitigate against this.
 
@@ -371,7 +371,7 @@
 .SH "Setuid applications using libcurl"
 libcurl-using applications that set the 'setuid' bit to run with elevated or
 modified rights also implicitly give that extra power to libcurl and this
-should only be done after very careful considerations.
+should only be done after careful considerations.
 
 Giving setuid powers to the application means that libcurl can save files using
 those new rights (if for example the `SSLKEYLOGFILE` environment variable is
diff --git a/docs/libcurl/libcurl-share.3 b/docs/libcurl/libcurl-share.3
index eb7d16f..c0d67f4 100644
--- a/docs/libcurl/libcurl-share.3
+++ b/docs/libcurl/libcurl-share.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl-share 3 "November 05, 2020" "libcurl 7.78.0" "libcurl share interface"
+.TH libcurl-share 3 "October 31, 2021" "libcurl 7.80.0" "libcurl share interface"
 
 .SH NAME
 libcurl-share \- how to use the share interface
@@ -46,7 +46,7 @@
 \fIcurl_share_setopt(3)\fP.
 
 Since you can use this share from multiple threads, and libcurl has no
-internal thread synchronization, you must provide mutex callbacks if you're
+internal thread synchronization, you must provide mutex callbacks if you are
 using this multi-threaded. You set lock and unlock functions with
 \fIcurl_share_setopt(3)\fP too.
 
@@ -59,7 +59,7 @@
 \fICURLOPT_SHARE(3)\fP to NULL for that easy handle. To make a handle stop
 sharing a particular data, you can \fICURLSHOPT_UNSHARE\fP it.
 
-When you're done using the share, make sure that no easy handle is still using
+When you are done using the share, make sure that no easy handle is still using
 it, and call \fIcurl_share_cleanup(3)\fP on the handle.
 .SH "SEE ALSO"
 .BR curl_share_init "(3), " curl_share_setopt "(3), " curl_share_cleanup "(3)"
diff --git a/docs/libcurl/libcurl-symbols.3 b/docs/libcurl/libcurl-symbols.3
index 59888c2..014cab8 100644
--- a/docs/libcurl/libcurl-symbols.3
+++ b/docs/libcurl/libcurl-symbols.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl-symbols 3 "Jul 21, 2021" "libcurl 7.41.0" "libcurl symbols"
+.TH libcurl-symbols 3 "Nov 10, 2021" "libcurl 7.41.0" "libcurl symbols"
 .SH NAME
 libcurl-symbols \- libcurl symbol version information
 .SH "libcurl symbols"
@@ -394,11 +394,11 @@
 .IP CURLFORM_ARRAY_END
 Introduced in 7.9.1
 Deprecated since 7.9.5
-Last used in 7.9.5
+Last used in 7.9.6
 .IP CURLFORM_ARRAY_START
 Introduced in 7.9.1
 Deprecated since 7.9.5
-Last used in 7.9.5
+Last used in 7.9.6
 .IP CURLFORM_BUFFER
 Introduced in 7.9.8
 Deprecated since 7.56.0
@@ -836,7 +836,7 @@
 .IP CURLOPT_CLOSEFUNCTION
 Introduced in 7.7
 Deprecated since 7.11.1
-Last used in 7.11.1
+Last used in 7.15.5
 .IP CURLOPT_CLOSEPOLICY
 Introduced in 7.7
 Deprecated since 7.16.1
@@ -942,7 +942,7 @@
 .IP CURLOPT_FTPASCII
 Introduced in 7.1
 Deprecated since 7.11.1
-Last used in 7.11.1
+Last used in 7.15.5
 .IP CURLOPT_FTPLISTONLY
 Introduced in 7.1
 Deprecated since 7.16.4
@@ -1082,6 +1082,8 @@
 Introduced in 7.10.8
 .IP CURLOPT_MAXFILESIZE_LARGE
 Introduced in 7.11.0
+.IP CURLOPT_MAXLIFETIME_CONN
+Introduced in 7.80.0
 .IP CURLOPT_MAXREDIRS
 Introduced in 7.5
 .IP CURLOPT_MAX_RECV_SPEED_LARGE
@@ -1093,7 +1095,7 @@
 .IP CURLOPT_MUTE
 Introduced in 7.1
 Deprecated since 7.8
-Last used in 7.8
+Last used in 7.15.5
 .IP CURLOPT_NETRC
 Introduced in 7.1
 .IP CURLOPT_NETRC_FILE
@@ -1113,7 +1115,7 @@
 .IP CURLOPT_NOTHING
 Introduced in 7.1.1
 Deprecated since 7.11.1
-Last used in 7.11.1
+Last used in 7.11.0
 .IP CURLOPT_OPENSOCKETDATA
 Introduced in 7.17.1
 .IP CURLOPT_OPENSOCKETFUNCTION
@@ -1121,17 +1123,17 @@
 .IP CURLOPT_PASSWDDATA
 Introduced in 7.4.2
 Deprecated since 7.11.1
-Last used in 7.11.1
+Last used in 7.15.5
 .IP CURLOPT_PASSWDFUNCTION
 Introduced in 7.4.2
 Deprecated since 7.11.1
-Last used in 7.11.1
+Last used in 7.15.5
 .IP CURLOPT_PASSWORD
 Introduced in 7.19.1
 .IP CURLOPT_PASV_HOST
 Introduced in 7.12.1
 Deprecated since 7.16.0
-Last used in 7.16.0
+Last used in 7.15.5
 .IP CURLOPT_PATH_AS_IS
 Introduced in 7.42.0
 .IP CURLOPT_PINNEDPUBLICKEY
@@ -1157,6 +1159,10 @@
 Introduced in 7.19.1
 .IP CURLOPT_PREQUOTE
 Introduced in 7.9.5
+.IP CURLOPT_PREREQDATA
+Introduced in 7.80.0
+.IP CURLOPT_PREREQFUNCTION
+Introduced in 7.80.0
 .IP CURLOPT_PRE_PROXY
 Introduced in 7.52.0
 .IP CURLOPT_PRIVATE
@@ -1323,6 +1329,8 @@
 Introduced in 7.56.0
 .IP CURLOPT_SSH_HOST_PUBLIC_KEY_MD5
 Introduced in 7.17.1
+.IP CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256
+Introduced in 7.80.0
 .IP CURLOPT_SSH_KEYDATA
 Introduced in 7.19.6
 .IP CURLOPT_SSH_KEYFUNCTION
@@ -2036,6 +2044,10 @@
 Introduced in 7.14.0
 .IP CURL_POLL_REMOVE
 Introduced in 7.14.0
+.IP CURL_PREREQFUNC_ABORT
+Introduced in 7.79.0
+.IP CURL_PREREQFUNC_OK
+Introduced in 7.79.0
 .IP CURL_PROGRESSFUNC_CONTINUE
 Introduced in 7.68.0
 .IP CURL_PROGRESS_BAR
@@ -2108,28 +2120,28 @@
 Introduced in 7.54.0
 .IP CURL_SSLVERSION_MAX_NONE
 Introduced in 7.54.0
-.IP CURL_SSLVERSION_MAX_TLS
-Introduced in 
-.IP CURL_SSLVERSION_MAX_TLS
-Introduced in 
-.IP CURL_SSLVERSION_MAX_TLS
-Introduced in 
-.IP CURL_SSLVERSION_MAX_TLS
-Introduced in 
-.IP CURL_SSLVERSION_SSL
-Introduced in 
-.IP CURL_SSLVERSION_SSL
-Introduced in 
-.IP CURL_SSLVERSION_TLS
-Introduced in 
-.IP CURL_SSLVERSION_TLS
-Introduced in 
-.IP CURL_SSLVERSION_TLS
-Introduced in 
-.IP CURL_SSLVERSION_TLS
-Introduced in 
-.IP CURL_SSLVERSION_TLS
-Introduced in 
+.IP CURL_SSLVERSION_MAX_TLSv1_0
+Introduced in 7.54.0
+.IP CURL_SSLVERSION_MAX_TLSv1_1
+Introduced in 7.54.0
+.IP CURL_SSLVERSION_MAX_TLSv1_2
+Introduced in 7.54.0
+.IP CURL_SSLVERSION_MAX_TLSv1_3
+Introduced in 7.54.0
+.IP CURL_SSLVERSION_SSLv2
+Introduced in 7.9.2
+.IP CURL_SSLVERSION_SSLv3
+Introduced in 7.9.2
+.IP CURL_SSLVERSION_TLSv1
+Introduced in 7.9.2
+.IP CURL_SSLVERSION_TLSv1_0
+Introduced in 7.34.0
+.IP CURL_SSLVERSION_TLSv1_1
+Introduced in 7.34.0
+.IP CURL_SSLVERSION_TLSv1_2
+Introduced in 7.34.0
+.IP CURL_SSLVERSION_TLSv1_3
+Introduced in 7.52.0
 .IP CURL_STRICTER
 Introduced in 7.50.2
 .IP CURL_TIMECOND_IFMODSINCE
diff --git a/docs/libcurl/libcurl-thread.3 b/docs/libcurl/libcurl-thread.3
index 65d6613..f4dd9a2 100644
--- a/docs/libcurl/libcurl-thread.3
+++ b/docs/libcurl/libcurl-thread.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 2015 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 2015 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-thread 3 "November 04, 2020" "libcurl 7.78.0" "libcurl thread safety"
+.TH libcurl-thread 3 "October 31, 2021" "libcurl 7.80.0" "libcurl thread safety"
 
 .SH NAME
 libcurl-thread \- libcurl thread safety
@@ -85,9 +85,9 @@
 former signal handler while another thread should still ignore it.
 .IP "Name resolving"
 \fBgethostby* functions and other system calls.\fP These functions, provided
-by your operating system, must be thread safe. It is very important that
-libcurl can find and use thread safe versions of these and other system calls,
-as otherwise it can't function fully thread safe. Some operating systems are
+by your operating system, must be thread safe. It is important that libcurl
+can find and use thread safe versions of these and other system calls, as
+otherwise it cannot function fully thread safe. Some operating systems are
 known to have faulty thread implementations. We have previously received
 problem reports on *BSD (at least in the past, they may be working fine these
 days).  Some operating systems that are known to have solid and working thread
diff --git a/docs/libcurl/libcurl-tutorial.3 b/docs/libcurl/libcurl-tutorial.3
index 333fc8b..64415b9 100644
--- a/docs/libcurl/libcurl-tutorial.3
+++ b/docs/libcurl/libcurl-tutorial.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH libcurl-tutorial 3 "November 05, 2020" "libcurl 7.78.0" "libcurl programming"
+.TH libcurl-tutorial 3 "October 31, 2021" "libcurl 7.80.0" "libcurl programming"
 
 .SH NAME
 libcurl-tutorial \- libcurl programming tutorial
@@ -87,9 +87,9 @@
 on a large amount of different operating systems and environments.
 
 You program libcurl the same way on all platforms that libcurl runs on. There
-are only very few minor considerations that differ. If you just make sure to
-write your code portable enough, you may very well create yourself a very
-portable program. libcurl shouldn't stop you from that.
+are only a few minor details that differ. If you just make sure to write your
+code portable enough, you can create a portable program. libcurl should not
+stop you from that.
 
 .SH "Global Preparation"
 The program must initialize some of the libcurl functionality globally. That
@@ -105,7 +105,7 @@
 .RS
 .IP "CURL_GLOBAL_WIN32"
 which only does anything on Windows machines. When used on
-a Windows machine, it'll make libcurl initialize the win32 socket
+a Windows machine, it will make libcurl initialize the win32 socket
 stuff. Without having that initialized properly, your program cannot use
 sockets properly. You should only do this once for each application, so if
 your program already does this or of another library in use does it, you
@@ -118,10 +118,10 @@
 .RE
 
 libcurl has a default protection mechanism that detects if
-\fIcurl_global_init(3)\fP hasn't been called by the time
+\fIcurl_global_init(3)\fP has not been called by the time
 \fIcurl_easy_perform(3)\fP is called and if that is the case, libcurl runs the
 function itself with a guessed bit pattern. Please note that depending solely
-on this is not considered nice nor very good.
+on this is not considered nice nor good.
 
 When the program no longer uses libcurl, it should call
 \fIcurl_global_cleanup(3)\fP, which is the opposite of the init call. It will
@@ -175,7 +175,7 @@
 
 Many of the options you set in libcurl are "strings", pointers to data
 terminated with a zero byte. When you set strings with
-\fIcurl_easy_setopt(3)\fP, libcurl makes its own copy so that they don't need
+\fIcurl_easy_setopt(3)\fP, libcurl makes its own copy so that they do not need
 to be kept around in your application after being set[4].
 
 One of the most basic properties to set in the handle is the URL. You set your
@@ -204,18 +204,18 @@
  curl_easy_setopt(easyhandle, CURLOPT_WRITEDATA, &internal_struct);
 
 Using that property, you can easily pass local data between your application
-and the function that gets invoked by libcurl. libcurl itself won't touch the
+and the function that gets invoked by libcurl. libcurl itself will not touch the
 data you pass with \fICURLOPT_WRITEDATA(3)\fP.
 
 libcurl offers its own default internal callback that will take care of the
-data if you don't set the callback with \fICURLOPT_WRITEFUNCTION(3)\fP. It
+data if you do not set the callback with \fICURLOPT_WRITEFUNCTION(3)\fP. It
 will then simply output the received data to stdout. You can have the default
 callback write the data to a different file handle by passing a 'FILE *' to a
 file opened for writing with the \fICURLOPT_WRITEDATA(3)\fP option.
 
 Now, we need to take a step back and have a deep breath. Here's one of those
 rare platform-dependent nitpicks. Did you spot it? On some platforms[2],
-libcurl won't be able to operate on files opened by the program. Thus, if you
+libcurl will not be able to operate on files opened by the program. Thus, if you
 use the default callback and pass in an open file with
 \fICURLOPT_WRITEDATA(3)\fP, it will crash. You should therefore avoid this to
 make your program run fine virtually everywhere.
@@ -223,11 +223,11 @@
 (\fICURLOPT_WRITEDATA(3)\fP was formerly known as \fICURLOPT_FILE\fP. Both
 names still work and do the same thing).
 
-If you're using libcurl as a win32 DLL, you MUST use the
+If you are using libcurl as a win32 DLL, you MUST use the
 \fICURLOPT_WRITEFUNCTION(3)\fP if you set \fICURLOPT_WRITEDATA(3)\fP - or you
 will experience crashes.
 
-There are of course many more options you can set, and we'll get back to a few
+There are of course many more options you can set, and we will get back to a few
 of them later. Let's instead continue to the actual transfer:
 
  success = curl_easy_perform(easyhandle);
@@ -241,9 +241,9 @@
 passed to it, libcurl will abort the operation and return with an error code.
 
 When the transfer is complete, the function returns a return code that informs
-you if it succeeded in its mission or not. If a return code isn't enough for
+you if it succeeded in its mission or not. If a return code is not enough for
 you, you can use the \fICURLOPT_ERRORBUFFER(3)\fP to point libcurl to a buffer
-of yours where it'll store a human readable error message as well.
+of yours where it will store a human readable error message as well.
 
 If you then want to transfer another file, the handle is ready to be used
 again. Mind you, it is even preferred that you re-use an existing handle if
@@ -260,22 +260,22 @@
 libcurl is thread safe but there are a few exceptions. Refer to
 \fIlibcurl-thread(3)\fP for more information.
 
-.SH "When It Doesn't Work"
+.SH "When It does not Work"
 There will always be times when the transfer fails for some reason. You might
 have set the wrong libcurl option or misunderstood what the libcurl option
 actually does, or the remote server might return non-standard replies that
 confuse the library which then confuses your program.
 
 There's one golden rule when these things occur: set the
-\fICURLOPT_VERBOSE(3)\fP option to 1. It'll cause the library to spew out the
+\fICURLOPT_VERBOSE(3)\fP option to 1. it will cause the library to spew out the
 entire protocol details it sends, some internal info and some received
-protocol data as well (especially when using FTP). If you're using HTTP,
+protocol data as well (especially when using FTP). If you are using HTTP,
 adding the headers in the received output to study is also a clever way to get
 a better understanding why the server behaves the way it does. Include headers
 in the normal body output with \fICURLOPT_HEADER(3)\fP set 1.
 
 Of course, there are bugs left. We need to know about them to be able to fix
-them, so we're quite dependent on your bug reports! When you do report
+them, so we are quite dependent on your bug reports! When you do report
 suspected bugs in libcurl, please include as many details as you possibly can:
 a protocol dump that \fICURLOPT_VERBOSE(3)\fP produces, library version, as
 much as possible of your code that uses libcurl, operating system name and
@@ -285,14 +285,13 @@
 data your application receive by using the \fICURLOPT_DEBUGFUNCTION(3)\fP.
 
 Getting some in-depth knowledge about the protocols involved is never wrong,
-and if you're trying to do funny things, you might very well understand
-libcurl and how to use it better if you study the appropriate RFC documents
-at least briefly.
+and if you are trying to do funny things, you might understand libcurl and how
+to use it better if you study the appropriate RFC documents at least briefly.
 
 .SH "Upload Data to a Remote Site"
 libcurl tries to keep a protocol independent approach to most transfers, thus
-uploading to a remote FTP site is very similar to uploading data to an HTTP
-server with a PUT request.
+uploading to a remote FTP site is similar to uploading data to an HTTP server
+with a PUT request.
 
 Of course, first you either create an easy handle or you re-use one existing
 one. Then you set the URL to operate on just like before. This is the remote
@@ -319,7 +318,7 @@
 
  curl_easy_setopt(easyhandle, CURLOPT_UPLOAD, 1L);
 
-A few protocols won't behave properly when uploads are done without any prior
+A few protocols will not behave properly when uploads are done without any prior
 knowledge of the expected file size. So, set the upload file size using the
 \fICURLOPT_INFILESIZE_LARGE(3)\fP for all known file sizes like this[1]:
 
@@ -328,8 +327,8 @@
  curl_easy_setopt(easyhandle, CURLOPT_INFILESIZE_LARGE, file_size);
 .fi
 
-When you call \fIcurl_easy_perform(3)\fP this time, it'll perform all the
-necessary operations and when it has invoked the upload it'll call your
+When you call \fIcurl_easy_perform(3)\fP this time, it will perform all the
+necessary operations and when it has invoked the upload it will call your
 supplied callback to get the data to upload. The program should return as much
 data as possible in every invoke, as that is likely to make the upload perform
 as fast as possible. The callback should return the number of bytes it wrote
@@ -374,7 +373,7 @@
 
  curl_easy_setopt(easyhandle, CURLOPT_NETRC, 1L);
 
-And a very basic example of how such a .netrc file may look like:
+And a basic example of how such a .netrc file may look like:
 
 .nf
  machine myhost.mydomain.com
@@ -384,8 +383,8 @@
 
 All these examples have been cases where the password has been optional, or
 at least you could leave it out and have libcurl attempt to do its job
-without it. There are times when the password isn't optional, like when
-you're using an SSL private key for secure transfers.
+without it. There are times when the password is not optional, like when
+you are using an SSL private key for secure transfers.
 
 To pass the known private key password to libcurl:
 
@@ -471,10 +470,10 @@
 .fi
 
 While the simple examples above cover the majority of all cases where HTTP
-POST operations are required, they don't do multi-part formposts. Multi-part
+POST operations are required, they do not do multi-part formposts. Multi-part
 formposts were introduced as a better way to post (possibly large) binary data
-and were first documented in the RFC1867 (updated in RFC2388). They're called
-multi-part because they're built by a chain of parts, each part being a single
+and were first documented in the RFC1867 (updated in RFC2388). they are called
+multi-part because they are built by a chain of parts, each part being a single
 unit of data. Each part has its own name and contents. You can in fact create
 and post a multi-part formpost with the regular libcurl POST support described
 above, but that would require that you build a formpost yourself and provide
@@ -533,7 +532,7 @@
 ought to be converted to the MIME API. It is however described here as an
 aid to conversion.
 
-Using \fIcurl_formadd\fP, you add parts to the form. When you're done adding
+Using \fIcurl_formadd\fP, you add parts to the form. When you are done adding
 parts, you post the whole form.
 
 The MIME API example above is expressed as follows using this function:
@@ -753,7 +752,7 @@
 
 If any of the input arguments is unknown, a 0 will be passed. The first
 argument, the 'clientp' is the pointer you pass to libcurl with
-\fICURLOPT_PROGRESSDATA(3)\fP. libcurl won't touch it.
+\fICURLOPT_PROGRESSDATA(3)\fP. libcurl will not touch it.
 
 .SH "libcurl with C++"
 
@@ -789,17 +788,16 @@
 will ask the proxy for it instead of trying to connect to the actual host
 identified in the URL.
 
-If you're using a SOCKS proxy, you may find that libcurl doesn't quite support
+If you are using a SOCKS proxy, you may find that libcurl does not quite support
 all operations through it.
 
 For HTTP proxies: the fact that the proxy is an HTTP proxy puts certain
 restrictions on what can actually happen. A requested URL that might not be a
 HTTP URL will be still be passed to the HTTP proxy to deliver back to
 libcurl. This happens transparently, and an application may not need to
-know. I say "may", because at times it is very important to understand that
-all operations over an HTTP proxy use the HTTP protocol. For example, you
-can't invoke your own custom FTP commands or even proper FTP directory
-listings.
+know. I say "may", because at times it is important to understand that all
+operations over an HTTP proxy use the HTTP protocol. For example, you cannot
+invoke your own custom FTP commands or even proper FTP directory listings.
 
 .IP "Proxy Options"
 
@@ -840,7 +838,7 @@
 and that is most likely *not* the one you would like it to be.
 
 There are two special environment variables. 'all_proxy' is what sets proxy
-for any URL in case the protocol specific variable wasn't set, and
+for any URL in case the protocol specific variable was not set, and
 \&'no_proxy' defines a list of hosts that should not use a proxy even though a
 variable may say so. If 'no_proxy' is a plain asterisk ("*") it matches all
 hosts.
@@ -864,7 +862,7 @@
 
 Because of the nature of this operation, where the proxy has no idea what kind
 of data that is passed in and out through this tunnel, this breaks some of the
-very few advantages that come from using a proxy, such as caching.  Many
+few advantages that come from using a proxy, such as caching.  Many
 organizations prevent this kind of tunneling to other destination port numbers
 than 443 (which is the default HTTPS port number).
 
@@ -902,7 +900,7 @@
 this particular URL is) or "SOCKS host:port" (to direct the browser to a SOCKS
 proxy).
 
-libcurl has no means to interpret or evaluate Javascript and thus it doesn't
+libcurl has no means to interpret or evaluate Javascript and thus it does not
 support this. If you get yourself in a position where you face this nasty
 invention, the following advice have been mentioned and used in the past:
 
@@ -931,7 +929,7 @@
 reduces re-connection time.
 
 FTP connections that are kept alive save a lot of time, as the command-
-response round-trips are skipped, and also you don't risk getting blocked
+response round-trips are skipped, and also you do not risk getting blocked
 without permission to login again like on many FTP servers only allowing N
 persons to be logged in at the same time.
 
@@ -943,19 +941,19 @@
 
 Each easy handle will attempt to keep the last few connections alive for a
 while in case they are to be used again. You can set the size of this "cache"
-with the \fICURLOPT_MAXCONNECTS(3)\fP option. Default is 5. There is very
-seldom any point in changing this value, and if you think of changing this it
-is often just a matter of thinking again.
+with the \fICURLOPT_MAXCONNECTS(3)\fP option. Default is 5. There is rarely
+any point in changing this value, and if you think of changing this it is
+often just a matter of thinking again.
 
 To force your upcoming request to not use an already existing connection (it
 will even close one first if there happens to be one alive to the same host
-you're about to operate on), you can do that by setting
+you are about to operate on), you can do that by setting
 \fICURLOPT_FRESH_CONNECT(3)\fP to 1. In a similar spirit, you can also forbid
 the upcoming request to be "lying" around and possibly get re-used after the
 request by setting \fICURLOPT_FORBID_REUSE(3)\fP to 1.
 
 .SH "HTTP Headers Used by libcurl"
-When you use libcurl to do HTTP requests, it'll pass along a series of headers
+When you use libcurl to do HTTP requests, it will pass along a series of headers
 automatically. It might be good for you to know and understand these. You
 can replace or remove them by using the \fICURLOPT_HTTPHEADER(3)\fP option.
 
@@ -987,18 +985,18 @@
 .IP CUSTOMREQUEST
 If just changing the actual HTTP request keyword is what you want, like when
 GET, HEAD or POST is not good enough for you, \fICURLOPT_CUSTOMREQUEST(3)\fP
-is there for you. It is very simple to use:
+is there for you. It is simple to use:
 
  curl_easy_setopt(easyhandle, CURLOPT_CUSTOMREQUEST, "MYOWNREQUEST");
 
 When using the custom request, you change the request keyword of the actual
 request you are performing. Thus, by default you make a GET request but you can
 also make a POST operation (as described before) and then replace the POST
-keyword if you want to. You're the boss.
+keyword if you want to. you are the boss.
 
 .IP "Modify Headers"
 HTTP-like protocols pass a series of headers to the server when doing the
-request, and you're free to pass any amount of extra headers that you
+request, and you are free to pass any amount of extra headers that you
 think fit. Adding headers is this easy:
 
 .nf
@@ -1016,7 +1014,7 @@
 .fi
 
 \&... and if you think some of the internally generated headers, such as
-Accept: or Host: don't contain the data you want them to contain, you can
+Accept: or Host: do not contain the data you want them to contain, you can
 replace them by simply setting them too:
 
 .nf
@@ -1046,9 +1044,9 @@
 .IP "HTTP Version"
 
 All HTTP requests includes the version number to tell the server which version
-we support. libcurl speaks HTTP 1.1 by default. Some very old servers don't
-like getting 1.1-requests and when dealing with stubborn old things like that,
-you can tell libcurl to use 1.0 instead by doing something like this:
+we support. libcurl speaks HTTP 1.1 by default. Some old servers do not like
+getting 1.1-requests and when dealing with stubborn old things like that, you
+can tell libcurl to use 1.0 instead by doing something like this:
 
  curl_easy_setopt(easyhandle, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0);
 
@@ -1058,14 +1056,14 @@
 you want to make, for example, your FTP transfers to behave differently.
 
 Sending custom commands to an FTP server means that you need to send the
-commands exactly as the FTP server expects them (RFC959 is a good guide
-here), and you can only use commands that work on the control-connection
-alone. All kinds of commands that require data interchange and thus need
-a data-connection must be left to libcurl's own judgement. Also be aware
-that libcurl will do its very best to change directory to the target
-directory before doing any transfer, so if you change directory (with CWD
-or similar) you might confuse libcurl and then it might not attempt to
-transfer the file in the correct remote directory.
+commands exactly as the FTP server expects them (RFC959 is a good guide here),
+and you can only use commands that work on the control-connection alone. All
+kinds of commands that require data interchange and thus need a
+data-connection must be left to libcurl's own judgement. Also be aware that
+libcurl will do its best to change directory to the target directory before
+doing any transfer, so if you change directory (with CWD or similar) you might
+confuse libcurl and then it might not attempt to transfer the file in the
+correct remote directory.
 
 A little example that deletes a given file before an operation:
 
@@ -1103,7 +1101,7 @@
 .IP "FTP Custom CUSTOMREQUEST"
 If you do want to list the contents of an FTP directory using your own defined
 FTP command, \fICURLOPT_CUSTOMREQUEST(3)\fP will do just that. "NLST" is the
-default one for listing directories but you're free to pass in your idea of a
+default one for listing directories but you are free to pass in your idea of a
 good alternative.
 
 .SH "Cookies Without Chocolate Chips"
@@ -1111,13 +1109,13 @@
 the name and value to the client, and expects it to get sent back on every
 subsequent request to the server that matches the particular conditions
 set. The conditions include that the domain name and path match and that the
-cookie hasn't become too old.
+cookie has not become too old.
 
 In real-world cases, servers send new cookies to replace existing ones to
 update them. Server use cookies to "track" users and to keep "sessions".
 
 Cookies are sent from server to clients with the header Set-Cookie: and
-they're sent from clients to servers with the Cookie: header.
+they are sent from clients to servers with the Cookie: header.
 
 To just send whatever cookie you want to a server, you can use
 \fICURLOPT_COOKIE(3)\fP to set a cookie string like this:
@@ -1140,11 +1138,11 @@
 kept in memory and used properly in subsequent requests when the same handle
 is used. Many times this is enough, and you may not have to save the cookies
 to disk at all. Note that the file you specify to \fICURLOPT_COOKIEFILE(3)\fP
-doesn't have to exist to enable the parser, so a common way to just enable the
-parser and not read any cookies is to use the name of a file you know doesn't
+does not have to exist to enable the parser, so a common way to just enable the
+parser and not read any cookies is to use the name of a file you know does not
 exist.
 
-If you would rather use existing cookies that you've previously received with
+If you would rather use existing cookies that you have previously received with
 your Netscape or Mozilla browsers, you can make libcurl use that cookie file
 as input. The \fICURLOPT_COOKIEFILE(3)\fP is used for that too, as libcurl
 will automatically find out what kind of file it is and act accordingly.
@@ -1168,7 +1166,7 @@
 connect back to it. The first option is the default and it is also what works
 best for all the people behind firewalls, NATs or IP-masquerading setups.
 libcurl then tells the server to open up a new port and wait for a second
-connection. This is by default attempted with EPSV first, and if that doesn't
+connection. This is by default attempted with EPSV first, and if that does not
 work it tries PASV instead. (EPSV is an extension to the original FTP spec
 and does not exist nor work on all FTP servers.)
 
@@ -1283,14 +1281,14 @@
 depend on that fact. It makes it easier for you to add custom header parsers
 etc.
 
-\&"Headers" for FTP transfers equal all the FTP server responses. They aren't
+\&"Headers" for FTP transfers equal all the FTP server responses. They are not
 actually true headers, but in this case we pretend they are! ;-)
 
 .SH "Post Transfer Information"
 See \fIcurl_easy_getinfo(3)\fP.
 .SH "The multi Interface"
 The easy interface as described in detail in this document is a synchronous
-interface that transfers one file at a time and doesn't return until it is
+interface that transfers one file at a time and does not return until it is
 done.
 
 The multi interface, on the other hand, allows your program to transfer
@@ -1318,7 +1316,7 @@
 multi handle with \fIcurl_multi_init(3)\fP and add all those easy handles to
 that multi handle with \fIcurl_multi_add_handle(3)\fP.
 
-When you've added the handles you have for the moment (you can still add new
+When you have added the handles you have for the moment (you can still add new
 ones at any time), you start the transfers by calling
 \fIcurl_multi_perform(3)\fP.
 
@@ -1334,12 +1332,12 @@
 \fIcurl_multi_fdset(3)\fP, that fills in a set of fd_set variables for you
 with the particular file descriptors libcurl uses for the moment.
 
-When you then call select(), it'll return when one of the file handles signal
+When you then call select(), it will return when one of the file handles signal
 action and you then call \fIcurl_multi_perform(3)\fP to allow libcurl to do
 what it wants to do. Take note that libcurl does also feature some time-out
-code so we advise you to never use very long timeouts on select() before you
-call \fIcurl_multi_perform(3)\fP again. \fIcurl_multi_timeout(3)\fP is
-provided to help you get a suitable timeout period.
+code so we advise you to never use long timeouts on select() before you call
+\fIcurl_multi_perform(3)\fP again. \fIcurl_multi_timeout(3)\fP is provided to
+help you get a suitable timeout period.
 
 Another precaution you should use: always call \fIcurl_multi_fdset(3)\fP
 immediately before the select() call since the current set of file descriptors
@@ -1372,7 +1370,7 @@
 The DNS cache is shared between handles within a multi handle, making
 subsequent name resolving faster, and the connection pool that is kept to
 better allow persistent connections and connection re-use is also shared. If
-you're using the easy interface, you can still share these between specific
+you are using the easy interface, you can still share these between specific
 easy handles by using the share interface, see \fIlibcurl-share(3)\fP.
 
 Some things are never shared automatically, not within multi handles, like for
diff --git a/docs/libcurl/libcurl-url.3 b/docs/libcurl/libcurl-url.3
index 26ebe99..c29eb85 100644
--- a/docs/libcurl/libcurl-url.3
+++ b/docs/libcurl/libcurl-url.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl 3 "May 05, 2021" "libcurl 7.78.0" "libcurl url interface"
+.TH libcurl 3 "October 31, 2021" "libcurl 7.80.0" "libcurl url interface"
 
 .SH NAME
 libcurl-url \- URL interface overview
@@ -84,7 +84,7 @@
 Extracted parts are not URL decoded unless the user also asks for it with the
 CURLU_URLDECODE flag set in the fourth bitmask argument.
 
-Remember to free the returned string with \fIcurl_free(3)\fP when you're done
+Remember to free the returned string with \fIcurl_free(3)\fP when you are done
 with it!
 .SH "SET PARTS"
 A user set individual URL parts, either after having parsed a full URL or
@@ -136,4 +136,5 @@
 The URL API was introduced in libcurl 7.62.0.
 .SH "SEE ALSO"
 .BR curl_url "(3), " curl_url_cleanup "(3), " curl_url_get "(3), "
-.BR curl_url_dup "(3), " curl_url_set "(3), " CURLOPT_URL "(3), "
+.BR curl_url_dup "(3), " curl_url_set "(3), " curl_url_strerror "(3), "
+.BR CURLOPT_URL "(3)"
diff --git a/docs/libcurl/libcurl.3 b/docs/libcurl/libcurl.3
index 275cd3f..e3e27c7 100644
--- a/docs/libcurl/libcurl.3
+++ b/docs/libcurl/libcurl.3
@@ -19,7 +19,7 @@
 .\" * KIND, either express or implied.
 .\" *
 .\" **************************************************************************
-.TH libcurl 3 "May 05, 2021" "libcurl 7.78.0" "libcurl overview"
+.TH libcurl 3 "October 31, 2021" "libcurl 7.80.0" "libcurl overview"
 
 .SH NAME
 libcurl \- client-side URL transfers
@@ -97,11 +97,11 @@
 and developers to learn about libcurl and how to use it.
 
 Run 'curl-config --libs' to get the (additional) linker options you need to
-link with the particular version of libcurl you've installed. See the
+link with the particular version of libcurl you have installed. See the
 \fIcurl-config(1)\fP man page for further details.
 
 Unix-like operating system that ship libcurl as part of their distributions
-often don't provide the curl-config tool, but simply install the library and
+often do not provide the curl-config tool, but simply install the library and
 headers in the common path for this purpose.
 
 Many Linux and similar systems use pkg-config to provide build and link
@@ -128,7 +128,7 @@
 libcurl will \fBalways\fP attempt to use persistent connections. Whenever you
 use \fIcurl_easy_perform(3)\fP or \fIcurl_multi_perform(3)\fP etc, libcurl
 will attempt to use an existing connection to do the transfer, and if none
-exists it'll open a new one that will be subject for re-use on a possible
+exists it will open a new one that will be subject for re-use on a possible
 following call to \fIcurl_easy_perform(3)\fP or \fIcurl_multi_perform(3)\fP.
 
 To allow libcurl to take full advantage of persistent connections, you should
@@ -137,7 +137,7 @@
 If you use the easy interface, and you call \fIcurl_easy_cleanup(3)\fP, all
 the possibly open connections held by libcurl will be closed and forgotten.
 
-When you've created a multi handle and are using the multi interface, the
+When you have created a multi handle and are using the multi interface, the
 connection pool is instead kept in the multi handle so closing and creating
 new easy handles to do transfers will not affect them. Instead all added easy
 handles can take advantage of the single shared pool.
@@ -164,31 +164,31 @@
 You can call both of these multiple times, as long as all calls meet
 these requirements and the number of calls to each is the same.
 
-It isn't actually required that the functions be called at the beginning
-and end of the program -- that's just usually the easiest way to do it.
+It is not actually required that the functions be called at the beginning
+and end of the program -- that is just usually the easiest way to do it.
 It \fIis\fP required that the functions be called when no other thread
 in the program is running.
 
 These global constant functions are \fInot thread safe\fP, so you must
 not call them when any other thread in the program is running.  It
-isn't good enough that no other thread is using libcurl at the time,
+is not good enough that no other thread is using libcurl at the time,
 because these functions internally call similar functions of other
-libraries, and those functions are similarly thread-unsafe.  You can't
+libraries, and those functions are similarly thread-unsafe.  You cannot
 generally know what these libraries are, or whether other threads are
 using them.
 
 The global constant situation merits special consideration when the
 code you are writing to use libcurl is not the main program, but rather
 a modular piece of a program, e.g. another library.  As a module,
-your code doesn't know about other parts of the program -- it doesn't
-know whether they use libcurl or not.  And its code doesn't necessarily
+your code does not know about other parts of the program -- it does not
+know whether they use libcurl or not.  And its code does not necessarily
 run at the start and end of the whole program.
 
 A module like this must have global constant functions of its own, just like
 \fIcurl_global_init(3)\fP and \fIcurl_global_cleanup(3)\fP.  The module thus
 has control at the beginning and end of the program and has a place to call
 the libcurl functions.  Note that if multiple modules in the program use
-libcurl, they all will separately call the libcurl functions, and that's OK
+libcurl, they all will separately call the libcurl functions, and that is OK
 because only the first \fIcurl_global_init(3)\fP and the last
 \fIcurl_global_cleanup(3)\fP in a program change anything.  (libcurl uses a
 reference count in static memory).
@@ -220,11 +220,11 @@
 
 There is a failsafe in libcurl that makes it usable in simple situations
 without you having to worry about the global constant environment at all:
-\fIcurl_easy_init(3)\fP sets up the environment itself if it hasn't been done
+\fIcurl_easy_init(3)\fP sets up the environment itself if it has not been done
 yet.  The resources it acquires to do so get released by the operating system
 automatically when the program exits.
 
 This failsafe feature exists mainly for backward compatibility because
-there was a time when the global functions didn't exist.  Because it
+there was a time when the global functions did not exist.  Because it
 is sufficient only in the simplest of programs, it is not recommended
 for any program to rely on it.
diff --git a/docs/libcurl/mksymbolsmanpage.pl b/docs/libcurl/mksymbolsmanpage.pl
index 5a117d6..d19a93c 100755
--- a/docs/libcurl/mksymbolsmanpage.pl
+++ b/docs/libcurl/mksymbolsmanpage.pl
@@ -6,7 +6,7 @@
 # *                            | (__| |_| |  _ <| |___
 # *                             \___|\___/|_| \_\_____|
 # *
-# * Copyright (C) 2015 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# * Copyright (C) 2015 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 # *
 # * This software is licensed as described in the file COPYING, which
 # * you should have received as part of this distribution. The terms
@@ -69,7 +69,7 @@
     ;
 
 while(<STDIN>) {
-    if($_ =~ /^(CURL[A-Z0-9_.]*) *(.*)/) {
+    if($_ =~ /^(CURL[A-Z0-9_.]*) *(.*)/i) {
         my ($symbol, $rest)=($1,$2);
         my ($intro, $dep, $rem);
         if($rest =~ s/^([0-9.]*) *//) {
@@ -86,7 +86,7 @@
           print "Deprecated since $dep\n";
         }
         if($rem) {
-          print "Last used in $dep\n";
+          print "Last used in $rem\n";
         }
     }
 
diff --git a/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3 b/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3
index 39c787a..1a85872 100644
--- a/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3
+++ b/docs/libcurl/opts/CURLINFO_ACTIVESOCKET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_ACTIVESOCKET 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_ACTIVESOCKET 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_ACTIVESOCKET \- get the active socket
@@ -40,7 +40,7 @@
 \fICURLOPT_CONNECT_ONLY(3)\fP, which skips the transfer phase.
 
 \fICURLINFO_ACTIVESOCKET(3)\fP was added as a replacement for
-\fICURLINFO_LASTSOCKET(3)\fP since that one isn't working on all platforms.
+\fICURLINFO_LASTSOCKET(3)\fP since that one is not working on all platforms.
 .SH PROTOCOLS
 All
 .SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3 b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3
index 55de8db..f9c9fcb 100644
--- a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_APPCONNECT_TIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_APPCONNECT_TIME 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_APPCONNECT_TIME \- get the time until the SSL/SSH handshake is completed
@@ -31,9 +31,9 @@
 .SH DESCRIPTION
 Pass a pointer to a double to receive the time, in seconds, it took from the
 start until the SSL/SSH connect/handshake to the remote host was completed.
-This time is most often very near to the \fICURLINFO_PRETRANSFER_TIME(3)\fP
-time, except for cases such as HTTP pipelining where the pretransfer time can
-be delayed due to waits in line for the pipeline and more.
+This time is most often close to the \fICURLINFO_PRETRANSFER_TIME(3)\fP time,
+except for cases such as HTTP pipelining where the pretransfer time can be
+delayed due to waits in line for the pipeline and more.
 
 When a redirect is followed, the time from each request is added together.
 
diff --git a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3 b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3
index b97600e..0de75e1 100644
--- a/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_APPCONNECT_TIME_T.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 2018 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 2018 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_APPCONNECT_TIME_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_APPCONNECT_TIME_T 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_APPCONNECT_TIME_T \- get the time until the SSL/SSH handshake is completed
@@ -29,12 +29,12 @@
 
 CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_APPCONNECT_TIME_T, curl_off_t *timep);
 .SH DESCRIPTION
-Pass a pointer to a curl_off_t to receive the time, in microseconds,
-it took from the
-start until the SSL/SSH connect/handshake to the remote host was completed.
-This time is most often very near to the \fICURLINFO_PRETRANSFER_TIME_T(3)\fP
-time, except for cases such as HTTP pipelining where the pretransfer time can
-be delayed due to waits in line for the pipeline and more.
+Pass a pointer to a curl_off_t to receive the time, in microseconds, it took
+from the start until the SSL/SSH connect/handshake to the remote host was
+completed.  This time is most often close to the
+\fICURLINFO_PRETRANSFER_TIME_T(3)\fP time, except for cases such as HTTP
+pipelining where the pretransfer time can be delayed due to waits in line for
+the pipeline and more.
 
 When a redirect is followed, the time from each request is added together.
 
diff --git a/docs/libcurl/opts/CURLINFO_CERTINFO.3 b/docs/libcurl/opts/CURLINFO_CERTINFO.3
index 4d7e72d..d0a4685 100644
--- a/docs/libcurl/opts/CURLINFO_CERTINFO.3
+++ b/docs/libcurl/opts/CURLINFO_CERTINFO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CERTINFO 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CERTINFO 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CERTINFO \- get the TLS certificate chain
@@ -30,7 +30,7 @@
 CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_CERTINFO,
                            struct curl_certinfo **chainp);
 .SH DESCRIPTION
-Pass a pointer to a 'struct curl_certinfo *' and you'll get it set to point to
+Pass a pointer to a 'struct curl_certinfo *' and you will get it set to point to
 a struct that holds a number of linked lists with info about the certificate
 chain, assuming you had \fICURLOPT_CERTINFO(3)\fP enabled when the request was
 made. The struct reports how many certs it found and then you can extract info
@@ -72,8 +72,9 @@
 }
 .fi
 .SH AVAILABILITY
-This option is only working in libcurl built with OpenSSL, NSS, Schannel or
-GSKit support. Schannel support added in 7.50.0
+This option is only working in libcurl built with OpenSSL, NSS, Schannel, GSKit
+or Secure Transport support. Schannel support added in 7.50.0. Secure Transport
+support added in 7.79.0.
 
 Added in 7.19.1
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLINFO_CONDITION_UNMET.3 b/docs/libcurl/opts/CURLINFO_CONDITION_UNMET.3
index ba91ebd..809edf4 100644
--- a/docs/libcurl/opts/CURLINFO_CONDITION_UNMET.3
+++ b/docs/libcurl/opts/CURLINFO_CONDITION_UNMET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONDITION_UNMET 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONDITION_UNMET 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONDITION_UNMET \- get info on unmet time conditional or 304 HTTP response.
@@ -30,9 +30,9 @@
 CURLcode curl_easy_getinfo(CURL *handle, CURLINFO_CONDITION_UNMET, long *unmet);
 .SH DESCRIPTION
 Pass a pointer to a long to receive the number 1 if the condition provided in
-the previous request didn't match (see \fICURLOPT_TIMECONDITION(3)\fP). Alas,
-if this returns a 1 you know that the reason you didn't get data in return is
-because it didn't fulfill the condition. The long this argument points to will
+the previous request did not match (see \fICURLOPT_TIMECONDITION(3)\fP). Alas,
+if this returns a 1 you know that the reason you did not get data in return is
+because it did not fulfill the condition. The long this argument points to will
 get a zero stored if the condition instead was met. This can also return 1 if
 the server responded with a 304 HTTP status code, for example after sending a
 custom "If-Match-*" header.
diff --git a/docs/libcurl/opts/CURLINFO_CONNECT_TIME.3 b/docs/libcurl/opts/CURLINFO_CONNECT_TIME.3
index 8de98f7..a2073d2 100644
--- a/docs/libcurl/opts/CURLINFO_CONNECT_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_CONNECT_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONNECT_TIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONNECT_TIME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONNECT_TIME \- get the time until connect
diff --git a/docs/libcurl/opts/CURLINFO_CONNECT_TIME_T.3 b/docs/libcurl/opts/CURLINFO_CONNECT_TIME_T.3
index 0a09e74..9cec2c8 100644
--- a/docs/libcurl/opts/CURLINFO_CONNECT_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_CONNECT_TIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONNECT_TIME_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONNECT_TIME_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONNECT_TIME_T \- get the time until connect
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD.3 b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD.3
index e0ea8b6..580aaf8 100644
--- a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD.3
+++ b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONTENT_LENGTH_DOWNLOAD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_DOWNLOAD 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_DOWNLOAD \- get content-length of download
@@ -32,7 +32,7 @@
 .SH DESCRIPTION
 Pass a pointer to a double to receive the content-length of the download. This
 is the value read from the Content-Length: field. Since 7.19.4, this returns
--1 if the size isn't known.
+-1 if the size is not known.
 
 \fICURLINFO_CONTENT_LENGTH_DOWNLOAD_T(3)\fP is a newer replacement that returns a more
 sensible variable type.
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.3 b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.3
index 8cd4636..a6517a1 100644
--- a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.3
+++ b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_DOWNLOAD_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONTENT_LENGTH_DOWNLOAD_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_DOWNLOAD_T 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_DOWNLOAD_T \- get content-length of download
@@ -32,7 +32,7 @@
 .SH DESCRIPTION
 Pass a pointer to a \fIcurl_off_t\fP to receive the content-length of the
 download. This is the value read from the Content-Length: field. Stores -1 if
-the size isn't known.
+the size is not known.
 .SH PROTOCOLS
 HTTP(S)
 .SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD.3 b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD.3
index dd90261..2d0011f 100644
--- a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD.3
+++ b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONTENT_LENGTH_UPLOAD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_UPLOAD 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_UPLOAD \- get the specified size of the upload
@@ -31,7 +31,7 @@
                            double *content_length);
 .SH DESCRIPTION
 Pass a pointer to a double to receive the specified size of the upload.  Since
-7.19.4, this returns -1 if the size isn't known.
+7.19.4, this returns -1 if the size is not known.
 
 \fICURLINFO_CONTENT_LENGTH_UPLOAD_T(3)\fP is a newer replacement that returns a
 more sensible variable type.
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD_T.3 b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD_T.3
index a2ec4c8..019ac64 100644
--- a/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD_T.3
+++ b/docs/libcurl/opts/CURLINFO_CONTENT_LENGTH_UPLOAD_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONTENT_LENGTH_UPLOAD_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_LENGTH_UPLOAD_T 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_LENGTH_UPLOAD_T \- get the specified size of the upload
@@ -31,7 +31,7 @@
                            curl_off_t *content_length);
 .SH DESCRIPTION
 Pass a pointer to a \fIcurl_off_t\fP to receive the specified size of the
-upload. Stores -1 if the size isn't known.
+upload. Stores -1 if the size is not known.
 .SH PROTOCOLS
 All
 .SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLINFO_CONTENT_TYPE.3 b/docs/libcurl/opts/CURLINFO_CONTENT_TYPE.3
index 189f0db..89c2a41 100644
--- a/docs/libcurl/opts/CURLINFO_CONTENT_TYPE.3
+++ b/docs/libcurl/opts/CURLINFO_CONTENT_TYPE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_CONTENT_TYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_CONTENT_TYPE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_CONTENT_TYPE \- get Content-Type
@@ -31,8 +31,8 @@
 .SH DESCRIPTION
 Pass a pointer to a char pointer to receive the content-type of the downloaded
 object. This is the value read from the Content-Type: field. If you get NULL,
-it means that the server didn't send a valid Content-Type header or that the
-protocol used doesn't support this.
+it means that the server did not send a valid Content-Type header or that the
+protocol used does not support this.
 
 The \fBct\fP pointer will be NULL or pointing to private memory you MUST NOT
 free it - it gets freed when you call \fIcurl_easy_cleanup(3)\fP on the
diff --git a/docs/libcurl/opts/CURLINFO_COOKIELIST.3 b/docs/libcurl/opts/CURLINFO_COOKIELIST.3
index 2f1aa27..4b4fa4a 100644
--- a/docs/libcurl/opts/CURLINFO_COOKIELIST.3
+++ b/docs/libcurl/opts/CURLINFO_COOKIELIST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_COOKIELIST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_COOKIELIST 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_COOKIELIST \- get all known cookies
@@ -31,7 +31,7 @@
                            struct curl_slist **cookies);
 .SH DESCRIPTION
 Pass a pointer to a 'struct curl_slist *' to receive a linked-list of all
-cookies curl knows (expired ones, too). Don't forget to call
+cookies curl knows (expired ones, too). do not forget to call
 \fIcurl_slist_free_all(3)\fP on the list after it has been used.  If there are
 no cookies (cookies for the handle have not been enabled or simply none have
 been received) 'struct curl_slist *' will be set to point to NULL.
@@ -62,7 +62,7 @@
         printf("%s\\n", each->data);
         each = each->next;
       }
-      /* we must free these cookies when we're done */
+      /* we must free these cookies when we are done */
       curl_slist_free_all(cookies);
     }
   }
diff --git a/docs/libcurl/opts/CURLINFO_EFFECTIVE_METHOD.3 b/docs/libcurl/opts/CURLINFO_EFFECTIVE_METHOD.3
index 3a587e0..9dce455 100644
--- a/docs/libcurl/opts/CURLINFO_EFFECTIVE_METHOD.3
+++ b/docs/libcurl/opts/CURLINFO_EFFECTIVE_METHOD.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_EFFECTIVE_METHOD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_EFFECTIVE_METHOD 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_EFFECTIVE_METHOD \- get the last used HTTP method
@@ -35,8 +35,8 @@
 Pass in a pointer to a char pointer and get the last used effective HTTP
 method.
 
-In cases when you've asked libcurl to follow redirects, the method may very
-well not be the same method the first request would use.
+In cases when you have asked libcurl to follow redirects, the method may not be
+the same method the first request would use.
 
 The \fBmethodp\fP pointer will be NULL or pointing to private memory you MUST
 NOT free - it gets freed when you call \fIcurl_easy_cleanup(3)\fP on the
diff --git a/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3 b/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3
index 3bea12f..88e5034 100644
--- a/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3
+++ b/docs/libcurl/opts/CURLINFO_EFFECTIVE_URL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_EFFECTIVE_URL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_EFFECTIVE_URL 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_EFFECTIVE_URL \- get the last used URL
@@ -31,8 +31,8 @@
 .SH DESCRIPTION
 Pass in a pointer to a char pointer and get the last used effective URL.
 
-In cases when you've asked libcurl to follow redirects, it may very well not
-be the same value you set with \fICURLOPT_URL(3)\fP.
+In cases when you have asked libcurl to follow redirects, it may not be the same
+value you set with \fICURLOPT_URL(3)\fP.
 
 The \fBurlp\fP pointer will be NULL or pointing to private memory you MUST NOT
 free - it gets freed when you call \fIcurl_easy_cleanup(3)\fP on the
diff --git a/docs/libcurl/opts/CURLINFO_FILETIME.3 b/docs/libcurl/opts/CURLINFO_FILETIME.3
index ea95421..1a04cfc 100644
--- a/docs/libcurl/opts/CURLINFO_FILETIME.3
+++ b/docs/libcurl/opts/CURLINFO_FILETIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_FILETIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_FILETIME 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_FILETIME \- get the remote time of the retrieved document
@@ -32,7 +32,7 @@
 Pass a pointer to a long to receive the remote time of the retrieved document
 (in number of seconds since 1 jan 1970 in the GMT/UTC time zone). If you get
 -1, it can be because of many reasons (it might be unknown, the server might
-hide it or the server doesn't support the command that tells document time
+hide it or the server does not support the command that tells document time
 etc) and the time of the document is unknown.
 
 You must tell libcurl to collect this information before the transfer is made,
diff --git a/docs/libcurl/opts/CURLINFO_FILETIME_T.3 b/docs/libcurl/opts/CURLINFO_FILETIME_T.3
index 185fc26..3537539 100644
--- a/docs/libcurl/opts/CURLINFO_FILETIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_FILETIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_FILETIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_FILETIME 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_FILETIME_T \- get the remote time of the retrieved document
@@ -32,7 +32,7 @@
 Pass a pointer to a curl_off_t to receive the remote time of the retrieved
 document (in number of seconds since 1 jan 1970 in the GMT/UTC time zone). If
 you get -1, it can be because of many reasons (it might be unknown, the server
-might hide it or the server doesn't support the command that tells document
+might hide it or the server does not support the command that tells document
 time etc) and the time of the document is unknown.
 
 You must ask libcurl to collect this information before the transfer is made,
diff --git a/docs/libcurl/opts/CURLINFO_FTP_ENTRY_PATH.3 b/docs/libcurl/opts/CURLINFO_FTP_ENTRY_PATH.3
index 4e534a7..769632b 100644
--- a/docs/libcurl/opts/CURLINFO_FTP_ENTRY_PATH.3
+++ b/docs/libcurl/opts/CURLINFO_FTP_ENTRY_PATH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_FTP_ENTRY_PATH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_FTP_ENTRY_PATH 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_FTP_ENTRY_PATH \- get entry path in FTP server
diff --git a/docs/libcurl/opts/CURLINFO_HEADER_SIZE.3 b/docs/libcurl/opts/CURLINFO_HEADER_SIZE.3
index 8c0fd6f..5d67ae7 100644
--- a/docs/libcurl/opts/CURLINFO_HEADER_SIZE.3
+++ b/docs/libcurl/opts/CURLINFO_HEADER_SIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_HEADER_SIZE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_HEADER_SIZE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_HEADER_SIZE \- get size of retrieved headers
diff --git a/docs/libcurl/opts/CURLINFO_HTTPAUTH_AVAIL.3 b/docs/libcurl/opts/CURLINFO_HTTPAUTH_AVAIL.3
index 68a8983..3001474 100644
--- a/docs/libcurl/opts/CURLINFO_HTTPAUTH_AVAIL.3
+++ b/docs/libcurl/opts/CURLINFO_HTTPAUTH_AVAIL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_HTTPAUTH_AVAIL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_HTTPAUTH_AVAIL 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_HTTPAUTH_AVAIL \- get available HTTP authentication methods
diff --git a/docs/libcurl/opts/CURLINFO_HTTP_CONNECTCODE.3 b/docs/libcurl/opts/CURLINFO_HTTP_CONNECTCODE.3
index d6d2f11..6d1b9ba 100644
--- a/docs/libcurl/opts/CURLINFO_HTTP_CONNECTCODE.3
+++ b/docs/libcurl/opts/CURLINFO_HTTP_CONNECTCODE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_HTTP_CONNECTCODE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_HTTP_CONNECTCODE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_HTTP_CONNECTCODE \- get the CONNECT response code
diff --git a/docs/libcurl/opts/CURLINFO_HTTP_VERSION.3 b/docs/libcurl/opts/CURLINFO_HTTP_VERSION.3
index 48127c6..fd0e2bd 100644
--- a/docs/libcurl/opts/CURLINFO_HTTP_VERSION.3
+++ b/docs/libcurl/opts/CURLINFO_HTTP_VERSION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_HTTP_VERSION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_HTTP_VERSION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_HTTP_VERSION \- get the http version used in the connection
@@ -32,7 +32,7 @@
 Pass a pointer to a long to receive the version used in the last http
 connection.  The returned value will be CURL_HTTP_VERSION_1_0,
 CURL_HTTP_VERSION_1_1, CURL_HTTP_VERSION_2_0, CURL_HTTP_VERSION_3 or 0 if the
-version can't be determined.
+version cannot be determined.
 .SH PROTOCOLS
 HTTP
 .SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLINFO_LASTSOCKET.3 b/docs/libcurl/opts/CURLINFO_LASTSOCKET.3
index 83f9ad5..de18895 100644
--- a/docs/libcurl/opts/CURLINFO_LASTSOCKET.3
+++ b/docs/libcurl/opts/CURLINFO_LASTSOCKET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_LASTSOCKET 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_LASTSOCKET 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_LASTSOCKET \- get the last socket used
@@ -47,7 +47,7 @@
 .nf
 CURL *curl = curl_easy_init();
 if(curl) {
-  long sockfd; /* doesn't work on win64! */
+  long sockfd; /* does not work on win64! */
   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
 
   /* Do not do the transfer - only connect to host */
diff --git a/docs/libcurl/opts/CURLINFO_LOCAL_IP.3 b/docs/libcurl/opts/CURLINFO_LOCAL_IP.3
index 898e261..570a201 100644
--- a/docs/libcurl/opts/CURLINFO_LOCAL_IP.3
+++ b/docs/libcurl/opts/CURLINFO_LOCAL_IP.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_LOCAL_IP 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_LOCAL_IP 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_LOCAL_IP \- get local IP address of last connection
diff --git a/docs/libcurl/opts/CURLINFO_LOCAL_PORT.3 b/docs/libcurl/opts/CURLINFO_LOCAL_PORT.3
index 93cce5f..b1488d9 100644
--- a/docs/libcurl/opts/CURLINFO_LOCAL_PORT.3
+++ b/docs/libcurl/opts/CURLINFO_LOCAL_PORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_LOCAL_PORT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_LOCAL_PORT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_LOCAL_PORT \- get the latest local port number
diff --git a/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME.3 b/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME.3
index 18423a6..13e445c 100644
--- a/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_NAMELOOKUP_TIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_NAMELOOKUP_TIME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_NAMELOOKUP_TIME \- get the name lookup time
diff --git a/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME_T.3 b/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME_T.3
index 34b0139..4171120 100644
--- a/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_NAMELOOKUP_TIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_NAMELOOKUP_TIME_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_NAMELOOKUP_TIME_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_NAMELOOKUP_TIME_T \- get the name lookup time in microseconds
diff --git a/docs/libcurl/opts/CURLINFO_NUM_CONNECTS.3 b/docs/libcurl/opts/CURLINFO_NUM_CONNECTS.3
index b29bb9a..10edb1a 100644
--- a/docs/libcurl/opts/CURLINFO_NUM_CONNECTS.3
+++ b/docs/libcurl/opts/CURLINFO_NUM_CONNECTS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_NUM_CONNECTS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_NUM_CONNECTS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_NUM_CONNECTS \- get number of created connections
diff --git a/docs/libcurl/opts/CURLINFO_OS_ERRNO.3 b/docs/libcurl/opts/CURLINFO_OS_ERRNO.3
index 461cf4f..05afe92 100644
--- a/docs/libcurl/opts/CURLINFO_OS_ERRNO.3
+++ b/docs/libcurl/opts/CURLINFO_OS_ERRNO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_OS_ERRNO 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_OS_ERRNO 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_OS_ERRNO \- get errno number from last connect failure
diff --git a/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME.3 b/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME.3
index e6dbb12..493895e 100644
--- a/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PRETRANSFER_TIME 3 "January 14, 2021" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PRETRANSFER_TIME 3 "January 14, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PRETRANSFER_TIME \- get the time until the file transfer start
diff --git a/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME_T.3 b/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME_T.3
index 4b7530f..3cb3b83 100644
--- a/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_PRETRANSFER_TIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PRETRANSFER_TIME_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PRETRANSFER_TIME_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PRETRANSFER_TIME_T \- get the time until the file transfer start
diff --git a/docs/libcurl/opts/CURLINFO_PRIMARY_IP.3 b/docs/libcurl/opts/CURLINFO_PRIMARY_IP.3
index e110ca1..aca98f0 100644
--- a/docs/libcurl/opts/CURLINFO_PRIMARY_IP.3
+++ b/docs/libcurl/opts/CURLINFO_PRIMARY_IP.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PRIMARY_IP 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PRIMARY_IP 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PRIMARY_IP \- get IP address of last connection
diff --git a/docs/libcurl/opts/CURLINFO_PRIMARY_PORT.3 b/docs/libcurl/opts/CURLINFO_PRIMARY_PORT.3
index eae2353..9961e6f 100644
--- a/docs/libcurl/opts/CURLINFO_PRIMARY_PORT.3
+++ b/docs/libcurl/opts/CURLINFO_PRIMARY_PORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PRIMARY_PORT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PRIMARY_PORT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PRIMARY_PORT \- get the latest destination port number
diff --git a/docs/libcurl/opts/CURLINFO_PRIVATE.3 b/docs/libcurl/opts/CURLINFO_PRIVATE.3
index 74714ba..c4f429b 100644
--- a/docs/libcurl/opts/CURLINFO_PRIVATE.3
+++ b/docs/libcurl/opts/CURLINFO_PRIVATE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PRIVATE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PRIVATE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PRIVATE \- get the private pointer
diff --git a/docs/libcurl/opts/CURLINFO_PROTOCOL.3 b/docs/libcurl/opts/CURLINFO_PROTOCOL.3
index d24c013..3c310bb 100644
--- a/docs/libcurl/opts/CURLINFO_PROTOCOL.3
+++ b/docs/libcurl/opts/CURLINFO_PROTOCOL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PROTOCOL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PROTOCOL 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PROTOCOL \- get the protocol used in the connection
diff --git a/docs/libcurl/opts/CURLINFO_PROXYAUTH_AVAIL.3 b/docs/libcurl/opts/CURLINFO_PROXYAUTH_AVAIL.3
index 8d38b9d..0b0cc1c 100644
--- a/docs/libcurl/opts/CURLINFO_PROXYAUTH_AVAIL.3
+++ b/docs/libcurl/opts/CURLINFO_PROXYAUTH_AVAIL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PROXYAUTH_AVAIL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PROXYAUTH_AVAIL 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PROXYAUTH_AVAIL \- get available HTTP proxy authentication methods
diff --git a/docs/libcurl/opts/CURLINFO_PROXY_ERROR.3 b/docs/libcurl/opts/CURLINFO_PROXY_ERROR.3
index 6da00a0..7806e8c 100644
--- a/docs/libcurl/opts/CURLINFO_PROXY_ERROR.3
+++ b/docs/libcurl/opts/CURLINFO_PROXY_ERROR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PROXY_ERROR 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PROXY_ERROR 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PROXY_ERROR \- get the detailed (SOCKS) proxy error
diff --git a/docs/libcurl/opts/CURLINFO_PROXY_SSL_VERIFYRESULT.3 b/docs/libcurl/opts/CURLINFO_PROXY_SSL_VERIFYRESULT.3
index 5eec425..2a99997 100644
--- a/docs/libcurl/opts/CURLINFO_PROXY_SSL_VERIFYRESULT.3
+++ b/docs/libcurl/opts/CURLINFO_PROXY_SSL_VERIFYRESULT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_PROXY_SSL_VERIFYRESULT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_PROXY_SSL_VERIFYRESULT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_PROXY_SSL_VERIFYRESULT \- get the result of the proxy certificate verification
diff --git a/docs/libcurl/opts/CURLINFO_REDIRECT_COUNT.3 b/docs/libcurl/opts/CURLINFO_REDIRECT_COUNT.3
index 297aa11..d4c9d2f 100644
--- a/docs/libcurl/opts/CURLINFO_REDIRECT_COUNT.3
+++ b/docs/libcurl/opts/CURLINFO_REDIRECT_COUNT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_REDIRECT_COUNT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_COUNT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_REDIRECT_COUNT \- get the number of redirects
diff --git a/docs/libcurl/opts/CURLINFO_REDIRECT_TIME.3 b/docs/libcurl/opts/CURLINFO_REDIRECT_TIME.3
index b8b6cb7..e6b061b 100644
--- a/docs/libcurl/opts/CURLINFO_REDIRECT_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_REDIRECT_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_REDIRECT_TIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_TIME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_REDIRECT_TIME \- get the time for all redirection steps
diff --git a/docs/libcurl/opts/CURLINFO_REDIRECT_TIME_T.3 b/docs/libcurl/opts/CURLINFO_REDIRECT_TIME_T.3
index f466fec..2d45b79 100644
--- a/docs/libcurl/opts/CURLINFO_REDIRECT_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_REDIRECT_TIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_REDIRECT_TIME_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_TIME_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_REDIRECT_TIME_T \- get the time for all redirection steps
diff --git a/docs/libcurl/opts/CURLINFO_REDIRECT_URL.3 b/docs/libcurl/opts/CURLINFO_REDIRECT_URL.3
index 7c15479..2d36c97 100644
--- a/docs/libcurl/opts/CURLINFO_REDIRECT_URL.3
+++ b/docs/libcurl/opts/CURLINFO_REDIRECT_URL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_REDIRECT_URL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_REDIRECT_URL 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_REDIRECT_URL \- get the URL a redirect would go to
@@ -31,9 +31,9 @@
 .SH DESCRIPTION
 Pass a pointer to a char pointer to receive the URL a redirect \fIwould\fP
 take you to if you would enable \fICURLOPT_FOLLOWLOCATION(3)\fP. This can come
-very handy if you think using the built-in libcurl redirect logic isn't good
-enough for you but you would still prefer to avoid implementing all the magic
-of figuring out the new URL.
+handy if you think using the built-in libcurl redirect logic is not good enough
+for you but you would still prefer to avoid implementing all the magic of
+figuring out the new URL.
 
 This URL is also set if the \fICURLOPT_MAXREDIRS(3)\fP limit prevented a
 redirect to happen (since 7.54.1).
diff --git a/docs/libcurl/opts/CURLINFO_REFERER.3 b/docs/libcurl/opts/CURLINFO_REFERER.3
index 3febff1..4b41ef6 100644
--- a/docs/libcurl/opts/CURLINFO_REFERER.3
+++ b/docs/libcurl/opts/CURLINFO_REFERER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_REFERER 3 "February 19, 2021" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_REFERER 3 "February 19, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_REFERER \- get the referrer header
diff --git a/docs/libcurl/opts/CURLINFO_REQUEST_SIZE.3 b/docs/libcurl/opts/CURLINFO_REQUEST_SIZE.3
index 7dac290..2a23b0e 100644
--- a/docs/libcurl/opts/CURLINFO_REQUEST_SIZE.3
+++ b/docs/libcurl/opts/CURLINFO_REQUEST_SIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_REQUEST_SIZE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_REQUEST_SIZE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_REQUEST_SIZE \- get size of sent request
diff --git a/docs/libcurl/opts/CURLINFO_RESPONSE_CODE.3 b/docs/libcurl/opts/CURLINFO_RESPONSE_CODE.3
index fe86b25..4c42ade 100644
--- a/docs/libcurl/opts/CURLINFO_RESPONSE_CODE.3
+++ b/docs/libcurl/opts/CURLINFO_RESPONSE_CODE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_RESPONSE_CODE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_RESPONSE_CODE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_RESPONSE_CODE \- get the last response code
diff --git a/docs/libcurl/opts/CURLINFO_RETRY_AFTER.3 b/docs/libcurl/opts/CURLINFO_RETRY_AFTER.3
index 185fb98..6c842ac 100644
--- a/docs/libcurl/opts/CURLINFO_RETRY_AFTER.3
+++ b/docs/libcurl/opts/CURLINFO_RETRY_AFTER.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_RETRY_AFTER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_RETRY_AFTER 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_RETRY_AFTER \- returns the Retry-After retry delay
@@ -35,7 +35,7 @@
 
 While the HTTP header might contain a fixed date string, the
 \fICURLINFO_RETRY_AFTER(3)\fP will always return number of seconds to wait -
-or zero if there was no header or the header couldn't be parsed.
+or zero if there was no header or the header could not be parsed.
 .SH DEFAULT
 Returns zero delay if there was no header.
 .SH PROTOCOLS
@@ -57,7 +57,7 @@
 }
 .fi
 .SH AVAILABILITY
-Added in curl 7.66.0
+Added in 7.66.0
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLINFO_RTSP_CLIENT_CSEQ.3 b/docs/libcurl/opts/CURLINFO_RTSP_CLIENT_CSEQ.3
index 305273b..1808ffb 100644
--- a/docs/libcurl/opts/CURLINFO_RTSP_CLIENT_CSEQ.3
+++ b/docs/libcurl/opts/CURLINFO_RTSP_CLIENT_CSEQ.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_RTSP_CLIENT_CSEQ 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_CLIENT_CSEQ 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_RTSP_CLIENT_CSEQ \- get the next RTSP client CSeq
diff --git a/docs/libcurl/opts/CURLINFO_RTSP_CSEQ_RECV.3 b/docs/libcurl/opts/CURLINFO_RTSP_CSEQ_RECV.3
index 75b26cf..1faef54 100644
--- a/docs/libcurl/opts/CURLINFO_RTSP_CSEQ_RECV.3
+++ b/docs/libcurl/opts/CURLINFO_RTSP_CSEQ_RECV.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_RTSP_CSEQ_RECV 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_CSEQ_RECV 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_RTSP_CSEQ_RECV \- get the recently received CSeq
diff --git a/docs/libcurl/opts/CURLINFO_RTSP_SERVER_CSEQ.3 b/docs/libcurl/opts/CURLINFO_RTSP_SERVER_CSEQ.3
index 175db73..f5175f1 100644
--- a/docs/libcurl/opts/CURLINFO_RTSP_SERVER_CSEQ.3
+++ b/docs/libcurl/opts/CURLINFO_RTSP_SERVER_CSEQ.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_RTSP_SERVER_CSEQ 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_SERVER_CSEQ 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_RTSP_SERVER_CSEQ \- get the next RTSP server CSeq
diff --git a/docs/libcurl/opts/CURLINFO_RTSP_SESSION_ID.3 b/docs/libcurl/opts/CURLINFO_RTSP_SESSION_ID.3
index b77e38e..d7d2549 100644
--- a/docs/libcurl/opts/CURLINFO_RTSP_SESSION_ID.3
+++ b/docs/libcurl/opts/CURLINFO_RTSP_SESSION_ID.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_RTSP_SESSION_ID 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_RTSP_SESSION_ID 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_RTSP_SESSION_ID \- get RTSP session ID
diff --git a/docs/libcurl/opts/CURLINFO_SCHEME.3 b/docs/libcurl/opts/CURLINFO_SCHEME.3
index bc64958..2f04996 100644
--- a/docs/libcurl/opts/CURLINFO_SCHEME.3
+++ b/docs/libcurl/opts/CURLINFO_SCHEME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SCHEME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SCHEME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SCHEME \- get the URL scheme (sometimes called protocol) used in the connection
diff --git a/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD.3 b/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD.3
index 5076a98..23b28cf 100644
--- a/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD.3
+++ b/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SIZE_DOWNLOAD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_DOWNLOAD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SIZE_DOWNLOAD \- get the number of downloaded bytes
diff --git a/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD_T.3 b/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD_T.3
index 2c414ae..57740a9 100644
--- a/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD_T.3
+++ b/docs/libcurl/opts/CURLINFO_SIZE_DOWNLOAD_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SIZE_DOWNLOAD_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_DOWNLOAD_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SIZE_DOWNLOAD_T \- get the number of downloaded bytes
diff --git a/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD.3 b/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD.3
index 6232e8d..26696a4 100644
--- a/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD.3
+++ b/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SIZE_UPLOAD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_UPLOAD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SIZE_UPLOAD \- get the number of uploaded bytes
diff --git a/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD_T.3 b/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD_T.3
index ca2c79e..fc6d77d 100644
--- a/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD_T.3
+++ b/docs/libcurl/opts/CURLINFO_SIZE_UPLOAD_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SIZE_UPLOAD_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SIZE_UPLOAD_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SIZE_UPLOAD_T \- get the number of uploaded bytes
diff --git a/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD.3 b/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD.3
index 981ddde..a09d642 100644
--- a/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD.3
+++ b/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SPEED_DOWNLOAD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_DOWNLOAD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SPEED_DOWNLOAD \- get download speed
diff --git a/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD_T.3 b/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD_T.3
index 813f2ed..a7b167f 100644
--- a/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD_T.3
+++ b/docs/libcurl/opts/CURLINFO_SPEED_DOWNLOAD_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SPEED_DOWNLOAD_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_DOWNLOAD_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SPEED_DOWNLOAD_T \- get download speed
diff --git a/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD.3 b/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD.3
index 697fce7..0277db7 100644
--- a/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD.3
+++ b/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SPEED_UPLOAD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_UPLOAD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SPEED_UPLOAD \- get upload speed
diff --git a/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD_T.3 b/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD_T.3
index b910e09..65ad284 100644
--- a/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD_T.3
+++ b/docs/libcurl/opts/CURLINFO_SPEED_UPLOAD_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SPEED_UPLOAD_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SPEED_UPLOAD_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SPEED_UPLOAD_T \- get upload speed
diff --git a/docs/libcurl/opts/CURLINFO_SSL_ENGINES.3 b/docs/libcurl/opts/CURLINFO_SSL_ENGINES.3
index 29ee9b9..b3a108b 100644
--- a/docs/libcurl/opts/CURLINFO_SSL_ENGINES.3
+++ b/docs/libcurl/opts/CURLINFO_SSL_ENGINES.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SSL_ENGINES 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SSL_ENGINES 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SSL_ENGINES \- get an slist of OpenSSL crypto-engines
@@ -34,7 +34,7 @@
 OpenSSL crypto-engines supported. Note that engines are normally implemented
 in separate dynamic libraries. Hence not all the returned engines may be
 available at run-time. \fBNOTE:\fP you must call \fIcurl_slist_free_all(3)\fP
-on the list pointer once you're done with it, as libcurl will not free the
+on the list pointer once you are done with it, as libcurl will not free the
 data for you.
 .SH PROTOCOLS
 All TLS based ones.
diff --git a/docs/libcurl/opts/CURLINFO_SSL_VERIFYRESULT.3 b/docs/libcurl/opts/CURLINFO_SSL_VERIFYRESULT.3
index 8e0e5a1..ddc514d 100644
--- a/docs/libcurl/opts/CURLINFO_SSL_VERIFYRESULT.3
+++ b/docs/libcurl/opts/CURLINFO_SSL_VERIFYRESULT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_SSL_VERIFYRESULT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_SSL_VERIFYRESULT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_SSL_VERIFYRESULT \- get the result of the certificate verification
diff --git a/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME.3 b/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME.3
index 1e5452a..46045dd 100644
--- a/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_STARTTRANSFER_TIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_STARTTRANSFER_TIME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_STARTTRANSFER_TIME \- get the time until the first byte is received
diff --git a/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME_T.3 b/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME_T.3
index a153777..beb8ad9 100644
--- a/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_STARTTRANSFER_TIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_STARTTRANSFER_TIME_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_STARTTRANSFER_TIME_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_STARTTRANSFER_TIME_T \- get the time until the first byte is received
diff --git a/docs/libcurl/opts/CURLINFO_TLS_SESSION.3 b/docs/libcurl/opts/CURLINFO_TLS_SESSION.3
index 3b2ce7b..a3e8432 100644
--- a/docs/libcurl/opts/CURLINFO_TLS_SESSION.3
+++ b/docs/libcurl/opts/CURLINFO_TLS_SESSION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_TLS_SESSION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_TLS_SESSION 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_TLS_SESSION \- get TLS session info
diff --git a/docs/libcurl/opts/CURLINFO_TLS_SSL_PTR.3 b/docs/libcurl/opts/CURLINFO_TLS_SSL_PTR.3
index abe31a1..74407e8 100644
--- a/docs/libcurl/opts/CURLINFO_TLS_SSL_PTR.3
+++ b/docs/libcurl/opts/CURLINFO_TLS_SSL_PTR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_TLS_SSL_PTR 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_TLS_SSL_PTR 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_TLS_SESSION, CURLINFO_TLS_SSL_PTR \- get TLS session info
@@ -117,7 +117,7 @@
 
 If you are using OpenSSL or wolfSSL then \fICURLOPT_SSL_CTX_FUNCTION(3)\fP can
 be used to set a certificate verification callback in the CTX. That is safer
-than using this option to poll for certificate changes and doesn't suffer from
+than using this option to poll for certificate changes and does not suffer from
 any of the problems above. There is currently no way in libcurl to set a
 verification callback for the other SSL backends.
 
diff --git a/docs/libcurl/opts/CURLINFO_TOTAL_TIME.3 b/docs/libcurl/opts/CURLINFO_TOTAL_TIME.3
index f1da089..5e0a100 100644
--- a/docs/libcurl/opts/CURLINFO_TOTAL_TIME.3
+++ b/docs/libcurl/opts/CURLINFO_TOTAL_TIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_TOTAL_TIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_TOTAL_TIME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_TOTAL_TIME \- get total time of previous transfer
diff --git a/docs/libcurl/opts/CURLINFO_TOTAL_TIME_T.3 b/docs/libcurl/opts/CURLINFO_TOTAL_TIME_T.3
index 55f6e5f..319ab32 100644
--- a/docs/libcurl/opts/CURLINFO_TOTAL_TIME_T.3
+++ b/docs/libcurl/opts/CURLINFO_TOTAL_TIME_T.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLINFO_TOTAL_TIME_T 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_getinfo options"
+.TH CURLINFO_TOTAL_TIME_T 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_getinfo options"
 
 .SH NAME
 CURLINFO_TOTAL_TIME_T \- get total time of previous transfer in microseconds
diff --git a/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3 b/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3
index 1299ea2..ec7f29a 100644
--- a/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3
+++ b/docs/libcurl/opts/CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE \- chunk length threshold for pipelining
diff --git a/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3 b/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3
index 17e60a2..aacb048 100644
--- a/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3
+++ b/docs/libcurl/opts/CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE \- size threshold for pipelining penalty
diff --git a/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.3 b/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.3
index 4dfee71..b67745a 100644
--- a/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.3
+++ b/docs/libcurl/opts/CURLMOPT_MAXCONNECTS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_MAXCONNECTS 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_MAXCONNECTS 3 "September 08, 2021" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
-CURLMOPT_MAXCONNECTS \- set size of connection cache
+CURLMOPT_MAXCONNECTS \- size of connection cache
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_CONCURRENT_STREAMS.3 b/docs/libcurl/opts/CURLMOPT_MAX_CONCURRENT_STREAMS.3
index 82392fc..0ca9164 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_CONCURRENT_STREAMS.3
+++ b/docs/libcurl/opts/CURLMOPT_MAX_CONCURRENT_STREAMS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_MAX_CONCURRENT_STREAMS 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_MAX_CONCURRENT_STREAMS 3 "September 08, 2021" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
-CURLMOPT_MAX_CONCURRENT_STREAMS \- set max concurrent streams for http2
+CURLMOPT_MAX_CONCURRENT_STREAMS \- max concurrent streams for http2
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3 b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
index 0974c5d..5932b7d 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
+++ b/docs/libcurl/opts/CURLMOPT_MAX_HOST_CONNECTIONS.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_MAX_HOST_CONNECTIONS 3 "March 17, 2021" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_MAX_HOST_CONNECTIONS 3 "September 08, 2021" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
-CURLMOPT_MAX_HOST_CONNECTIONS \- set max number of connections to a single host
+CURLMOPT_MAX_HOST_CONNECTIONS \- max number of connections to a single host
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.3 b/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.3
index c4e1a47..0803aaf 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.3
+++ b/docs/libcurl/opts/CURLMOPT_MAX_PIPELINE_LENGTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_MAX_PIPELINE_LENGTH 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_MAX_PIPELINE_LENGTH 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_MAX_PIPELINE_LENGTH \- maximum number of requests in a pipeline
diff --git a/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.3 b/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.3
index 9d1cacd..9be355b 100644
--- a/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.3
+++ b/docs/libcurl/opts/CURLMOPT_MAX_TOTAL_CONNECTIONS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_MAX_TOTAL_CONNECTIONS 3 "March 17, 2021" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_MAX_TOTAL_CONNECTIONS 3 "March 17, 2021" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_MAX_TOTAL_CONNECTIONS \- max simultaneously open connections
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING.3
index ee8db98..586c751 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING.3
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_PIPELINING 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_PIPELINING 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PIPELINING \- enable HTTP pipelining and multiplexing
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3
index cd6a694..8807761 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SERVER_BL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_PIPELINING_SERVER_BL 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_PIPELINING_SERVER_BL 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PIPELINING_SERVER_BL \- pipelining server block list
diff --git a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3 b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3
index 9b5d908..cbba632 100644
--- a/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3
+++ b/docs/libcurl/opts/CURLMOPT_PIPELINING_SITE_BL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_PIPELINING_SITE_BL 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_PIPELINING_SITE_BL 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PIPELINING_SITE_BL \- pipelining host block list
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHDATA.3 b/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
index 54797b0..7aeb150 100644
--- a/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
+++ b/docs/libcurl/opts/CURLMOPT_PUSHDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_PUSHDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_PUSHDATA 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PUSHDATA \- pointer to pass to push callback
diff --git a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3 b/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3
index 8925841..43c60c7 100644
--- a/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3
+++ b/docs/libcurl/opts/CURLMOPT_PUSHFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_PUSHFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_PUSHFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_PUSHFUNCTION \- callback that approves or denies server pushes
@@ -76,7 +76,7 @@
 "name:value" string that will be freed when this callback returns.
 .IP curl_pushheader_byname
 Returns the value for the given header name (or NULL). This is a shortcut so
-that the application doesn't have to loop through all headers to find the one
+that the application does not have to loop through all headers to find the one
 it is interested in. The data pointed will be freed when this callback
 returns. If more than one header field use the same name, this returns only
 the first one.
@@ -89,7 +89,7 @@
 application, the easy handle will be destroyed by libcurl.
 .IP "CURL_PUSH_ERROROUT (2)"
 Returning this will reject the pushed stream and return an error back on the
-parent stream making it get closed with an error. (Added in curl 7.72.0)
+parent stream making it get closed with an error. (Added in 7.72.0)
 .IP *
 All other return codes are reserved for future use.
 .SH DEFAULT
diff --git a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3 b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3
index e2d5bbd..24422d3 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_SOCKETDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_SOCKETDATA 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_SOCKETDATA \- custom pointer passed to the socket callback
diff --git a/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.3 b/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.3
index d1a34ee..b65f5e9 100644
--- a/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.3
+++ b/docs/libcurl/opts/CURLMOPT_SOCKETFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_SOCKETFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_SOCKETFUNCTION 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_SOCKETFUNCTION \- callback informed about what to wait for
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERDATA.3 b/docs/libcurl/opts/CURLMOPT_TIMERDATA.3
index e3d7aee..caf9ebe 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERDATA.3
+++ b/docs/libcurl/opts/CURLMOPT_TIMERDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_TIMERDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_TIMERDATA 3 "November 04, 2020" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
 CURLMOPT_TIMERDATA \- custom pointer to pass to timer callback
diff --git a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3 b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
index 4b9b448..2e9ac7f 100644
--- a/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
+++ b/docs/libcurl/opts/CURLMOPT_TIMERFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLMOPT_TIMERFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_multi_setopt options"
+.TH CURLMOPT_TIMERFUNCTION 3 "September 08, 2021" "libcurl 7.80.0" "curl_multi_setopt options"
 
 .SH NAME
-CURLMOPT_TIMERFUNCTION \- set callback to receive timeout values
+CURLMOPT_TIMERFUNCTION \- callback to receive timeout values
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
@@ -41,7 +41,7 @@
 even when there is no activity on the file descriptors.
 
 Your callback function \fBtimer_callback\fP should install a non-repeating
-timer with an interval of \fBtimeout_ms\fP. When time that timer fires, call
+timer with an interval of \fBtimeout_ms\fP. When that timer fires, call
 either \fIcurl_multi_socket_action(3)\fP or \fIcurl_multi_perform(3)\fP,
 depending on which interface you use.
 
diff --git a/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3 b/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3
index a74ce6b..f6b603a 100644
--- a/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3
+++ b/docs/libcurl/opts/CURLOPT_ABSTRACT_UNIX_SOCKET.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,39 +20,40 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ABSTRACT_UNIX_SOCKET 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ABSTRACT_UNIX_SOCKET 3 "October 27, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_ABSTRACT_UNIX_SOCKET \- set an abstract Unix domain socket
+CURLOPT_ABSTRACT_UNIX_SOCKET \- abstract Unix domain socket
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ABSTRACT_UNIX_SOCKET, char *path);
 .SH DESCRIPTION
-Enables the use of an abstract Unix domain socket instead of establishing a TCP
-connection to a host. The parameter should be a char * to a null-terminated string
-holding the path of the socket. The path will be set to \fIpath\fP prefixed by a
-NULL byte (this is the convention for abstract sockets, however it should be stressed
-that the path passed to this function should not contain a leading NULL).
+Enables the use of an abstract Unix domain socket instead of establishing a
+TCP connection to a host. The parameter should be a char * to a
+null-terminated string holding the path of the socket. The path will be set to
+\fIpath\fP prefixed by a NULL byte (this is the convention for abstract
+sockets, however it should be stressed that the path passed to this function
+should not contain a leading NULL).
 
-On non-supporting platforms, the abstract address will be interpreted as an empty
-string and fail gracefully, generating a run-time error.
+On non-supporting platforms, the abstract address will be interpreted as an
+empty string and fail gracefully, generating a run-time error.
 
-This option shares the same semantics as
-.BR CURLOPT_UNIX_SOCKET_PATH "(3)
-in which documentation more details can be found. Internally, these two options share
-the same storage and therefore only one of them can be set per handle.
-
+This option shares the same semantics as \fICURLOPT_UNIX_SOCKET_PATH(3)\fP in
+which documentation more details can be found. Internally, these two options
+share the same storage and therefore only one of them can be set per handle.
 .SH DEFAULT
 Default is NULL.
+.SH PROTOCOLS
+All
 .SH EXAMPLE
 .nf
-    curl_easy_setopt(curl_handle, CURLOPT_ABSTRACT_UNIX_SOCKET, "/tmp/foo.sock");
-    curl_easy_setopt(curl_handle, CURLOPT_URL, "http://localhost/");
+  curl_easy_setopt(curl_handle, CURLOPT_ABSTRACT_UNIX_SOCKET, "/tmp/foo.sock");
+  curl_easy_setopt(curl_handle, CURLOPT_URL, "http://localhost/");
 .fi
 
 .SH AVAILABILITY
-Since 7.53.0.
+Added in 7.53.0.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.3
index f9e8236..9697cf1 100644
--- a/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_ACCEPTTIMEOUT_MS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ACCEPTTIMEOUT_MS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ACCEPTTIMEOUT_MS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ACCEPTTIMEOUT_MS \- timeout waiting for FTP server to connect back
diff --git a/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.3 b/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.3
index 1cf927d..d8b2a2b 100644
--- a/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.3
+++ b/docs/libcurl/opts/CURLOPT_ACCEPT_ENCODING.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,16 +20,16 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ACCEPT_ENCODING 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ACCEPT_ENCODING 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_ACCEPT_ENCODING \- enables automatic decompression of HTTP downloads
+CURLOPT_ACCEPT_ENCODING \- automatic decompression of HTTP downloads
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_ACCEPT_ENCODING, char *enc);
 .SH DESCRIPTION
-Pass a char * argument specifying what encoding you'd like.
+Pass a char * argument specifying what encoding you would like.
 
 Sets the contents of the Accept-Encoding: header sent in an HTTP request, and
 enables decoding of a response when a Content-Encoding: header is received.
@@ -95,7 +95,7 @@
 .SH AVAILABILITY
 This option was called CURLOPT_ENCODING before 7.21.6
 
-The specific libcurl you're using must have been built with zlib to be able to
+The specific libcurl you are using must have been built with zlib to be able to
 decompress gzip and deflate responses, with the brotli library to
 decompress brotli responses and with the zstd library to decompress zstd
 responses.
diff --git a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3 b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3
index 0acd0b0..5f76802 100644
--- a/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3
+++ b/docs/libcurl/opts/CURLOPT_ADDRESS_SCOPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ADDRESS_SCOPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ADDRESS_SCOPE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_ADDRESS_SCOPE \- set scope id for IPv6 addresses
+CURLOPT_ADDRESS_SCOPE \- scope id for IPv6 addresses
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_ALTSVC.3 b/docs/libcurl/opts/CURLOPT_ALTSVC.3
index 263591e..bd485ca 100644
--- a/docs/libcurl/opts/CURLOPT_ALTSVC.3
+++ b/docs/libcurl/opts/CURLOPT_ALTSVC.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ALTSVC 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ALTSVC 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_ALTSVC \- set alt-svc cache file name
+CURLOPT_ALTSVC \- alt-svc cache file name
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_ALTSVC_CTRL.3 b/docs/libcurl/opts/CURLOPT_ALTSVC_CTRL.3
index 9586824..8313416 100644
--- a/docs/libcurl/opts/CURLOPT_ALTSVC_CTRL.3
+++ b/docs/libcurl/opts/CURLOPT_ALTSVC_CTRL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ALTSVC_CTRL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ALTSVC_CTRL 3 "November 04, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ALTSVC_CTRL \- control alt-svc behavior
@@ -39,11 +39,15 @@
 Populate the long \fIbitmask\fP with the correct set of features to instruct
 libcurl how to handle Alt-Svc for the transfers using this handle.
 
-libcurl will only accept Alt-Svc headers over a secure transport, meaning
+libcurl only accepts Alt-Svc headers over a secure transport, meaning
 HTTPS. It will also only complete a request to an alternative origin if that
 origin is properly hosted over HTTPS. These requirements are there to make
 sure both the source and the destination are legitimate.
 
+Alternative services are only used when setting up new connections. If there
+exists an existing connection to the host in the connection pool, then that
+will be preferred.
+
 Setting any bit will enable the alt-svc engine.
 .IP "CURLALTSVC_READONLYFILE"
 Do not write the alt-svc cache back to the file specified with
diff --git a/docs/libcurl/opts/CURLOPT_APPEND.3 b/docs/libcurl/opts/CURLOPT_APPEND.3
index 09b04cc..fb4c068 100644
--- a/docs/libcurl/opts/CURLOPT_APPEND.3
+++ b/docs/libcurl/opts/CURLOPT_APPEND.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_APPEND 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_APPEND 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_APPEND \- enable appending to the remote file
+CURLOPT_APPEND \- append to the remote file
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_AUTOREFERER.3 b/docs/libcurl/opts/CURLOPT_AUTOREFERER.3
index 75f46c1..bae1910 100644
--- a/docs/libcurl/opts/CURLOPT_AUTOREFERER.3
+++ b/docs/libcurl/opts/CURLOPT_AUTOREFERER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_AUTOREFERER 3 "March 30, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_AUTOREFERER 3 "March 30, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_AUTOREFERER \- automatically update the referer header
diff --git a/docs/libcurl/opts/CURLOPT_AWS_SIGV4.3 b/docs/libcurl/opts/CURLOPT_AWS_SIGV4.3
index 40dbd00..d20e9ee 100644
--- a/docs/libcurl/opts/CURLOPT_AWS_SIGV4.3
+++ b/docs/libcurl/opts/CURLOPT_AWS_SIGV4.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_AWS_SIGV4 3 "January 25, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_AWS_SIGV4 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_AWS_SIGV4 \- V4 signature
@@ -93,6 +93,6 @@
 .SH NOTES
 This option overrides the other auth types you might have set in CURL_HTTPAUTH
 which should be highlighted as this makes this auth method special.
-This method can't be combined with other auth types.
+This method cannot be combined with other auth types.
 .SH "SEE ALSO"
 .BR CURLOPT_HEADEROPT "(3), " CURLOPT_HTTPHEADER "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3 b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3
index 6408ffc..7532efd 100644
--- a/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3
+++ b/docs/libcurl/opts/CURLOPT_BUFFERSIZE.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_BUFFERSIZE 3 "May 06, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_BUFFERSIZE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_BUFFERSIZE \- set preferred receive buffer size
+CURLOPT_BUFFERSIZE \- receive buffer size
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_CAINFO.3 b/docs/libcurl/opts/CURLOPT_CAINFO.3
index a1d7b61..0b2f0b0 100644
--- a/docs/libcurl/opts/CURLOPT_CAINFO.3
+++ b/docs/libcurl/opts/CURLOPT_CAINFO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CAINFO 3 "July 13, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CAINFO 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CAINFO \- path to Certificate Authority (CA) bundle
@@ -74,7 +74,7 @@
 }
 .fi
 .SH AVAILABILITY
-For the SSL engines that don't support certificate files the CURLOPT_CAINFO
+For the SSL engines that do not support certificate files the CURLOPT_CAINFO
 option is ignored. Schannel support added in libcurl 7.60.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
diff --git a/docs/libcurl/opts/CURLOPT_CAINFO_BLOB.3 b/docs/libcurl/opts/CURLOPT_CAINFO_BLOB.3
index 5a3f34f..5576ea3 100644
--- a/docs/libcurl/opts/CURLOPT_CAINFO_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_CAINFO_BLOB.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CAINFO_BLOB 3 "July 13, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CAINFO_BLOB 3 "July 21, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CAINFO_BLOB \- Certificate Authority (CA) bundle in PEM format
@@ -59,8 +59,8 @@
 .SH AVAILABILITY
 Added in 7.77.0.
 
-This option is supported by the OpenSSL, Secure
-Transport and Schannel backends.
+This option is supported by the BearSSL (since 7.79.0),
+OpenSSL, Secure Transport and Schannel backends.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_CAPATH.3 b/docs/libcurl/opts/CURLOPT_CAPATH.3
index d0028fb..0f25c4e 100644
--- a/docs/libcurl/opts/CURLOPT_CAPATH.3
+++ b/docs/libcurl/opts/CURLOPT_CAPATH.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CAPATH 3 "May 14, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CAPATH 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CAPATH \- specify directory holding CA certificates
+CURLOPT_CAPATH \- directory holding CA certificates
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_CERTINFO.3 b/docs/libcurl/opts/CURLOPT_CERTINFO.3
index 46c09fb..1af0f28 100644
--- a/docs/libcurl/opts/CURLOPT_CERTINFO.3
+++ b/docs/libcurl/opts/CURLOPT_CERTINFO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CERTINFO 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CERTINFO 3 "July 09, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CERTINFO \- request SSL certificate information
@@ -71,8 +71,9 @@
 }
 .fi
 .SH AVAILABILITY
-This option is supported by the OpenSSL, GnuTLS, Schannel, NSS and GSKit
-backends.
+This option is supported by the OpenSSL, GnuTLS, Schannel, NSS, GSKit and
+Secure Transport backends. Schannel support added in 7.50.0. Secure Transport
+support added in 7.79.0.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.3
index c821fc6..d4ec65c 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_BGN_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CHUNK_BGN_FUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CHUNK_BGN_FUNCTION 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CHUNK_BGN_FUNCTION \- callback before a transfer with FTP wildcardmatch
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3 b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
index a736f81..c331a29 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_DATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CHUNK_DATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CHUNK_DATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CHUNK_DATA \- custom pointer to the FTP chunk callbacks
+CURLOPT_CHUNK_DATA \- pointer passed to the FTP chunk callbacks
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.3
index bc6bf09..d2a971e 100644
--- a/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_CHUNK_END_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CHUNK_END_FUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CHUNK_END_FUNCTION 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CHUNK_END_FUNCTION \- callback after a transfer with FTP wildcardmatch
diff --git a/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.3 b/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.3
index 71a027f..5724d3e 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.3
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CLOSESOCKETDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CLOSESOCKETDATA 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CLOSESOCKETDATA \- pointer passed to the socket close callback
diff --git a/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.3 b/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.3
index 3090446..7b96b30 100644
--- a/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_CLOSESOCKETFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CLOSESOCKETFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CLOSESOCKETFUNCTION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CLOSESOCKETFUNCTION \- callback to socket close replacement function
+CURLOPT_CLOSESOCKETFUNCTION \- callback to socket close replacement
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3 b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
index de2c738..630f248 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONNECTTIMEOUT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CONNECTTIMEOUT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONNECTTIMEOUT \- timeout for the connect phase
diff --git a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3
index 87dc23a..5231970 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECTTIMEOUT_MS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONNECTTIMEOUT_MS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CONNECTTIMEOUT_MS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONNECTTIMEOUT_MS \- timeout for the connect phase
diff --git a/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.3 b/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.3
index dfea371..59b2b92 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECT_ONLY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONNECT_ONLY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CONNECT_ONLY 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONNECT_ONLY \- stop when connected to target server
diff --git a/docs/libcurl/opts/CURLOPT_CONNECT_TO.3 b/docs/libcurl/opts/CURLOPT_CONNECT_TO.3
index a9b5709..b220741 100644
--- a/docs/libcurl/opts/CURLOPT_CONNECT_TO.3
+++ b/docs/libcurl/opts/CURLOPT_CONNECT_TO.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONNECT_TO 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CONNECT_TO 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CONNECT_TO \- Connect to a specific host and port instead of the URL's host and port
+CURLOPT_CONNECT_TO \- connect to a specific host and port instead of the URL's host and port
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.3
index 77961ba..e5c33c6 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_CONV_FROM_NETWORK_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONV_FROM_NETWORK_FUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CONV_FROM_NETWORK_FUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONV_FROM_NETWORK_FUNCTION \- convert data from network to host encoding
@@ -50,7 +50,7 @@
 network encoding.  It is used when commands or ASCII data are received over
 the network.
 
-If you set a callback pointer to NULL, or don't set it at all, the built-in
+If you set a callback pointer to NULL, or do not set it at all, the built-in
 libcurl iconv functions will be used.  If HAVE_ICONV was not defined when
 libcurl was built, and no callback has been established, conversion will
 return the CURLE_CONV_REQD error code.
diff --git a/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.3
index ed37268..03fc916 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_CONV_FROM_UTF8_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONV_FROM_UTF8_FUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CONV_FROM_UTF8_FUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONV_FROM_UTF8_FUNCTION \- convert data from UTF8 to host encoding
@@ -49,7 +49,7 @@
 \fBCURLOPT_CONV_FROM_UTF8_FUNCTION\fP converts to host encoding from UTF8
 encoding. It is required only for SSL processing.
 
-If you set a callback pointer to NULL, or don't set it at all, the built-in
+If you set a callback pointer to NULL, or do not set it at all, the built-in
 libcurl iconv functions will be used.  If HAVE_ICONV was not defined when
 libcurl was built, and no callback has been established, conversion will
 return the CURLE_CONV_REQD error code.
diff --git a/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.3
index 055439c..8e2c57e 100644
--- a/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_CONV_TO_NETWORK_FUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CONV_TO_NETWORK_FUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CONV_TO_NETWORK_FUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_CONV_TO_NETWORK_FUNCTION \- convert data to network from host encoding
@@ -50,7 +50,7 @@
 network encoding.  It is used when commands or ASCII data are sent over the
 network.
 
-If you set a callback pointer to NULL, or don't set it at all, the built-in
+If you set a callback pointer to NULL, or do not set it at all, the built-in
 libcurl iconv functions will be used.  If HAVE_ICONV was not defined when
 libcurl was built, and no callback has been established, conversion will
 return the CURLE_CONV_REQD error code.
diff --git a/docs/libcurl/opts/CURLOPT_COOKIE.3 b/docs/libcurl/opts/CURLOPT_COOKIE.3
index 5581038..dae2864 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIE.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_COOKIE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_COOKIE \- set contents of HTTP Cookie header
+CURLOPT_COOKIE \- HTTP Cookie header
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -43,7 +43,7 @@
 
 The cookies set by this option are separate from the internal cookie storage
 held by the cookie engine and will not be modified by it. If you enable the
-cookie engine and either you've imported a cookie of the same name (e.g. 'foo')
+cookie engine and either you have imported a cookie of the same name (e.g. 'foo')
 or the server has set one, it will have no effect on the cookies you set here.
 A request to the server will send both the 'foo' held by the cookie engine and
 the 'foo' held by this option. To set a cookie that is instead held by the
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEFILE.3 b/docs/libcurl/opts/CURLOPT_COOKIEFILE.3
index c720e79..0d9055f 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEFILE.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIEFILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIEFILE 3 "May 16, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_COOKIEFILE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIEFILE \- file name to read cookies from
@@ -45,7 +45,7 @@
 This option only \fBreads\fP cookies. To make libcurl write cookies to file,
 see \fICURLOPT_COOKIEJAR(3)\fP.
 
-If you use the Set-Cookie file format and don't specify a domain then the
+If you use the Set-Cookie file format and do not specify a domain then the
 cookie is not sent since the domain will never match. To address this, set a
 domain in Set-Cookie line (doing that will include sub-domains) or preferably:
 use the Netscape format.
diff --git a/docs/libcurl/opts/CURLOPT_COOKIEJAR.3 b/docs/libcurl/opts/CURLOPT_COOKIEJAR.3
index 70d2fa4..0790982 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIEJAR.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIEJAR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIEJAR 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_COOKIEJAR 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIEJAR \- file name to store cookies to
@@ -36,10 +36,10 @@
 stdout. Using this option also enables cookies for this session, so if you for
 example follow a location it will make matching cookies get sent accordingly.
 
-Note that libcurl doesn't read any cookies from the cookie jar. If you want to
+Note that libcurl does not read any cookies from the cookie jar. If you want to
 read cookies from a file, use \fICURLOPT_COOKIEFILE(3)\fP.
 
-If the cookie jar file can't be created or written to (when the
+If the cookie jar file cannot be created or written to (when the
 \fIcurl_easy_cleanup(3)\fP is called), libcurl will not and cannot report an
 error for this. Using \fICURLOPT_VERBOSE(3)\fP or
 \fICURLOPT_DEBUGFUNCTION(3)\fP will get a warning to display, but that is the
diff --git a/docs/libcurl/opts/CURLOPT_COOKIELIST.3 b/docs/libcurl/opts/CURLOPT_COOKIELIST.3
index 84b02ed..d6af9ae 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIELIST.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIELIST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIELIST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_COOKIELIST 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIELIST \- add to or manipulate cookies held in memory
@@ -38,10 +38,10 @@
 cookie engine. This adds that single cookie to the internal cookie store.
 
 Exercise caution if you are using this option and multiple transfers may occur.
-If you use the Set-Cookie format and don't specify a domain then the cookie is
+If you use the Set-Cookie format and do not specify a domain then the cookie is
 sent for any domain (even after redirects are followed) and cannot be modified
 by a server-set cookie. If a server sets a cookie of the same name (or maybe
-you've imported one) then both will be sent on a future transfer to that
+you have imported one) then both will be sent on a future transfer to that
 server, likely not what you intended. To address these issues set a domain in
 Set-Cookie (doing that will include sub-domains) or use the Netscape format as
 shown in EXAMPLE.
@@ -91,7 +91,7 @@
 before a transfer is performed. Cookies in the list that have the same
 hostname, path and name as in my_cookie are skipped. That is because
 libcurl has already imported my_cookie and it's considered a "live"
-cookie. A live cookie won't be replaced by one read from a file.
+cookie. A live cookie will not be replaced by one read from a file.
 */
 curl_easy_setopt(curl, CURLOPT_COOKIEFILE, "cookies.txt");  /* import */
 
diff --git a/docs/libcurl/opts/CURLOPT_COOKIESESSION.3 b/docs/libcurl/opts/CURLOPT_COOKIESESSION.3
index dde63f5..b85d9f5 100644
--- a/docs/libcurl/opts/CURLOPT_COOKIESESSION.3
+++ b/docs/libcurl/opts/CURLOPT_COOKIESESSION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COOKIESESSION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_COOKIESESSION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COOKIESESSION \- start a new cookie session
@@ -48,7 +48,7 @@
 if(curl) {
   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/foo.bin");
 
-  /* new "session", don't load session cookies */
+  /* new "session", do not load session cookies */
   curl_easy_setopt(curl, CURLOPT_COOKIESESSION, 1L);
 
   /* get the (non session) cookies from this file */
diff --git a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3 b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3
index d1dbdbb..d94d2b2 100644
--- a/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3
+++ b/docs/libcurl/opts/CURLOPT_COPYPOSTFIELDS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_COPYPOSTFIELDS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_COPYPOSTFIELDS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_COPYPOSTFIELDS \- have libcurl copy data to POST
diff --git a/docs/libcurl/opts/CURLOPT_CRLF.3 b/docs/libcurl/opts/CURLOPT_CRLF.3
index 0d276a6..1b4f96e 100644
--- a/docs/libcurl/opts/CURLOPT_CRLF.3
+++ b/docs/libcurl/opts/CURLOPT_CRLF.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CRLF 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CRLF 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CRLF \- enable/disable CRLF conversion
+CURLOPT_CRLF \- CRLF conversion
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_CRLFILE.3 b/docs/libcurl/opts/CURLOPT_CRLFILE.3
index c896f0c..1232913 100644
--- a/docs/libcurl/opts/CURLOPT_CRLFILE.3
+++ b/docs/libcurl/opts/CURLOPT_CRLFILE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CRLFILE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CRLFILE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CRLFILE \- specify a Certificate Revocation List file
+CURLOPT_CRLFILE \- Certificate Revocation List file
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_CURLU.3 b/docs/libcurl/opts/CURLOPT_CURLU.3
index 7f23da1..d88e2f7 100644
--- a/docs/libcurl/opts/CURLOPT_CURLU.3
+++ b/docs/libcurl/opts/CURLOPT_CURLU.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CURLU 3 "February 21, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CURLU 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CURLU \- set URL with CURLU *
+CURLOPT_CURLU \- URL in CURLU * format
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -37,9 +37,9 @@
 transfer is started.
 
 libcurl will use this handle and its contents read-only and will not change
-its contents. An application can very well update the contents of the URL
-handle after a transfer is done and if the same handle is then used in a
-subsequent request the updated contents will then be used.
+its contents. An application can update the contents of the URL handle after a
+transfer is done and if the same handle is then used in a subsequent request
+the updated contents will then be used.
 .SH DEFAULT
 The default value of this parameter is NULL.
 .SH PROTOCOLS
@@ -68,4 +68,4 @@
 .SH "SEE ALSO"
 .BR CURLOPT_URL "(3), "
 .BR curl_url "(3), " curl_url_get "(3), " curl_url_set "(3), "
-.BR curl_url_dup "(3), " curl_url_cleanup "(3), "
+.BR curl_url_dup "(3), " curl_url_cleanup "(3), " curl_url_strerror "(3)"
diff --git a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3 b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3
index 40b649d..c78a2da 100644
--- a/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3
+++ b/docs/libcurl/opts/CURLOPT_CUSTOMREQUEST.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_CUSTOMREQUEST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_CUSTOMREQUEST 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_CUSTOMREQUEST \- custom string for request
+CURLOPT_CUSTOMREQUEST \- custom request method
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -32,7 +32,7 @@
 Pass a pointer to a null-terminated string as parameter.
 
 When you change the request method by setting \fICURLOPT_CUSTOMREQUEST(3)\fP
-to something, you don't actually change how libcurl behaves or acts in regards
+to something, you do not actually change how libcurl behaves or acts in regards
 to the particular request method, it will only change the actual string sent
 in the request.
 
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGDATA.3 b/docs/libcurl/opts/CURLOPT_DEBUGDATA.3
index 284e93a..c205fd4 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGDATA.3
+++ b/docs/libcurl/opts/CURLOPT_DEBUGDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DEBUGDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DEBUGDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_DEBUGDATA \- custom pointer for debug callback
+CURLOPT_DEBUGDATA \- pointer passed to the debug callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -37,7 +37,31 @@
 .SH PROTOCOLS
 All
 .SH EXAMPLE
-https://curl.se/libcurl/c/debug.html
+.nf
+int main(void)
+{
+  CURL *curl;
+  CURLcode res;
+  struct data my_tracedata;
+
+  curl = curl_easy_init();
+  if(curl) {
+    curl_easy_setopt(curl, CURLOPT_DEBUGFUNCTION, my_trace);
+
+    curl_easy_setopt(curl, CURLOPT_DEBUGDATA, &my_tracedata);
+
+    /* the DEBUGFUNCTION has no effect until we enable VERBOSE */
+    curl_easy_setopt(curl, CURLOPT_VERBOSE, 1L);
+
+    curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
+    res = curl_easy_perform(curl);
+
+    /* always cleanup */
+    curl_easy_cleanup(curl);
+  }
+  return 0;
+}
+.fi
 .SH AVAILABILITY
 Always
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3 b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3
index 1fdff77..240f2b2 100644
--- a/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_DEBUGFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DEBUGFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DEBUGFUNCTION 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DEBUGFUNCTION \- debug callback
diff --git a/docs/libcurl/opts/CURLOPT_DEFAULT_PROTOCOL.3 b/docs/libcurl/opts/CURLOPT_DEFAULT_PROTOCOL.3
index 2c3fdcb..60d42a9 100644
--- a/docs/libcurl/opts/CURLOPT_DEFAULT_PROTOCOL.3
+++ b/docs/libcurl/opts/CURLOPT_DEFAULT_PROTOCOL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DEFAULT_PROTOCOL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DEFAULT_PROTOCOL 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DEFAULT_PROTOCOL \- default protocol to use if the URL is missing a
diff --git a/docs/libcurl/opts/CURLOPT_DIRLISTONLY.3 b/docs/libcurl/opts/CURLOPT_DIRLISTONLY.3
index 74e615e..87cd0ad 100644
--- a/docs/libcurl/opts/CURLOPT_DIRLISTONLY.3
+++ b/docs/libcurl/opts/CURLOPT_DIRLISTONLY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DIRLISTONLY 3 "December 31, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DIRLISTONLY 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DIRLISTONLY \- ask for names only in a directory listing
@@ -43,7 +43,7 @@
 include subdirectories and symbolic links.
 
 Setting this option to 1 also implies a directory listing even if the URL
-doesn't end with a slash, which otherwise is necessary.
+does not end with a slash, which otherwise is necessary.
 
 Do NOT use this option if you also use \fICURLOPT_WILDCARDMATCH(3)\fP as it
 will effectively break that feature then.
diff --git a/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3 b/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3
index 61b1902..e34d236 100644
--- a/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3
+++ b/docs/libcurl/opts/CURLOPT_DISALLOW_USERNAME_IN_URL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DISALLOW_USERNAME_IN_URL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DISALLOW_USERNAME_IN_URL 3 "October 25, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DISALLOW_USERNAME_IN_URL \- disallow specifying username in the url
@@ -47,7 +47,7 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.61.0
+Added in 7.61.0
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 
diff --git a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3 b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3
index 6ba426f..3bc4a6c 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_CACHE_TIMEOUT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_CACHE_TIMEOUT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DNS_CACHE_TIMEOUT 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_DNS_CACHE_TIMEOUT \- set life-time for DNS cache entries
+CURLOPT_DNS_CACHE_TIMEOUT \- life-time for DNS cache entries
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -34,13 +34,13 @@
 caching, or set to -1 to make the cached entries remain forever. By default,
 libcurl caches this info for 60 seconds.
 
-The name resolve functions of various libc implementations don't re-read name
+The name resolve functions of various libc implementations do not re-read name
 server information unless explicitly told so (for example, by calling
 \fIres_init(3)\fP). This may cause libcurl to keep using the older server even
 if DHCP has updated the server info, and this may look like a DNS cache issue
 to the casual libcurl-app user.
 
-Note that DNS entries have a "TTL" property but libcurl doesn't use that. This
+Note that DNS entries have a "TTL" property but libcurl does not use that. This
 DNS cache timeout is entirely speculative that a name will resolve to the same
 address for a certain small amount of time into the future.
 .SH DEFAULT
@@ -53,7 +53,7 @@
 if(curl) {
   curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/foo.bin");
 
-  /* only reuse addresses for a very short time */
+  /* only reuse addresses for a short time */
   curl_easy_setopt(curl, CURLOPT_DNS_CACHE_TIMEOUT, 2L);
 
   ret = curl_easy_perform(curl);
diff --git a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3 b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3
index 2d565c8..c8deb60 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_INTERFACE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_INTERFACE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DNS_INTERFACE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_DNS_INTERFACE \- set interface to speak DNS over
+CURLOPT_DNS_INTERFACE \- interface to speak DNS over
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -31,7 +31,7 @@
 .SH DESCRIPTION
 Pass a char * as parameter. Set the name of the network interface that the DNS
 resolver should bind to. This must be an interface name (not an address). Set
-this option to NULL to use the default setting (don't bind to a specific
+this option to NULL to use the default setting (do not bind to a specific
 interface).
 
 The application does not have to keep the string around after setting this
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.3 b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.3
index 79144da..4bc04c6 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP4.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_LOCAL_IP4 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DNS_LOCAL_IP4 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_LOCAL_IP4 \- IPv4 address to bind DNS resolves to
@@ -31,7 +31,7 @@
 .SH DESCRIPTION
 Set the local IPv4 \fIaddress\fP that the resolver should bind to. The
 argument should be of type char * and contain a single numerical IPv4 address
-as a string.  Set this option to NULL to use the default setting (don't bind
+as a string.  Set this option to NULL to use the default setting (do not bind
 to a specific IP address).
 
 The application does not have to keep the string around after setting this
diff --git a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.3 b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.3
index 42a1dce..52e0b4e 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_LOCAL_IP6.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_LOCAL_IP6 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DNS_LOCAL_IP6 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DNS_LOCAL_IP6 \- IPv6 address to bind DNS resolves to
@@ -31,7 +31,7 @@
 .SH DESCRIPTION
 Set the local IPv6 \fIaddress\fP that the resolver should bind to. The
 argument should be of type char * and contain a single IPv6 address as a
-string.  Set this option to NULL to use the default setting (don't bind to a
+string.  Set this option to NULL to use the default setting (do not bind to a
 specific IP address).
 
 The application does not have to keep the string around after setting this
diff --git a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3 b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3
index d73fdf6..59492c2 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_SERVERS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,17 +20,17 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_SERVERS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DNS_SERVERS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_DNS_SERVERS \- set preferred DNS servers
+CURLOPT_DNS_SERVERS \- DNS servers to use
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_DNS_SERVERS, char *servers);
 .SH DESCRIPTION
 Pass a char * that is the list of DNS servers to be used instead of the system
-default.  The format of the dns servers option is:
+default. The format of the dns servers option is:
 
 host[:port][,host[:port]]...
 
diff --git a/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3 b/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3
index 7d2f71c..d4df16d 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_SHUFFLE_ADDRESSES.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_SHUFFLE_ADDRESSES 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DNS_SHUFFLE_ADDRESSES 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_DNS_SHUFFLE_ADDRESSES \- Shuffle addresses when a hostname returns more than one
+CURLOPT_DNS_SHUFFLE_ADDRESSES \- shuffle IP addresses for hostname
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3 b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3
index a682252..9816b6f 100644
--- a/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3
+++ b/docs/libcurl/opts/CURLOPT_DNS_USE_GLOBAL_CACHE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DNS_USE_GLOBAL_CACHE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DNS_USE_GLOBAL_CACHE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_DNS_USE_GLOBAL_CACHE \- enable/disable global DNS cache
+CURLOPT_DNS_USE_GLOBAL_CACHE \- global DNS cache
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYHOST.3 b/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYHOST.3
index 27efa2a..511952a 100644
--- a/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYHOST.3
+++ b/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYHOST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DOH_SSL_VERIFYHOST 3 "July 16, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DOH_SSL_VERIFYHOST 3 "July 16, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DOH_SSL_VERIFYHOST \- verify the host name in the DoH SSL certificate
diff --git a/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYPEER.3 b/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYPEER.3
index 79d4015..28d39ed 100644
--- a/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYPEER.3
+++ b/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYPEER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DOH_SSL_VERIFYPEER 3 "July 16, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DOH_SSL_VERIFYPEER 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DOH_SSL_VERIFYPEER \- verify the DoH SSL certificate
@@ -33,7 +33,7 @@
 
 This option tells curl to verify the authenticity of the DoH (DNS-over-HTTPS)
 server's certificate. A value of 1 means curl verifies; 0 (zero) means it
-doesn't.
+does not.
 
 This option is the DoH equivalent of \fICURLOPT_SSL_VERIFYPEER(3)\fP and
 only affects requests to the DoH server.
@@ -54,7 +54,7 @@
 Authenticating the certificate is not enough to be sure about the server. You
 typically also want to ensure that the server is the server you mean to be
 talking to.  Use \fICURLOPT_DOH_SSL_VERIFYHOST(3)\fP for that. The check
-that the host name in the certificate is valid for the host name you're
+that the host name in the certificate is valid for the host name you are
 connecting to is done independently of the
 \fICURLOPT_DOH_SSL_VERIFYPEER(3)\fP option.
 
diff --git a/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYSTATUS.3 b/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYSTATUS.3
index f0ebca7..93586e5 100644
--- a/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYSTATUS.3
+++ b/docs/libcurl/opts/CURLOPT_DOH_SSL_VERIFYSTATUS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DOH_SSL_VERIFYSTATUS 3 "July 16, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DOH_SSL_VERIFYSTATUS 3 "July 16, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DOH_SSL_VERIFYSTATUS \- verify the DoH SSL certificate's status
diff --git a/docs/libcurl/opts/CURLOPT_DOH_URL.3 b/docs/libcurl/opts/CURLOPT_DOH_URL.3
index f06d471..a845cea 100644
--- a/docs/libcurl/opts/CURLOPT_DOH_URL.3
+++ b/docs/libcurl/opts/CURLOPT_DOH_URL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 2018 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_DOH_URL 3 "July 16, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_DOH_URL 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_DOH_URL \- provide the DNS-over-HTTPS URL
@@ -34,7 +34,7 @@
 must be URL-encoded in the following format: "https://host:port/path". It MUST
 specify a HTTPS URL.
 
-libcurl doesn't validate the syntax or use this variable until the transfer is
+libcurl does not validate the syntax or use this variable until the transfer is
 issued. Even if you set a crazy value here, \fIcurl_easy_setopt(3)\fP will
 still return \fICURLE_OK\fP.
 
@@ -45,14 +45,17 @@
 the address for the DoH server with \fICURLOPT_RESOLVE(3)\fP.
 
 Disable DoH use again by setting this option to NULL.
+.SH "INHERIT OPTIONS"
+DoH lookups use SSL and some SSL settings from your transfer are inherited,
+like \fICURLOPT_SSL_CTX_FUNCTION(3)\fP.
 
-\fBAdvanced:\fP The DoH lookups use SSL so some SSL settings from your transfer
-are inherited. The hostname and peer certificate verification settings are not
-inherited and can be controlled separately via
-\fICURLOPT_DOH_SSL_VERIFYHOST(3)\fP and \fICURLOPT_DOH_SSL_VERIFYPEER(3)\fP.
-Note \fICURLOPT_SSL_CTX_FUNCTION(3)\fP is inherited.
+The hostname and peer certificate verification settings are not inherited but
+can be controlled separately via \fICURLOPT_DOH_SSL_VERIFYHOST(3)\fP and
+\fICURLOPT_DOH_SSL_VERIFYPEER(3)\fP.
+
+A set \fICURLOPT_OPENSOCKETFUNCTION(3)\fP callback is not inherited.
 .SH DEFAULT
-NULL - there is no default DoH URL. If this option isn't set, libcurl will use
+NULL - there is no default DoH URL. If this option is not set, libcurl will use
 the default name resolver.
 .SH PROTOCOLS
 All
@@ -71,7 +74,7 @@
 Returns CURLE_OK on success or CURLE_OUT_OF_MEMORY if there was insufficient
 heap space.
 
-Note that \fIcurl_easy_setopt(3)\fP won't actually parse the given string so
+Note that \fIcurl_easy_setopt(3)\fP will not actually parse the given string so
 given a bad DoH URL, curl will not detect a problem until it tries to resolve
 a name with it.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_EGDSOCKET.3 b/docs/libcurl/opts/CURLOPT_EGDSOCKET.3
index ca85340..451e3b3 100644
--- a/docs/libcurl/opts/CURLOPT_EGDSOCKET.3
+++ b/docs/libcurl/opts/CURLOPT_EGDSOCKET.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_EGDSOCKET 3 "July 14, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_EGDSOCKET 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_EGDSOCKET \- set EGD socket path
+CURLOPT_EGDSOCKET \- EGD socket path
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3 b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
index 80df8e6..0090e95 100644
--- a/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
+++ b/docs/libcurl/opts/CURLOPT_ERRORBUFFER.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ERRORBUFFER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ERRORBUFFER 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_ERRORBUFFER \- set error buffer for error messages
+CURLOPT_ERRORBUFFER \- error buffer for error messages
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -35,9 +35,9 @@
 \fBmust be at least CURL_ERROR_SIZE bytes big\fP.
 
 You must keep the associated buffer available until libcurl no longer needs
-it. Failing to do so will cause very odd behavior or even crashes. libcurl
-will need it until you call \fIcurl_easy_cleanup(3)\fP or you set the same
-option again to use a different pointer.
+it. Failing to do so will cause odd behavior or even crashes. libcurl will
+need it until you call \fIcurl_easy_cleanup(3)\fP or you set the same option
+again to use a different pointer.
 
 Do not rely on the contents of the buffer unless an error code was returned.
 Since 7.60.0 libcurl will initialize the contents of the error buffer to an
@@ -90,4 +90,4 @@
 .SH "SEE ALSO"
 .BR CURLOPT_DEBUGFUNCTION "(3), " CURLOPT_VERBOSE "(3), "
 .BR curl_easy_strerror "(3), " curl_multi_strerror "(3), "
-.BR curl_share_strerror "(3) "
+.BR curl_share_strerror "(3), " curl_url_strerror "(3)"
diff --git a/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.3
index b002a43..81f4d95 100644
--- a/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_EXPECT_100_TIMEOUT_MS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_EXPECT_100_TIMEOUT_MS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_EXPECT_100_TIMEOUT_MS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_EXPECT_100_TIMEOUT_MS \- timeout for Expect: 100-continue response
diff --git a/docs/libcurl/opts/CURLOPT_FAILONERROR.3 b/docs/libcurl/opts/CURLOPT_FAILONERROR.3
index 3f9a5f8..a60f16b 100644
--- a/docs/libcurl/opts/CURLOPT_FAILONERROR.3
+++ b/docs/libcurl/opts/CURLOPT_FAILONERROR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FAILONERROR 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FAILONERROR 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FAILONERROR \- request failure on HTTP response >= 400
diff --git a/docs/libcurl/opts/CURLOPT_FILETIME.3 b/docs/libcurl/opts/CURLOPT_FILETIME.3
index fa2ff0e..3471489 100644
--- a/docs/libcurl/opts/CURLOPT_FILETIME.3
+++ b/docs/libcurl/opts/CURLOPT_FILETIME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FILETIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FILETIME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FILETIME \- get the modification time of the remote resource
diff --git a/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.3 b/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.3
index f2ebbc7..93a8104 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_DATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FNMATCH_DATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FNMATCH_DATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_FNMATCH_DATA \- custom pointer to fnmatch callback
+CURLOPT_FNMATCH_DATA \- pointer passed to the fnmatch callback
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3
index 7df0cac..7431d43 100644
--- a/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_FNMATCH_FUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FNMATCH_FUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FNMATCH_FUNCTION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_FNMATCH_FUNCTION \- wildcard matching function callback
+CURLOPT_FNMATCH_FUNCTION \- wildcard match callback
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3 b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3
index 742baf8..7e57cb3 100644
--- a/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3
+++ b/docs/libcurl/opts/CURLOPT_FOLLOWLOCATION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FOLLOWLOCATION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FOLLOWLOCATION 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FOLLOWLOCATION \- follow HTTP 3xx redirects
@@ -52,7 +52,7 @@
 will make libcurl send the same method again.
 
 For users who think the existing location following is too naive, too simple
-or just lacks features, it is very easy to instead implement your own redirect
+or just lacks features, it is easy to instead implement your own redirect
 follow logic with the use of \fIcurl_easy_getinfo(3)\fP's
 \fICURLINFO_REDIRECT_URL(3)\fP option instead of using
 \fICURLOPT_FOLLOWLOCATION(3)\fP.
diff --git a/docs/libcurl/opts/CURLOPT_FORBID_REUSE.3 b/docs/libcurl/opts/CURLOPT_FORBID_REUSE.3
index c3e659a..1620a5e 100644
--- a/docs/libcurl/opts/CURLOPT_FORBID_REUSE.3
+++ b/docs/libcurl/opts/CURLOPT_FORBID_REUSE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FORBID_REUSE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FORBID_REUSE 3 "September 18, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FORBID_REUSE \- make connection get closed at once after use
@@ -58,3 +58,4 @@
 Returns CURLE_OK
 .SH "SEE ALSO"
 .BR CURLOPT_FRESH_CONNECT "(3), " CURLOPT_MAXCONNECTS "(3), "
+.BR CURLOPT_MAXLIFETIME_CONN "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.3 b/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.3
index 30d2503..02154ef 100644
--- a/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.3
+++ b/docs/libcurl/opts/CURLOPT_FRESH_CONNECT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FRESH_CONNECT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FRESH_CONNECT 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FRESH_CONNECT \- force a new connection to be used
@@ -35,7 +35,7 @@
 impact performance.
 
 Related functionality is \fICURLOPT_FORBID_REUSE(3)\fP which makes sure the
-connection is closed after use so that it won't be re-used.
+connection is closed after use so that it will not be re-used.
 
 Set \fIfresh\fP to 0 to have libcurl attempt re-using an existing connection
 (default behavior).
diff --git a/docs/libcurl/opts/CURLOPT_FTPPORT.3 b/docs/libcurl/opts/CURLOPT_FTPPORT.3
index 8203aff..d6c7f56 100644
--- a/docs/libcurl/opts/CURLOPT_FTPPORT.3
+++ b/docs/libcurl/opts/CURLOPT_FTPPORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTPPORT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTPPORT 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTPPORT \- make FTP transfer active
@@ -37,7 +37,7 @@
 address. The string may be a plain IP address, a host name, a network
 interface name (under Unix) or just a '-' symbol to let the library use your
 system's default IP address. Default FTP operations are passive, and thus
-won't use PORT.
+will not use PORT.
 
 The address can be followed by a ':' to specify a port, optionally followed by
 a '-' to specify a port range.  If the port specified is 0, the operating
diff --git a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3 b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3
index 7bed1b7..6673178 100644
--- a/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3
+++ b/docs/libcurl/opts/CURLOPT_FTPSSLAUTH.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTPSSLAUTH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTPSSLAUTH 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_FTPSSLAUTH \- set order in which to attempt TLS vs SSL when using FTP
+CURLOPT_FTPSSLAUTH \- order in which to attempt TLS vs SSL
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3 b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3
index ad83700..1d12de7 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_ACCOUNT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_ACCOUNT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_ACCOUNT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_FTP_ACCOUNT \- set account info for FTP
+CURLOPT_FTP_ACCOUNT \- account info for FTP
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.3 b/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.3
index c76dd03..f9aedc4 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_ALTERNATIVE_TO_USER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_ALTERNATIVE_TO_USER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_ALTERNATIVE_TO_USER 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_ALTERNATIVE_TO_USER \- command to use instead of USER with FTP
diff --git a/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.3 b/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.3
index 2170112..5cf7438 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_CREATE_MISSING_DIRS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_CREATE_MISSING_DIRS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_CREATE_MISSING_DIRS 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_CREATE_MISSING_DIRS \- create missing dirs for FTP and SFTP
@@ -45,13 +45,13 @@
 changes working directory.
 
 For SFTP requests, libcurl will attempt to create the remote directory if it
-can't obtain a handle to the target-location. The creation will fail if a file
+cannot obtain a handle to the target-location. The creation will fail if a file
 of the same name as the directory to create already exists or lack of
 permissions prevents creation.
 
 Setting \fIcreate\fP to \fICURLFTP_CREATE_DIR_RETRY\fP (2), tells libcurl to
 retry the CWD command again if the subsequent MKD command fails. This is
-especially useful if you're doing many simultaneous connections against the
+especially useful if you are doing many simultaneous connections against the
 same server and they all have this option enabled, as then CWD may first fail
 but then another connection does MKD before this connection and thus MKD fails
 but trying CWD works!
diff --git a/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.3 b/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.3
index 380e615..56c5b7b 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_FILEMETHOD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_FILEMETHOD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_FILEMETHOD 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_FILEMETHOD \- select directory traversing method for FTP
@@ -34,7 +34,7 @@
 Pass a long telling libcurl which \fImethod\fP to use to reach a file on a
 FTP(S) server.
 
-This option exists because some server implementations aren't compliant to
+This option exists because some server implementations are not compliant to
 what the standards say should work.
 
 The argument should be one of the following alternatives:
diff --git a/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.3 b/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.3
index 0a36ea8..b8dbe97 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_RESPONSE_TIMEOUT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_RESPONSE_TIMEOUT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_RESPONSE_TIMEOUT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_RESPONSE_TIMEOUT \- time allowed to wait for FTP response
diff --git a/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.3 b/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.3
index 1c4b685..798a195 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_SKIP_PASV_IP.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_SKIP_PASV_IP 3 "November 24, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_SKIP_PASV_IP 3 "November 24, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_SKIP_PASV_IP \- ignore the IP address in the PASV response
diff --git a/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.3 b/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.3
index a0bb82a..494af98 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_SSL_CCC.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_SSL_CCC 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_SSL_CCC 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_FTP_SSL_CCC \- switch off SSL again with FTP after auth
@@ -35,7 +35,7 @@
 channel communication will be unencrypted. This allows NAT routers to follow
 the FTP transaction. Pass a long using one of the values below
 .IP CURLFTPSSL_CCC_NONE
-Don't attempt to use CCC.
+do not attempt to use CCC.
 .IP CURLFTPSSL_CCC_PASSIVE
 Do not initiate the shutdown, but wait for the server to do it. Do not send a
 reply.
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3 b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3
index 94a9f3c..af8cf6d 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPRT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_USE_EPRT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_USE_EPRT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_FTP_USE_EPRT \- enable/disable use of EPRT with FTP
+CURLOPT_FTP_USE_EPRT \- use EPRT for FTP
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -40,6 +40,22 @@
 .SH DEFAULT
 .SH PROTOCOLS
 .SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/file.txt");
+
+  /* contact us back, aka "active" FTP */
+  curl_easy_setopt(curl, CURLOPT_FTPPORT, "-");
+
+  /* FTP the way the neanderthals did it */
+  curl_easy_setopt(curl, CURLOPT_FTP_USE_EPRT, 0L);
+
+  ret = curl_easy_perform(curl);
+
+  curl_easy_cleanup(curl);
+}
+.fi
 .SH AVAILABILITY
 Added in 7.10.5
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3 b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3
index 7600021..d1a3bac 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_EPSV.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2014, 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_USE_EPSV 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_USE_EPSV 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_FTP_USE_EPSV \- enable/disable use of EPSV
+CURLOPT_FTP_USE_EPSV \- use EPSV for FTP
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3 b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3
index 35e41d4..121e9d4 100644
--- a/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3
+++ b/docs/libcurl/opts/CURLOPT_FTP_USE_PRET.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_FTP_USE_PRET 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_FTP_USE_PRET 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_FTP_USE_PRET \- enable the PRET command
+CURLOPT_FTP_USE_PRET \- use PRET for FTP
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3 b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3
index cf3342b..6387eda 100644
--- a/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3
+++ b/docs/libcurl/opts/CURLOPT_GSSAPI_DELEGATION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_GSSAPI_DELEGATION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_GSSAPI_DELEGATION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_GSSAPI_DELEGATION \- set allowed GSS-API delegation
+CURLOPT_GSSAPI_DELEGATION \- allowed GSS-API delegation
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3
index f196884..60233e1 100644
--- a/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS 3 "September 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS \- head start for ipv6 for happy eyeballs
@@ -41,6 +41,8 @@
 currently defaults to 200 ms. Firefox and Chrome currently default to 300 ms.
 .SH DEFAULT
 CURL_HET_DEFAULT (currently defined as 200L)
+.SH PROTOCOLS
+All except FILE
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -58,3 +60,6 @@
 Added in 7.59.0
 .SH RETURN VALUE
 Returns CURLE_OK
+.SH SEE ALSO
+.BR CURLOPT_CONNECTTIMEOUT_MS "(3), "
+.BR CURLOPT_TIMEOUT "(3), " CURLOPT_LOW_SPEED_LIMIT "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3 b/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3
index 59c1fb3..16963d8 100644
--- a/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3
+++ b/docs/libcurl/opts/CURLOPT_HAPROXYPROTOCOL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HAPROXYPROTOCOL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HAPROXYPROTOCOL 3 "September 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HAPROXYPROTOCOL \- send HAProxy PROXY protocol v1 header
@@ -56,3 +56,5 @@
 Along with HTTP. Added in 7.60.0.
 .SH RETURN VALUE
 Returns CURLE_OK if HTTP is enabled, and CURLE_UNKNOWN_OPTION if not.
+.SH SEE ALSO
+.BR CURLOPT_PROXY "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_HEADER.3 b/docs/libcurl/opts/CURLOPT_HEADER.3
index b2640fa..3a67a47 100644
--- a/docs/libcurl/opts/CURLOPT_HEADER.3
+++ b/docs/libcurl/opts/CURLOPT_HEADER.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HEADER 3 "September 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HEADER \- pass headers to the data stream
@@ -63,6 +63,8 @@
   curl_easy_perform(curl);
 }
 .fi
+.SH AVAILABILITY
+Provided in all libcurl versions.
 .SH RETURN VALUE
 Returns CURLE_OK.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_HEADERDATA.3 b/docs/libcurl/opts/CURLOPT_HEADERDATA.3
index b8b20c0..5675c02 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERDATA.3
+++ b/docs/libcurl/opts/CURLOPT_HEADERDATA.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADERDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HEADERDATA 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HEADERDATA \- pointer to pass to header callback
diff --git a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3 b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
index f9e7525..437b48f 100644
--- a/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_HEADERFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADERFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HEADERFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HEADERFUNCTION \- callback that receives header data
@@ -39,16 +39,16 @@
 
 This function gets called by libcurl as soon as it has received header
 data. The header callback will be called once for each header and only
-complete header lines are passed on to the callback. Parsing headers is very
-easy using this. \fIbuffer\fP points to the delivered data, and the size of
-that data is \fInitems\fP; \fIsize\fP is always 1. Do not assume that the
-header line is null-terminated!
+complete header lines are passed on to the callback. Parsing headers is easy
+to do using this callback. \fIbuffer\fP points to the delivered data, and the
+size of that data is \fInitems\fP; \fIsize\fP is always 1. Do not assume that
+the header line is null-terminated!
 
 The pointer named \fIuserdata\fP is the one you set with the
 \fICURLOPT_HEADERDATA(3)\fP option.
 
 This callback function must return the number of bytes actually taken care of.
-If that amount differs from the amount passed in to your function, it'll signal
+If that amount differs from the amount passed in to your function, it will signal
 an error to the library. This will cause the transfer to get aborted and the
 libcurl function in progress will return \fICURLE_WRITE_ERROR\fP.
 
diff --git a/docs/libcurl/opts/CURLOPT_HEADEROPT.3 b/docs/libcurl/opts/CURLOPT_HEADEROPT.3
index 2d75c62..a37e39e 100644
--- a/docs/libcurl/opts/CURLOPT_HEADEROPT.3
+++ b/docs/libcurl/opts/CURLOPT_HEADEROPT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HEADEROPT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HEADEROPT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HEADEROPT \- set how to send HTTP headers
+CURLOPT_HEADEROPT \- send HTTP headers to both proxy and host or separately
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_HSTS.3 b/docs/libcurl/opts/CURLOPT_HSTS.3
index 6d107e7..da76033 100644
--- a/docs/libcurl/opts/CURLOPT_HSTS.3
+++ b/docs/libcurl/opts/CURLOPT_HSTS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 2020 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,21 +20,16 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HSTS 3 "November 13, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HSTS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HSTS \- set HSTS cache file name
+CURLOPT_HSTS \- HSTS cache file name
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HSTS, char *filename);
 .fi
-.SH EXPERIMENTAL
-Warning: this feature is early code and is marked as experimental. It can only
-be enabled by explicitly telling configure with \fB--enable-hsts\fP. You are
-advised to not ship this in production before the experimental label is
-removed.
 .SH DESCRIPTION
 Make the \fIfilename\fP point to a file name to load an existing HSTS cache
 from, and to store the cache in when the easy handle is closed. Setting a file
diff --git a/docs/libcurl/opts/CURLOPT_HSTSREADDATA.3 b/docs/libcurl/opts/CURLOPT_HSTSREADDATA.3
index 2eda548..c5aadc7 100644
--- a/docs/libcurl/opts/CURLOPT_HSTSREADDATA.3
+++ b/docs/libcurl/opts/CURLOPT_HSTSREADDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HSTSREADDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HSTSREADDATA 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HSTSREADDATA \- pointer passed to the HSTS read callback
@@ -28,17 +28,12 @@
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HSTSREADDATA, void *pointer);
-.SH EXPERIMENTAL
-Warning: this feature is early code and is marked as experimental. It can only
-be enabled by explicitly telling configure with \fB--enable-hsts\fP. You are
-advised to not ship this in production before the experimental label is
-removed.
 .SH DESCRIPTION
 Data \fIpointer\fP to pass to the HSTS read function. If you use the
-\fICURLOPT_HSTSREADFUNCTION(3)\fP option, this is the pointer you'll get as
+\fICURLOPT_HSTSREADFUNCTION(3)\fP option, this is the pointer you will get as
 input in the 3rd argument to the callback.
 
-This option doesn't enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
+This option does not enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
 do that.
 .SH DEFAULT
 NULL
diff --git a/docs/libcurl/opts/CURLOPT_HSTSREADFUNCTION.3 b/docs/libcurl/opts/CURLOPT_HSTSREADFUNCTION.3
index bc69425..c3e5954 100644
--- a/docs/libcurl/opts/CURLOPT_HSTSREADFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_HSTSREADFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HSTSREADFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HSTSREADFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HSTSREADFUNCTION \- read callback for HSTS hosts
@@ -30,11 +30,6 @@
 CURLSTScode hstsread(CURL *easy, struct curl_hstsentry *sts, void *userp);
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HSTSREADFUNCTION, hstsread);
-.SH EXPERIMENTAL
-Warning: this feature is early code and is marked as experimental. It can only
-be enabled by explicitly telling configure with \fB--enable-hsts\fP. You are
-advised to not ship this in production before the experimental label is
-removed.
 .SH DESCRIPTION
 Pass a pointer to your callback function, as the prototype shows above.
 
@@ -52,9 +47,11 @@
 
 The callback should return \fICURLSTS_OK\fP if it returns a name and is
 prepared to be called again (for another host) or \fICURLSTS_DONE\fP if it has
-no entry to return. It can also return \fICURLSTS_FAIL\fP to signal error.
+no entry to return. It can also return \fICURLSTS_FAIL\fP to signal
+error. Returning \fICURLSTS_FAIL\fP will stop the transfer from being
+performed and make \fICURLE_ABORTED_BY_CALLBACK\fP get returned.
 
-This option doesn't enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
+This option does not enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
 do that.
 .SH DEFAULT
 NULL - no callback.
diff --git a/docs/libcurl/opts/CURLOPT_HSTSWRITEDATA.3 b/docs/libcurl/opts/CURLOPT_HSTSWRITEDATA.3
index aa64a03..f0d9e1b 100644
--- a/docs/libcurl/opts/CURLOPT_HSTSWRITEDATA.3
+++ b/docs/libcurl/opts/CURLOPT_HSTSWRITEDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HSTSWRITEDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HSTSWRITEDATA 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HSTSWRITEDATA \- pointer passed to the HSTS write callback
@@ -28,17 +28,12 @@
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HSTSWRITEDATA, void *pointer);
-.SH EXPERIMENTAL
-Warning: this feature is early code and is marked as experimental. It can only
-be enabled by explicitly telling configure with \fB--enable-hsts\fP. You are
-advised to not ship this in production before the experimental label is
-removed.
 .SH DESCRIPTION
 Data \fIpointer\fP to pass to the HSTS write function. If you use the
-\fICURLOPT_HSTSWRITEFUNCTION(3)\fP option, this is the pointer you'll get as
+\fICURLOPT_HSTSWRITEFUNCTION(3)\fP option, this is the pointer you will get as
 input in the 4th argument to the callback.
 
-This option doesn't enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
+This option does not enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
 do that.
 .SH DEFAULT
 NULL
diff --git a/docs/libcurl/opts/CURLOPT_HSTSWRITEFUNCTION.3 b/docs/libcurl/opts/CURLOPT_HSTSWRITEFUNCTION.3
index a8bcd75..22d3638 100644
--- a/docs/libcurl/opts/CURLOPT_HSTSWRITEFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_HSTSWRITEFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HSTSWRITEFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HSTSWRITEFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HSTSWRITEFUNCTION \- write callback for HSTS hosts
@@ -31,11 +31,6 @@
                       struct curl_index *count, void *userp);
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HSTSWRITEFUNCTION, hstswrite);
-.SH EXPERIMENTAL
-Warning: this feature is early code and is marked as experimental. It can only
-be enabled by explicitly telling configure with \fB--enable-hsts\fP. You are
-advised to not ship this in production before the experimental label is
-removed.
 .SH DESCRIPTION
 Pass a pointer to your callback function, as the prototype shows above.
 
@@ -55,6 +50,9 @@
 The callback should return \fICURLSTS_OK\fP if it succeeded and is prepared to
 be called again (for another host) or \fICURLSTS_DONE\fP if there's nothing
 more to do. It can also return \fICURLSTS_FAIL\fP to signal error.
+
+This option does not enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
+do that.
 .SH DEFAULT
 NULL - no callback.
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_HSTS_CTRL.3 b/docs/libcurl/opts/CURLOPT_HSTS_CTRL.3
index 2887b64..c3dbf9f 100644
--- a/docs/libcurl/opts/CURLOPT_HSTS_CTRL.3
+++ b/docs/libcurl/opts/CURLOPT_HSTS_CTRL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 2020, 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HSTS_CTRL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HSTS_CTRL 3 "September 06, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HSTS_CTRL \- control HSTS behavior
@@ -33,11 +33,6 @@
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_HSTS_CTRL, long bitmask);
 .fi
-.SH EXPERIMENTAL
-Warning: this feature is early code and is marked as experimental. It can only
-be enabled by explicitly telling configure with \fB--enable-hsts\fP. You are
-advised to not ship this in production before the experimental label is
-removed.
 .SH DESCRIPTION
 HSTS (HTTP Strict Transport Security) means that an HTTPS server can instruct
 the client to not contact it again over clear-text HTTP for a certain period
diff --git a/docs/libcurl/opts/CURLOPT_HTTP09_ALLOWED.3 b/docs/libcurl/opts/CURLOPT_HTTP09_ALLOWED.3
index 5b9401a..ead9f41 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP09_ALLOWED.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP09_ALLOWED.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2019, 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP09_ALLOWED 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTP09_ALLOWED 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTP09 \- allow HTTP/0.9 response
+CURLOPT_HTTP09_ALLOWED \- allow HTTP/0.9 response
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3 b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
index 029818c..7baccbb 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP200ALIASES.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP200ALIASES 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTP200ALIASES 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTP200ALIASES \- specify alternative matches for HTTP 200 OK
+CURLOPT_HTTP200ALIASES \- alternative matches for HTTP 200 OK
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
@@ -33,11 +33,11 @@
 .SH DESCRIPTION
 Pass a pointer to a linked list of \fIaliases\fP to be treated as valid HTTP
 200 responses.  Some servers respond with a custom header response line.  For
-example, SHOUTcast servers respond with "ICY 200 OK". Also some very old
-Icecast 1.3.x servers will respond like that for certain user agent headers or
-in absence of such. By including this string in your list of aliases,
-the response will be treated as a valid HTTP header line such as
-"HTTP/1.0 200 OK".
+example, SHOUTcast servers respond with "ICY 200 OK". Also some old Icecast
+1.3.x servers will respond like that for certain user agent headers or in
+absence of such. By including this string in your list of aliases, the
+response will be treated as a valid HTTP header line such as "HTTP/1.0 200
+OK".
 
 The linked list should be a fully valid list of struct curl_slist structs, and
 be properly filled in.  Use \fIcurl_slist_append(3)\fP to create the list and
diff --git a/docs/libcurl/opts/CURLOPT_HTTPAUTH.3 b/docs/libcurl/opts/CURLOPT_HTTPAUTH.3
index 6a68afa..115bcf3 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPAUTH.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPAUTH.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPAUTH 3 "July 03, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTPAUTH 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTPAUTH \- set HTTP server authentication methods to try
+CURLOPT_HTTPAUTH \- HTTP server authentication methods to try
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_HTTPGET.3 b/docs/libcurl/opts/CURLOPT_HTTPGET.3
index bae84bc..05a568e 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPGET.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPGET.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPGET 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTPGET 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTPGET \- ask for an HTTP GET request
diff --git a/docs/libcurl/opts/CURLOPT_HTTPHEADER.3 b/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
index 7aa5366..e077598 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPHEADER.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPHEADER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTPHEADER 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTPHEADER \- set custom HTTP headers
+CURLOPT_HTTPHEADER \- set of HTTP headers
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -69,6 +69,16 @@
 There's an alternative option that sets or replaces headers only for requests
 that are sent with CONNECT to a proxy: \fICURLOPT_PROXYHEADER(3)\fP. Use
 \fICURLOPT_HEADEROPT(3)\fP to control the behavior.
+.SH SPECIFIC HEADERS
+Setting some specific headers will cause libcurl to act differently.
+.IP "Host:"
+The specified host name will be used for cookie matching if the cookie engine
+is also enabled for this transfer. If the request is done over HTTP/2 or
+HTTP/3, the custom host name will instead be used in the ":authority" header
+field and Host: will not be sent at all over the wire.
+.IP "Transfer-Encoding: chunked"
+Tells libcurl the upload is to be done using this chunked encoding instead of
+providing the Content-Length: field in the request.
 .SH SECURITY CONCERNS
 By default, this option makes libcurl send the given headers in all HTTP
 requests done by this handle. You should therefore use this option with
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPOST.3 b/docs/libcurl/opts/CURLOPT_HTTPPOST.3
index cb75f8e..e24e22d 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPOST.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPPOST.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPPOST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTPPOST 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTPPOST \- specify the multipart formpost content
+CURLOPT_HTTPPOST \- multipart formpost content
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3 b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
index 93b491b..0a0a6d2 100644
--- a/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
+++ b/docs/libcurl/opts/CURLOPT_HTTPPROXYTUNNEL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTPPROXYTUNNEL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTPPROXYTUNNEL 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_HTTPPROXYTUNNEL \- tunnel through HTTP proxy
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.3 b/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.3
index 1a85c41..5d9634c 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP_CONTENT_DECODING.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP_CONTENT_DECODING 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTP_CONTENT_DECODING 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTP_CONTENT_DECODING \- enable/disable HTTP content decoding
+CURLOPT_HTTP_CONTENT_DECODING \- HTTP content decoding control
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3 b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3
index 9184ad9..bbb99a6 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP_TRANSFER_DECODING.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP_TRANSFER_DECODING 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTP_TRANSFER_DECODING 3 "October 22, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTP_TRANSFER_DECODING \- enable/disable HTTP transfer decoding
+CURLOPT_HTTP_TRANSFER_DECODING \- HTTP transfer decoding control
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
@@ -50,7 +50,8 @@
 }
 .fi
 .SH AVAILABILITY
-Added in 7.16.2
+Added in 7.16.2 Does not work with the hyper backend (it will always have
+transfer decoding enabled).
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3 b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
index 91d5bc7..f7dccab 100644
--- a/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
+++ b/docs/libcurl/opts/CURLOPT_HTTP_VERSION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_HTTP_VERSION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_HTTP_VERSION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_HTTP_VERSION \- specify HTTP protocol version to use
+CURLOPT_HTTP_VERSION \- HTTP protocol version to use
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -34,24 +34,24 @@
 
 Note that the HTTP version is just a request. libcurl will still prioritize to
 re-use an existing connection so it might then re-use a connection using a
-HTTP version you haven't asked for.
+HTTP version you have not asked for.
 
 .IP CURL_HTTP_VERSION_NONE
-We don't care about what version the library uses. libcurl will use whatever
+We do not care about what version the library uses. libcurl will use whatever
 it thinks fit.
 .IP CURL_HTTP_VERSION_1_0
 Enforce HTTP 1.0 requests.
 .IP CURL_HTTP_VERSION_1_1
 Enforce HTTP 1.1 requests.
 .IP CURL_HTTP_VERSION_2_0
-Attempt HTTP 2 requests. libcurl will fall back to HTTP 1.1 if HTTP 2 can't be
+Attempt HTTP 2 requests. libcurl will fall back to HTTP 1.1 if HTTP 2 cannot be
 negotiated with the server. (Added in 7.33.0)
 
 The alias \fICURL_HTTP_VERSION_2\fP was added in 7.43.0 to better reflect the
 actual protocol name.
 .IP CURL_HTTP_VERSION_2TLS
 Attempt HTTP 2 over TLS (HTTPS) only. libcurl will fall back to HTTP 1.1 if
-HTTP 2 can't be negotiated with the HTTPS server. For clear text HTTP servers,
+HTTP 2 cannot be negotiated with the HTTPS server. For clear text HTTP servers,
 libcurl will use 1.1. (Added in 7.47.0)
 .IP CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE
 Issue non-TLS HTTP requests using HTTP/2 without HTTP/1.1 Upgrade. It requires
@@ -61,7 +61,7 @@
 .IP CURL_HTTP_VERSION_3
 (Added in 7.66.0) Setting this value will make libcurl attempt to use HTTP/3
 directly to server given in the URL. Note that this cannot gracefully
-downgrade to earlier HTTP version if the server doesn't support HTTP/3.
+downgrade to earlier HTTP version if the server does not support HTTP/3.
 
 For more reliably upgrading to HTTP/3, set the preferred version to something
 lower and let the server announce its HTTP/3 support via Alt-Svc:. See
diff --git a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3 b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3
index 6999d0d..f3adcb3 100644
--- a/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3
+++ b/docs/libcurl/opts/CURLOPT_IGNORE_CONTENT_LENGTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_IGNORE_CONTENT_LENGTH 3 "June 03, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_IGNORE_CONTENT_LENGTH 3 "August 23, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_IGNORE_CONTENT_LENGTH \- ignore content length
@@ -62,7 +62,7 @@
 .fi
 .SH AVAILABILITY
 Added in 7.14.1. Support for FTP added in 7.46.0. This option is not working
-for the hyper backend.
+for HTTP when libcurl is built to use the hyper backend.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE.3 b/docs/libcurl/opts/CURLOPT_INFILESIZE.3
index 3e5eb57..06d953f 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE.3
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INFILESIZE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_INFILESIZE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_INFILESIZE \- set size of the input file to send off
+CURLOPT_INFILESIZE \- size of the input file to send off
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3 b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
index cd0104b..5d0f21b 100644
--- a/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_INFILESIZE_LARGE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INFILESIZE_LARGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_INFILESIZE_LARGE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_INFILESIZE_LARGE \- set size of the input file to send off
+CURLOPT_INFILESIZE_LARGE \- size of the input file to send off
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_INTERFACE.3 b/docs/libcurl/opts/CURLOPT_INTERFACE.3
index 7e77fb5..6d45866 100644
--- a/docs/libcurl/opts/CURLOPT_INTERFACE.3
+++ b/docs/libcurl/opts/CURLOPT_INTERFACE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INTERFACE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_INTERFACE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_INTERFACE \- source interface for outgoing traffic
diff --git a/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.3 b/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.3
index 1985d73..9137bff 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.3
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INTERLEAVEDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_INTERLEAVEDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_INTERLEAVEDATA \- custom pointer passed to RTSP interleave callback
+CURLOPT_INTERLEAVEDATA \- pointer passed to RTSP interleave callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3 b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3
index 7139271..061978f 100644
--- a/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_INTERLEAVEFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_INTERLEAVEFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_INTERLEAVEFUNCTION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_INTERLEAVEFUNCTION \- callback function for RTSP interleaved data
+CURLOPT_INTERLEAVEFUNCTION \- callback for RTSP interleaved data
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLDATA.3 b/docs/libcurl/opts/CURLOPT_IOCTLDATA.3
index 3d59c86..306e607 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLDATA.3
+++ b/docs/libcurl/opts/CURLOPT_IOCTLDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_IOCTLDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_IOCTLDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_IOCTLDATA \- custom pointer passed to I/O callback
+CURLOPT_IOCTLDATA \- pointer passed to I/O callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3 b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3
index 0ccf51d..d6b3510 100644
--- a/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_IOCTLFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_IOCTLFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_IOCTLFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_IOCTLFUNCTION \- callback for I/O operations
@@ -49,7 +49,7 @@
 shown above.
 
 This callback function gets called by libcurl when something special
-I/O-related needs to be done that the library can't do by itself. For now,
+I/O-related needs to be done that the library cannot do by itself. For now,
 rewinding the read data stream is the only action it can request. The
 rewinding of the read data stream may be necessary when doing an HTTP PUT or
 POST with a multi-pass authentication method.
diff --git a/docs/libcurl/opts/CURLOPT_IPRESOLVE.3 b/docs/libcurl/opts/CURLOPT_IPRESOLVE.3
index 5ce9e20..153cbf1 100644
--- a/docs/libcurl/opts/CURLOPT_IPRESOLVE.3
+++ b/docs/libcurl/opts/CURLOPT_IPRESOLVE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_IPRESOLVE 3 "April 24, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_IPRESOLVE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_IPRESOLVE \- specify which IP protocol version to use
+CURLOPT_IPRESOLVE \- IP protocol version to use
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_ISSUERCERT.3 b/docs/libcurl/opts/CURLOPT_ISSUERCERT.3
index a19913c..755e341 100644
--- a/docs/libcurl/opts/CURLOPT_ISSUERCERT.3
+++ b/docs/libcurl/opts/CURLOPT_ISSUERCERT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ISSUERCERT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ISSUERCERT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ISSUERCERT \- issuer SSL certificate filename
diff --git a/docs/libcurl/opts/CURLOPT_ISSUERCERT_BLOB.3 b/docs/libcurl/opts/CURLOPT_ISSUERCERT_BLOB.3
index f3f1bf0..1f6dcda 100644
--- a/docs/libcurl/opts/CURLOPT_ISSUERCERT_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_ISSUERCERT_BLOB.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_ISSUERCERT_BLOB 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_ISSUERCERT_BLOB 3 "October 25, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_ISSUERCERT_BLOB \- issuer SSL certificate from memory blob
@@ -71,7 +71,7 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.71.0. This option is supported by the OpenSSL backends.
+Added in 7.71.0. This option is supported by the OpenSSL backends.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3 b/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3
index d096cc3..90fdf08 100644
--- a/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3
+++ b/docs/libcurl/opts/CURLOPT_KEEP_SENDING_ON_ERROR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_KEEP_SENDING_ON_ERROR 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_KEEP_SENDING_ON_ERROR 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_KEEP_SENDING_ON_ERROR \- keep sending on early HTTP response >= 300
diff --git a/docs/libcurl/opts/CURLOPT_KEYPASSWD.3 b/docs/libcurl/opts/CURLOPT_KEYPASSWD.3
index 6e6afec..09a29dc 100644
--- a/docs/libcurl/opts/CURLOPT_KEYPASSWD.3
+++ b/docs/libcurl/opts/CURLOPT_KEYPASSWD.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_KEYPASSWD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_KEYPASSWD 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_KEYPASSWD \- set passphrase to private key
+CURLOPT_KEYPASSWD \- passphrase to private key
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_KRBLEVEL.3 b/docs/libcurl/opts/CURLOPT_KRBLEVEL.3
index b92131f..a6aca26 100644
--- a/docs/libcurl/opts/CURLOPT_KRBLEVEL.3
+++ b/docs/libcurl/opts/CURLOPT_KRBLEVEL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_KRBLEVEL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_KRBLEVEL 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_KRBLEVEL \- set FTP kerberos security level
+CURLOPT_KRBLEVEL \- FTP kerberos security level
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -32,7 +32,7 @@
 Pass a char * as parameter. Set the kerberos security level for FTP; this also
 enables kerberos awareness.  This is a string that should match one of the
 following: \&'clear', \&'safe', \&'confidential' or \&'private'.  If the
-string is set but doesn't match one of these, 'private' will be used. Set the
+string is set but does not match one of these, 'private' will be used. Set the
 string to NULL to disable kerberos support for FTP.
 
 The application does not have to keep the string around after setting this
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORT.3 b/docs/libcurl/opts/CURLOPT_LOCALPORT.3
index 741eaac..770573e 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORT.3
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOCALPORT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_LOCALPORT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_LOCALPORT \- set local port number to use for socket
+CURLOPT_LOCALPORT \- local port number to use for socket
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3 b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3
index f1827d7..b9d5b04 100644
--- a/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3
+++ b/docs/libcurl/opts/CURLOPT_LOCALPORTRANGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOCALPORTRANGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_LOCALPORTRANGE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_LOCALPORTRANGE \- number of additional local ports to try
diff --git a/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.3 b/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.3
index 400dfe8..b8132ac 100644
--- a/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_LOGIN_OPTIONS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOGIN_OPTIONS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_LOGIN_OPTIONS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_LOGIN_OPTIONS \- set login options
+CURLOPT_LOGIN_OPTIONS \- login options
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3 b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3
index 9094c9e..424fd5a 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_LIMIT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOW_SPEED_LIMIT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_LOW_SPEED_LIMIT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_LOW_SPEED_LIMIT \- set low speed limit in bytes per second
+CURLOPT_LOW_SPEED_LIMIT \- low speed limit in bytes per second
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3 b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3
index 3aa0f55..6eb0dcb 100644
--- a/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3
+++ b/docs/libcurl/opts/CURLOPT_LOW_SPEED_TIME.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_LOW_SPEED_TIME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_LOW_SPEED_TIME 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_LOW_SPEED_TIME \- set low speed limit time period
+CURLOPT_LOW_SPEED_TIME \- low speed limit time period
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_AUTH.3 b/docs/libcurl/opts/CURLOPT_MAIL_AUTH.3
index ed6b7a5..443dd8e 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_AUTH.3
+++ b/docs/libcurl/opts/CURLOPT_MAIL_AUTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAIL_AUTH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAIL_AUTH 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAIL_AUTH \- SMTP authentication address
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_FROM.3 b/docs/libcurl/opts/CURLOPT_MAIL_FROM.3
index ad6d48d..13a7cfa 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_FROM.3
+++ b/docs/libcurl/opts/CURLOPT_MAIL_FROM.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAIL_FROM 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAIL_FROM 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAIL_FROM \- SMTP sender address
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_RCPT.3 b/docs/libcurl/opts/CURLOPT_MAIL_RCPT.3
index 8b67164..b6141be 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_RCPT.3
+++ b/docs/libcurl/opts/CURLOPT_MAIL_RCPT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAIL_RCPT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAIL_RCPT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAIL_RCPT \- list of SMTP mail recipients
diff --git a/docs/libcurl/opts/CURLOPT_MAIL_RCPT_ALLLOWFAILS.3 b/docs/libcurl/opts/CURLOPT_MAIL_RCPT_ALLLOWFAILS.3
index b2e4b3a..dc1abe4 100644
--- a/docs/libcurl/opts/CURLOPT_MAIL_RCPT_ALLLOWFAILS.3
+++ b/docs/libcurl/opts/CURLOPT_MAIL_RCPT_ALLLOWFAILS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAIL_RCPT_ALLLOWFAILS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAIL_RCPT_ALLLOWFAILS 3 "July 26, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAIL_RCPT_ALLLOWFAILS \- allow RCPT TO command to fail for some recipients
@@ -40,8 +40,9 @@
 The default behavior can be changed by setting \fIignore\fP to 1L which will
 make curl ignore errors and proceed with the remaining valid recipients.
 
-In case when all recipients cause RCPT TO command to fail, curl will abort SMTP
-conversation and return the error received from to the last RCPT TO command.
+If all recipients trigger RCPT TO failures and this flag is specified, curl
+will still abort the SMTP conversation and return the error received from to
+the last RCPT TO command.
 .SH DEFAULT
 0
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_MAXAGE_CONN.3 b/docs/libcurl/opts/CURLOPT_MAXAGE_CONN.3
index ca8b370..aa0e864 100644
--- a/docs/libcurl/opts/CURLOPT_MAXAGE_CONN.3
+++ b/docs/libcurl/opts/CURLOPT_MAXAGE_CONN.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 2019 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXAGE_CONN 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAXAGE_CONN 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXAGE_CONN \- max idle time allowed for reusing a connection
@@ -30,13 +30,13 @@
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXAGE_CONN, long maxage);
 .SH DESCRIPTION
 Pass a long as parameter containing \fImaxage\fP - the maximum time in seconds
-that you allow an existing connection to have to be considered for reuse for
-this request.
+that you allow an existing connection to have been idle to be considered for
+reuse for this request.
 
 The "connection cache" that holds previously used connections. When a new
 request is to be done, it will consider any connection that matches for
-reuse. The \fICURLOPT_MAXAGE_CONN(3)\fP limit prevents libcurl from trying
-very old connections for reuse, since old connections have a high risk of not
+reuse. The \fICURLOPT_MAXAGE_CONN(3)\fP limit prevents libcurl from trying too
+old connections for reuse, since old connections have a high risk of not
 working and thus trying them is a performance loss and sometimes service loss
 due to the difficulties to figure out the situation. If a connection is found
 in the cache that is older than this set \fImaxage\fP, it will instead be
@@ -58,9 +58,9 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.65.0
+Added in 7.65.0
 .SH RETURN VALUE
 Returns CURLE_OK.
 .SH "SEE ALSO"
 .BR CURLOPT_TIMEOUT "(3), " CURLOPT_FORBID_REUSE "(3), "
-.BR CURLOPT_FRESH_CONNECT "(3), "
+.BR CURLOPT_FRESH_CONNECT "(3), " CURLOPT_MAXLIFETIME_CONN "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3 b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3
index c0f4a00..d579cc6 100644
--- a/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3
+++ b/docs/libcurl/opts/CURLOPT_MAXCONNECTS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXCONNECTS 3 "December 31, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAXCONNECTS 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXCONNECTS \- maximum connection cache size
@@ -31,7 +31,7 @@
 .SH DESCRIPTION
 Pass a long. The set \fIamount\fP will be the maximum number of simultaneously
 open persistent connections that libcurl may cache in the pool associated with
-this handle. The default is 5, and there isn't much point in changing this
+this handle. The default is 5, and there is not much point in changing this
 value unless you are perfectly aware of how this works and changes libcurl's
 behavior. This concerns connections using any of the protocols that support
 persistent connections.
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3 b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3
index 1e33502..6158b59 100644
--- a/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3
+++ b/docs/libcurl/opts/CURLOPT_MAXFILESIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXFILESIZE 3 "July 21, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAXFILESIZE 3 "July 23, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXFILESIZE \- maximum file size allowed to download
@@ -34,9 +34,9 @@
 this value, the transfer will not start and \fICURLE_FILESIZE_EXCEEDED\fP will
 be returned.
 
-For protocols where the size is not known in advance (including FTP and HTTP)
-this option has no effect even if the file transfer ends up being larger than
-the given limit.
+The file size is not always known prior to download, and for such files this
+option has no effect even if the file transfer ends up being larger than this
+given limit.
 
 If you want a limit above 2GB, use \fICURLOPT_MAXFILESIZE_LARGE(3)\fP.
 .SH DEFAULT
diff --git a/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.3 b/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.3
index e6d4bb9..aca3859 100644
--- a/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_MAXFILESIZE_LARGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXFILESIZE_LARGE 3 "July 21, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAXFILESIZE_LARGE 3 "July 23, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXFILESIZE_LARGE \- maximum file size allowed to download
@@ -36,9 +36,9 @@
 larger than this value, the transfer will not start and
 \fICURLE_FILESIZE_EXCEEDED\fP will be returned.
 
-For protocols where the size is not known in advance (including FTP and HTTP)
-this option has no effect even if the file transfer ends up being larger than
-the given limit.
+The file size is not always known prior to download, and for such files this
+option has no effect even if the file transfer ends up being larger than this
+given limit.
 .SH DEFAULT
 None
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_MAXLIFETIME_CONN.3 b/docs/libcurl/opts/CURLOPT_MAXLIFETIME_CONN.3
new file mode 100644
index 0000000..18329d9
--- /dev/null
+++ b/docs/libcurl/opts/CURLOPT_MAXLIFETIME_CONN.3
@@ -0,0 +1,66 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" *
+.\" * This software is licensed as described in the file COPYING, which
+.\" * you should have received as part of this distribution. The terms
+.\" * are also available at https://curl.se/docs/copyright.html.
+.\" *
+.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+.\" * copies of the Software, and permit persons to whom the Software is
+.\" * furnished to do so, under the terms of the COPYING file.
+.\" *
+.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+.\" * KIND, either express or implied.
+.\" *
+.\" **************************************************************************
+.\"
+.TH CURLOPT_MAXLIFETIME_CONN 3 "10 Nov 2021" "libcurl 7.80.0" "curl_easy_setopt options"
+.SH NAME
+CURLOPT_MAXLIFETIME_CONN \- max lifetime (since creation) allowed for reusing a connection
+.SH SYNOPSIS
+#include <curl/curl.h>
+
+CURLcode curl_easy_setopt(CURL *handle, CURLOPT_MAXLIFETIME_CONN, long maxlifetime);
+.SH DESCRIPTION
+Pass a long as parameter containing \fImaxlifetime\fP - the maximum time in
+seconds, since the creation of the connection, that you allow an existing
+connection to have to be considered for reuse for this request.
+
+libcurl features a connection cache that holds previously used connections.
+When a new request is to be done, it will consider any connection that matches
+for reuse. The \fICURLOPT_MAXLIFETIME_CONN(3)\fP limit prevents libcurl from
+trying too old connections for reuse. This can be used for client-side load
+balancing. If a connection is found in the cache that is older than this set
+\fImaxlifetime\fP, it will instead be closed once any in-progress transfers
+complete.
+
+If set to 0, this behavior is disabled: all connections are eligible for reuse.
+.SH DEFAULT
+Default \fImaxlifetime\fP is 0 seconds (i.e., disabled).
+.SH PROTOCOLS
+All
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com");
+
+  /* only allow each connection to be reused for 30 seconds */
+  curl_easy_setopt(curl, CURLOPT_MAXLIFETIME_CONN, 30L);
+
+  curl_easy_perform(curl);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.80.0
+.SH RETURN VALUE
+Returns CURLE_OK.
+.SH "SEE ALSO"
+.BR CURLOPT_TIMEOUT "(3), " CURLOPT_FORBID_REUSE "(3), "
+.BR CURLOPT_FRESH_CONNECT "(3), " CURLOPT_MAXAGE_CONN "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_MAXREDIRS.3 b/docs/libcurl/opts/CURLOPT_MAXREDIRS.3
index dd688c1..566efb6 100644
--- a/docs/libcurl/opts/CURLOPT_MAXREDIRS.3
+++ b/docs/libcurl/opts/CURLOPT_MAXREDIRS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAXREDIRS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAXREDIRS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAXREDIRS \- maximum number of redirects allowed
diff --git a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3 b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3
index 1395f33..a980232 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_MAX_RECV_SPEED_LARGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAX_RECV_SPEED_LARGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAX_RECV_SPEED_LARGE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAX_RECV_SPEED_LARGE \- rate limit data download speed
@@ -41,7 +41,7 @@
 If you set \fImaxspeed\fP to a value lower than \fICURLOPT_BUFFERSIZE(3)\fP,
 libcurl might download faster than the set limit initially.
 
-This option doesn't affect transfer speeds done with FILE:// URLs.
+This option does not affect transfer speeds done with FILE:// URLs.
 .SH DEFAULT
 0, disabled
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3 b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3
index baf959d..cb0a4f6 100644
--- a/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_MAX_SEND_SPEED_LARGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MAX_SEND_SPEED_LARGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MAX_SEND_SPEED_LARGE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_MAX_SEND_SPEED_LARGE \- rate limit data upload speed
@@ -43,7 +43,7 @@
 \fICURLOPT_UPLOAD_BUFFERSIZE(3)\fP, libcurl might "shoot over" the limit on
 its first send and still send off a full buffer.
 
-This option doesn't affect transfer speeds done with FILE:// URLs.
+This option does not affect transfer speeds done with FILE:// URLs.
 .SH DEFAULT
 0, disabled
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_MIMEPOST.3 b/docs/libcurl/opts/CURLOPT_MIMEPOST.3
index a97188c..01035ce 100644
--- a/docs/libcurl/opts/CURLOPT_MIMEPOST.3
+++ b/docs/libcurl/opts/CURLOPT_MIMEPOST.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_MIMEPOST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_MIMEPOST 3 "October 27, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_MIMEPOST \- set post/send data from mime structure
+CURLOPT_MIMEPOST \- send data from mime structure
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
@@ -41,13 +41,13 @@
 extending the deprecated \fICURLOPT_HTTPPOST(3)\fP option.
 .SH PROTOCOLS
 HTTP, SMTP, IMAP.
-.SH AVAILABILITY
-Since 7.56.0.
-.SH RETURN VALUE
-This will return CURLE_OK.
 .SH EXAMPLE
 Using this option implies the use of several mime structure building
 functions: see https://curl.se/libcurl/c/smtp-mime.html for a complete
 example.
+.SH AVAILABILITY
+Added in 7.56.0
+.SH RETURN VALUE
+This will return CURLE_OK.
 .SH "SEE ALSO"
 .BR curl_mime_init "(3)"
diff --git a/docs/libcurl/opts/CURLOPT_NETRC.3 b/docs/libcurl/opts/CURLOPT_NETRC.3
index 8ac5167..795c4fc 100644
--- a/docs/libcurl/opts/CURLOPT_NETRC.3
+++ b/docs/libcurl/opts/CURLOPT_NETRC.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NETRC 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NETRC 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_NETRC \- request that .netrc is used
+CURLOPT_NETRC \- enable use of .netrc
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -40,7 +40,7 @@
 the options controlled by this parameter.
 
 Only machine name, user name and password are taken into account (init macros
-and similar things aren't supported).
+and similar things are not supported).
 
 libcurl does not verify that the file has the correct properties set (as the
 standard Unix ftp client does). It should only be readable by user.
diff --git a/docs/libcurl/opts/CURLOPT_NETRC_FILE.3 b/docs/libcurl/opts/CURLOPT_NETRC_FILE.3
index f56af13..ce33803 100644
--- a/docs/libcurl/opts/CURLOPT_NETRC_FILE.3
+++ b/docs/libcurl/opts/CURLOPT_NETRC_FILE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NETRC_FILE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NETRC_FILE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NETRC_FILE \- file name to read .netrc info from
diff --git a/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.3 b/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.3
index f565f4e..ea4904a 100644
--- a/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.3
+++ b/docs/libcurl/opts/CURLOPT_NEW_DIRECTORY_PERMS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NEW_DIRECTORY_PERMS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NEW_DIRECTORY_PERMS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NEW_DIRECTORY_PERMS \- permissions for remotely created directories
diff --git a/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.3 b/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.3
index 7bac6a1..260c083 100644
--- a/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.3
+++ b/docs/libcurl/opts/CURLOPT_NEW_FILE_PERMS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NEW_FILE_PERMS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NEW_FILE_PERMS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NEW_FILE_PERMS \- permissions for remotely created files
diff --git a/docs/libcurl/opts/CURLOPT_NOBODY.3 b/docs/libcurl/opts/CURLOPT_NOBODY.3
index b643146..d56eb18 100644
--- a/docs/libcurl/opts/CURLOPT_NOBODY.3
+++ b/docs/libcurl/opts/CURLOPT_NOBODY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOBODY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NOBODY 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NOBODY \- do the download request without getting the body
diff --git a/docs/libcurl/opts/CURLOPT_NOPROGRESS.3 b/docs/libcurl/opts/CURLOPT_NOPROGRESS.3
index b5f7027..28fdb37 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROGRESS.3
+++ b/docs/libcurl/opts/CURLOPT_NOPROGRESS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOPROGRESS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NOPROGRESS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NOPROGRESS \- switch off the progress meter
diff --git a/docs/libcurl/opts/CURLOPT_NOPROXY.3 b/docs/libcurl/opts/CURLOPT_NOPROXY.3
index 9a2142a..b65f540 100644
--- a/docs/libcurl/opts/CURLOPT_NOPROXY.3
+++ b/docs/libcurl/opts/CURLOPT_NOPROXY.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOPROXY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NOPROXY 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NOPROXY \- disable proxy use for specific hosts
@@ -51,7 +51,7 @@
  "example.com,::1,localhost"
 
 IPv6 numerical addresses are compared as strings, so they will only match if
-the representations are the same: "::1" is the same as "::0:1" but they don't
+the representations are the same: "::1" is the same as "::0:1" but they do not
 match.
 
 The application does not have to keep the string around after setting this
diff --git a/docs/libcurl/opts/CURLOPT_NOSIGNAL.3 b/docs/libcurl/opts/CURLOPT_NOSIGNAL.3
index a5cf9d0..595242e 100644
--- a/docs/libcurl/opts/CURLOPT_NOSIGNAL.3
+++ b/docs/libcurl/opts/CURLOPT_NOSIGNAL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_NOSIGNAL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_NOSIGNAL 3 "September 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_NOSIGNAL \- skip all signal handling
@@ -50,7 +50,24 @@
 raised.
 .SH DEFAULT
 0
+.SH PROTOCOLS
+All
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
+
+  curl_easy_setopt(curl, CURLOPT_NOSIGNAL, 1L);
+
+  ret = curl_easy_perform(curl);
+
+  curl_easy_cleanup(curl);
+}
+.fi
 .SH AVAILABILITY
 Added in 7.10
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
+.SH SEE ALSO
+.BR CURLOPT_TIMEOUT "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3 b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3
index 3c964e5..0eb1877 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_OPENSOCKETDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_OPENSOCKETDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_OPENSOCKETDATA \- custom pointer passed to open socket callback
+CURLOPT_OPENSOCKETDATA \- pointer passed to open socket callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3 b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3
index ec1a309..7f856fd 100644
--- a/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_OPENSOCKETFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_OPENSOCKETFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_OPENSOCKETFUNCTION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_OPENSOCKETFUNCTION \- set callback for opening sockets
+CURLOPT_OPENSOCKETFUNCTION \- callback for opening socket
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_PASSWORD.3 b/docs/libcurl/opts/CURLOPT_PASSWORD.3
index 345580b..08023ab 100644
--- a/docs/libcurl/opts/CURLOPT_PASSWORD.3
+++ b/docs/libcurl/opts/CURLOPT_PASSWORD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PASSWORD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PASSWORD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PASSWORD \- password to use in authentication
diff --git a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3 b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3
index dbbe280..0b8e1c7 100644
--- a/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3
+++ b/docs/libcurl/opts/CURLOPT_PATH_AS_IS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PATH_AS_IS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PATH_AS_IS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PATH_AS_IS \- do not handle dot dot sequences
diff --git a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3 b/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
index 5b89003..0473a85 100644
--- a/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
+++ b/docs/libcurl/opts/CURLOPT_PINNEDPUBLICKEY.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2019, 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PINNEDPUBLICKEY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PINNEDPUBLICKEY 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PINNEDPUBLICKEY \- set pinned public key
+CURLOPT_PINNEDPUBLICKEY \- pinned public key
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -65,14 +65,14 @@
 If you do not have the server's public key file you can extract it from the
 server's certificate.
 .nf
-# retrieve the server's certificate if you don't already have it
+# retrieve the server's certificate if you do not already have it
 #
 # be sure to examine the certificate to see if it is what you expected
 #
 # Windows-specific:
 # - Use NUL instead of /dev/null.
 # - OpenSSL may wait for input instead of disconnecting. Hit enter.
-# - If you don't have sed, then just copy the certificate into a file:
+# - If you do not have sed, then just copy the certificate into a file:
 #   Lines from -----BEGIN CERTIFICATE----- to -----END CERTIFICATE-----.
 #
 openssl s_client -servername www.example.com -connect www.example.com:443 < /dev/null | sed -n "/-----BEGIN/,/-----END/p" > www.example.com.pem
diff --git a/docs/libcurl/opts/CURLOPT_PIPEWAIT.3 b/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
index 41c8227..a960d05 100644
--- a/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
+++ b/docs/libcurl/opts/CURLOPT_PIPEWAIT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PIPEWAIT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PIPEWAIT 3 "September 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PIPEWAIT \- wait for pipelining/multiplexing
@@ -55,6 +55,15 @@
 .SH PROTOCOLS
 HTTP(S)
 .SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/");
+  curl_easy_setopt(curl, CURLOPT_PIPEWAIT, 1L);
+
+  /* now add this easy handle to the multi handle */
+}
+.fi
 .SH AVAILABILITY
 Added in 7.43.0
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_PORT.3 b/docs/libcurl/opts/CURLOPT_PORT.3
index 74c55cd..7181beb 100644
--- a/docs/libcurl/opts/CURLOPT_PORT.3
+++ b/docs/libcurl/opts/CURLOPT_PORT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2014, 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PORT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PORT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PORT \- set remote port number to work with
+CURLOPT_PORT \- remote port number to connect to
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_POST.3 b/docs/libcurl/opts/CURLOPT_POST.3
index 68ba739..8566068 100644
--- a/docs/libcurl/opts/CURLOPT_POST.3
+++ b/docs/libcurl/opts/CURLOPT_POST.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_POST 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_POST \- request an HTTP POST
+CURLOPT_POST \- make an HTTP POST
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDS.3 b/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
index e662bba..a5fcca1 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDS.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTFIELDS 3 "April 23, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_POSTFIELDS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_POSTFIELDS \- specify data to POST to server
+CURLOPT_POSTFIELDS \- data to POST to server
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3 b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3
index f6f7d60..527164e 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTFIELDSIZE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_POSTFIELDSIZE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_POSTFIELDSIZE \- size of POST data pointed to
diff --git a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.3 b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.3
index 2a8684b..81c1499 100644
--- a/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_POSTFIELDSIZE_LARGE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTFIELDSIZE_LARGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_POSTFIELDSIZE_LARGE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_POSTFIELDSIZE_LARGE \- size of POST data pointed to
diff --git a/docs/libcurl/opts/CURLOPT_POSTQUOTE.3 b/docs/libcurl/opts/CURLOPT_POSTQUOTE.3
index 0d2d2c2..baa4868 100644
--- a/docs/libcurl/opts/CURLOPT_POSTQUOTE.3
+++ b/docs/libcurl/opts/CURLOPT_POSTQUOTE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTQUOTE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_POSTQUOTE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_POSTQUOTE \- (S)FTP commands to run after the transfer
diff --git a/docs/libcurl/opts/CURLOPT_POSTREDIR.3 b/docs/libcurl/opts/CURLOPT_POSTREDIR.3
index 7755c15..562bc8c 100644
--- a/docs/libcurl/opts/CURLOPT_POSTREDIR.3
+++ b/docs/libcurl/opts/CURLOPT_POSTREDIR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_POSTREDIR 3 "December 31, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_POSTREDIR 3 "December 31, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_POSTREDIR \- how to act on an HTTP POST redirect
diff --git a/docs/libcurl/opts/CURLOPT_PREQUOTE.3 b/docs/libcurl/opts/CURLOPT_PREQUOTE.3
index d3a56d4..01a1aa8 100644
--- a/docs/libcurl/opts/CURLOPT_PREQUOTE.3
+++ b/docs/libcurl/opts/CURLOPT_PREQUOTE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PREQUOTE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PREQUOTE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PREQUOTE \- commands to run before an FTP transfer
diff --git a/docs/libcurl/opts/CURLOPT_PREREQDATA.3 b/docs/libcurl/opts/CURLOPT_PREREQDATA.3
new file mode 100644
index 0000000..f3f8a23
--- /dev/null
+++ b/docs/libcurl/opts/CURLOPT_PREREQDATA.3
@@ -0,0 +1,62 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 2021, Max Dymond, <max.dymond@microsoft.com>, et al.
+.\" *
+.\" * This software is licensed as described in the file COPYING, which
+.\" * you should have received as part of this distribution. The terms
+.\" * are also available at https://curl.se/docs/copyright.html.
+.\" *
+.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+.\" * copies of the Software, and permit persons to whom the Software is
+.\" * furnished to do so, under the terms of the COPYING file.
+.\" *
+.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+.\" * KIND, either express or implied.
+.\" *
+.\" **************************************************************************
+.\"
+.TH CURLOPT_PREREQDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
+
+.SH NAME
+CURLOPT_PREREQDATA \- pointer passed to the pre-request callback
+.SH SYNOPSIS
+#include <curl/curl.h>
+
+CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PREREQDATA, void *pointer);
+.SH DESCRIPTION
+Pass a \fIpointer\fP that will be untouched by libcurl and passed as the first
+argument in the pre-request callback set with
+\fICURLOPT_PREREQFUNCTION(3)\fP.
+.SH DEFAULT
+NULL
+.SH PROTOCOLS
+All
+.SH EXAMPLE
+.nf
+static int prereq_callback(void *clientp,
+                           char *conn_primary_ip,
+                           char *conn_local_ip,
+                           int conn_primary_port,
+                           int conn_local_port)
+{
+  printf("Connection made to %s:%s\\n", conn_primary_ip, conn_primary_port);
+  return CURL_PREREQFUNC_OK;
+}
+
+{
+  struct data prereq_data;
+  curl_easy_setopt(CURL *handle, CURLOPT_PREREQFUNCTION, prereq_callback);
+  curl_easy_setopt(CURL *handle, CURLOPT_PREREQDATA, &prereq_data);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.80.0
+.SH RETURN VALUE
+Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
+.SH "SEE ALSO"
+.BR CURLOPT_PREREQFUNCTION "(3) "
diff --git a/docs/libcurl/opts/CURLOPT_PREREQFUNCTION.3 b/docs/libcurl/opts/CURLOPT_PREREQFUNCTION.3
new file mode 100644
index 0000000..09205ac
--- /dev/null
+++ b/docs/libcurl/opts/CURLOPT_PREREQFUNCTION.3
@@ -0,0 +1,105 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 2021, Max Dymond, <max.dymond@microsoft.com>, et al.
+.\" *
+.\" * This software is licensed as described in the file COPYING, which
+.\" * you should have received as part of this distribution. The terms
+.\" * are also available at https://curl.se/docs/copyright.html.
+.\" *
+.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+.\" * copies of the Software, and permit persons to whom the Software is
+.\" * furnished to do so, under the terms of the COPYING file.
+.\" *
+.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+.\" * KIND, either express or implied.
+.\" *
+.\" **************************************************************************
+.\"
+.TH CURLOPT_PREREQFUNCTION 3 "November 04, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
+
+.SH NAME
+CURLOPT_PREREQFUNCTION \- user callback called when a connection has been
+established, but before a request has been made.
+.SH SYNOPSIS
+.nf
+#include <curl/curl.h>
+
+/* These are the return codes for the pre-request callback. */
+#define CURL_PREREQFUNC_OK 0
+#define CURL_PREREQFUNC_ABORT 1 /* fail the entire transfer */
+
+int prereq_callback(void *clientp,
+                    char *conn_primary_ip,
+                    char *conn_local_ip,
+                    int conn_primary_port,
+                    int conn_local_port);
+
+CURLcode curl_easy_setopt(CURL *handle, CURLOPT_PREREQFUNCTION, prereq_callback);
+.SH DESCRIPTION
+Pass a pointer to your callback function, which should match the prototype
+shown above.
+
+This function gets called by libcurl after a connection has been established
+or a connection has been reused (including any SSL handshaking), but before any
+request is actually made on the connection. For example, for HTTP, this
+callback is called once a connection has been established to the server, but
+before a GET/HEAD/POST/etc request has been sent.
+
+This function may be called multiple times if redirections are enabled and are
+being followed (see \fICURLOPT_FOLLOWLOCATION(3)\fP).
+
+This function is passed the following information:
+.IP conn_primary_ip
+A nul-terminated pointer to a C string containing the primary IP of the remote
+server established with this connection. For FTP, this is the IP for the control
+connection. IPv6 addresses are represented without surrounding brackets.
+.IP conn_local_ip
+A nul-terminated pointer to a C string containing the originating IP for this
+connection. IPv6 addresses are represented without surrounding brackets.
+.IP conn_primary_port
+The primary port number on the remote server established with this connection.
+For FTP, this is the port for the control connection. This can be a TCP or a
+UDP port number dependending on the protocol.
+.IP conn_local_port
+The originating port number for this connection. This can be a TCP or a UDP port
+number dependending on the protocol.
+.RE
+
+\fIclientp\fP is the pointer you set with \fICURLOPT_PREREQDATA(3)\fP.
+
+The callback function must return \fICURL_PREREQFUNC_OK\fP on success, or
+\fICURL_PREREQFUNC_ABORT\fP to cause the transfer to fail.
+
+.SH DEFAULT
+By default, this is NULL and unused.
+.SH PROTOCOLS
+ALL
+.SH EXAMPLE
+.nf
+static int prereq_callback(void *clientp,
+                           char *conn_primary_ip,
+                           char *conn_local_ip,
+                           int conn_primary_port,
+                           int conn_local_port)
+{
+  printf("Connection made to %s:%s\\n", conn_primary_ip, conn_primary_port);
+  return CURL_PREREQFUNC_OK;
+}
+
+{
+  struct data prereq_data;
+  curl_easy_setopt(CURL *handle, CURLOPT_PREREQFUNCTION, prereq_callback);
+  curl_easy_setopt(CURL *handle, CURLOPT_PREREQDATA, &prereq_data);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.80.0
+.SH RETURN VALUE
+Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
+.SH "SEE ALSO"
+.BR CURLOPT_PREREQDATA "(3) "
diff --git a/docs/libcurl/opts/CURLOPT_PRE_PROXY.3 b/docs/libcurl/opts/CURLOPT_PRE_PROXY.3
index 220ced2..dd5868c 100644
--- a/docs/libcurl/opts/CURLOPT_PRE_PROXY.3
+++ b/docs/libcurl/opts/CURLOPT_PRE_PROXY.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PRE_PROXY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PRE_PROXY 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PRE_PROXY \- set pre-proxy to use
+CURLOPT_PRE_PROXY \- pre-proxy host to use
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -60,7 +60,7 @@
 When you set a host name to use, do not assume that there's any particular
 single port number used widely for proxies. Specify it!
 .SH PROTOCOLS
-All except file://. Note that some protocols don't do very well over proxy.
+All except file://. Note that some protocols do not work well over proxy.
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
diff --git a/docs/libcurl/opts/CURLOPT_PRIVATE.3 b/docs/libcurl/opts/CURLOPT_PRIVATE.3
index 404b266..39171e2 100644
--- a/docs/libcurl/opts/CURLOPT_PRIVATE.3
+++ b/docs/libcurl/opts/CURLOPT_PRIVATE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PRIVATE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PRIVATE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PRIVATE \- store a private pointer
diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSDATA.3 b/docs/libcurl/opts/CURLOPT_PROGRESSDATA.3
index edf1986..f0892db 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSDATA.3
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROGRESSDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROGRESSDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROGRESSDATA \- custom pointer passed to the progress callback
+CURLOPT_PROGRESSDATA \- pointer passed to the progress callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -36,7 +36,32 @@
 .SH PROTOCOLS
 All
 .SH EXAMPLE
-https://curl.se/libcurl/c/progressfunc.html
+.nf
+ struct progress {
+   char *private;
+   size_t size;
+ };
+
+ static size_t progress_callback(void *clientp,
+                                 double dltotal,
+                                 double dlnow,
+                                 double ultotal,
+                                 double ulnow)
+ {
+   struct memory *progress = (struct progress *)userp;
+
+   /* use the values */
+
+   return 0; /* all is good */
+ }
+
+ struct progress data;
+
+ /* pass struct to callback  */
+ curl_easy_setopt(curl_handle, CURLOPT_PROGRESSDATA, &data);
+
+ curl_easy_setopt(curl_handle, CURLOPT_PROGRESSFUNCTION, progress_callback);
+.fi
 .SH AVAILABILITY
 Always
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3 b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3
index 239fa47..65a39bb 100644
--- a/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_PROGRESSFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROGRESSFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROGRESSFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROGRESSFUNCTION \- callback to progress meter function
+CURLOPT_PROGRESSFUNCTION \- progress meter callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -42,7 +42,7 @@
 if you can.
 
 This function gets called by libcurl instead of its internal equivalent with a
-frequent interval. While data is being transferred it will be called very
+frequent interval. While data is being transferred it will be called
 frequently, and during slow periods like when nothing is being transferred it
 can slow down to about one call per second.
 
@@ -74,12 +74,37 @@
 \fICURLOPT_NOPROGRESS(3)\fP must be set to 0 to make this function actually
 get called.
 .SH DEFAULT
-By default, libcurl has an internal progress meter. That's rarely wanted by
+By default, libcurl has an internal progress meter. That is rarely wanted by
 users.
 .SH PROTOCOLS
 All
 .SH EXAMPLE
-https://curl.se/libcurl/c/progressfunc.html
+.nf
+ struct progress {
+   char *private;
+   size_t size;
+ };
+
+ static size_t progress_callback(void *clientp,
+                                 double dltotal,
+                                 double dlnow,
+                                 double ultotal,
+                                 double ulnow)
+ {
+   struct memory *progress = (struct progress *)userp;
+
+   /* use the values */
+
+   return 0; /* all is good */
+ }
+
+ struct progress data;
+
+ /* pass struct to callback  */
+ curl_easy_setopt(curl_handle, CURLOPT_PROGRESSDATA, &data);
+
+ curl_easy_setopt(curl_handle, CURLOPT_PROGRESSFUNCTION, progress_callback);
+.fi
 .SH AVAILABILITY
 Always
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_PROTOCOLS.3 b/docs/libcurl/opts/CURLOPT_PROTOCOLS.3
index 11ca374..51b4a1c 100644
--- a/docs/libcurl/opts/CURLOPT_PROTOCOLS.3
+++ b/docs/libcurl/opts/CURLOPT_PROTOCOLS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROTOCOLS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROTOCOLS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROTOCOLS \- set allowed protocols
+CURLOPT_PROTOCOLS \- allowed protocols
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY.3 b/docs/libcurl/opts/CURLOPT_PROXY.3
index 09c2268..5e6ff59 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY \- set proxy to use
+CURLOPT_PROXY \- proxy to use
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -62,7 +62,7 @@
 When you tell the library to use an HTTP proxy, libcurl will transparently
 convert operations to HTTP even if you specify an FTP URL etc. This may have
 an impact on what other features of the library you can use, such as
-\fICURLOPT_QUOTE(3)\fP and similar FTP specifics that don't work unless you
+\fICURLOPT_QUOTE(3)\fP and similar FTP specifics that do not work unless you
 tunnel through the HTTP proxy. Such tunneling is activated with
 \fICURLOPT_HTTPPROXYTUNNEL(3)\fP.
 
@@ -91,7 +91,7 @@
 When you set a host name to use, do not assume that there's any particular
 single port number used widely for proxies. Specify it!
 .SH PROTOCOLS
-All except file://. Note that some protocols don't do very well over proxy.
+All except file://. Note that some protocols do not work well over proxy.
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
diff --git a/docs/libcurl/opts/CURLOPT_PROXYAUTH.3 b/docs/libcurl/opts/CURLOPT_PROXYAUTH.3
index 87bbe3e..7b1f3d5 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYAUTH.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYAUTH.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYAUTH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXYAUTH 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXYAUTH \- set HTTP proxy authentication methods to try
+CURLOPT_PROXYAUTH \- HTTP proxy authentication methods
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXYHEADER.3 b/docs/libcurl/opts/CURLOPT_PROXYHEADER.3
index 824fcf8..cf38c3f 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYHEADER.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYHEADER.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYHEADER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXYHEADER 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXYHEADER \- custom HTTP headers to pass to proxy
+CURLOPT_PROXYHEADER \- set of HTTP headers to pass to proxy
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3 b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3
index 481f553..aee4eac 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYPASSWORD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYPASSWORD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXYPASSWORD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYPASSWORD \- password to use with proxy authentication
diff --git a/docs/libcurl/opts/CURLOPT_PROXYPORT.3 b/docs/libcurl/opts/CURLOPT_PROXYPORT.3
index 6ff3c99..07629bd 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYPORT.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYPORT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYPORT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXYPORT 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYPORT \- port number the proxy listens on
@@ -33,7 +33,7 @@
 specified in the proxy string \fICURLOPT_PROXY(3)\fP or uses 443 for https
 proxies and 1080 for all others as default.
 
-While this accepts a 'long', the port number is 16 bit so it can't be larger
+While this accepts a 'long', the port number is 16 bit so it cannot be larger
 than 65535.
 .SH DEFAULT
 0, not specified which makes it use the default port
diff --git a/docs/libcurl/opts/CURLOPT_PROXYTYPE.3 b/docs/libcurl/opts/CURLOPT_PROXYTYPE.3
index 817628f..16e6185 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYTYPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYTYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXYTYPE 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYTYPE \- proxy protocol type
@@ -37,9 +37,9 @@
 .IP CURLPROXY_HTTPS
 HTTPS Proxy. (Added in 7.52.0 for OpenSSL, GnuTLS and NSS)
 .IP CURLPROXY_HTTP_1_0
-HTTP 1.0 Proxy. This is very similar to CURLPROXY_HTTP except it uses HTTP/1.0
-for any CONNECT tunnelling. It does not change the HTTP version of the actual
-HTTP requests, controlled by \fICURLOPT_HTTP_VERSION(3)\fP.
+HTTP 1.0 Proxy. This is similar to CURLPROXY_HTTP except it uses HTTP/1.0 for
+any CONNECT tunnelling. It does not change the HTTP version of the actual HTTP
+requests, controlled by \fICURLOPT_HTTP_VERSION(3)\fP.
 .IP CURLPROXY_SOCKS4
 SOCKS4 Proxy.
 .IP CURLPROXY_SOCKS4A
diff --git a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3 b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3
index 8ff955d..23fecae 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERNAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYUSERNAME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXYUSERNAME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYUSERNAME \- user name to use for proxy authentication
diff --git a/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.3 b/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.3
index cd06486..7b66b8a 100644
--- a/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.3
+++ b/docs/libcurl/opts/CURLOPT_PROXYUSERPWD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXYUSERPWD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXYUSERPWD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXYUSERPWD \- user name and password to use for proxy authentication
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_CAINFO.3 b/docs/libcurl/opts/CURLOPT_PROXY_CAINFO.3
index 64a64ca..ee9fc43 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_CAINFO.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_CAINFO.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_CAINFO 3 "July 13, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_CAINFO 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_CAINFO \- path to proxy Certificate Authority (CA) bundle
@@ -71,7 +71,7 @@
 .SH AVAILABILITY
 Added in 7.52.0
 
-For TLS backends that don't support certificate files, the
+For TLS backends that do not support certificate files, the
 \fICURLOPT_PROXY_CAINFO(3)\fP option is ignored. Refer to
 https://curl.se/docs/ssl-compared.html
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_CAINFO_BLOB.3 b/docs/libcurl/opts/CURLOPT_PROXY_CAINFO_BLOB.3
index bec3622..3c27073 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_CAINFO_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_CAINFO_BLOB.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_CAINFO_BLOB 3 "July 13, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_CAINFO_BLOB 3 "August 21, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_CAINFO_BLOB \- proxy Certificate Authority (CA) bundle in PEM format
@@ -54,7 +54,7 @@
   curl_easy_setopt(curl, CURLOPT_PROXY, "https://localhost:443");
   blob.data = strpem;
   blob.len = strlen(strpem);
-  blob.flags = CURL_BLOB_COPY;  
+  blob.flags = CURL_BLOB_COPY;
   curl_easy_setopt(curl, CURLOPT_PROXY_CAINFO_BLOB, &blob);
   ret = curl_easy_perform(curl);
   curl_easy_cleanup(curl);
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3 b/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3
index b666d85..7d167d1 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_CAPATH.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_CAPATH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_CAPATH 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_CAPATH \- specify directory holding proxy CA certificates
+CURLOPT_PROXY_CAPATH \- directory holding HTTPS proxy CA certificates
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3 b/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3
index fe3be27..b5eb2a5 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_CRLFILE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_CRLFILE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_CRLFILE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_CRLFILE \- specify a proxy Certificate Revocation List file
+CURLOPT_PROXY_CRLFILE \- HTTPS proxy Certificate Revocation List file
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT.3 b/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT.3
index d010b44..6562fa0 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_ISSUERCERT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_ISSUERCERT 3 "October 25, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_ISSUERCERT \- proxy issuer SSL certificate filename
@@ -65,7 +65,7 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.71.0. This option is supported by the OpenSSL backends.
+Added in 7.71.0. This option is supported by the OpenSSL backends.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT_BLOB.3 b/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT_BLOB.3
index 6331cc2..2770aac 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_ISSUERCERT_BLOB.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_ISSUERCERT_BLOB 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_ISSUERCERT_BLOB 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_ISSUERCERT_BLOB \- proxy issuer SSL certificate from memory blob
+CURLOPT_PROXY_ISSUERCERT_BLOB \- proxy issuer SSL certificate from memory blob
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
@@ -77,7 +77,7 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.71.0. This option is supported by the OpenSSL backends.
+Added in 7.71.0. This option is supported by the OpenSSL backends.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3 b/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3
index 6dfd896..4118876 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_KEYPASSWD.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_KEYPASSWD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_KEYPASSWD 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_KEYPASSWD \- set passphrase to proxy private key
+CURLOPT_PROXY_KEYPASSWD \- passphrase for the proxy private key
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3 b/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3
index 9b4c51d..9aa68c7 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_PINNEDPUBLICKEY.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_PINNEDPUBLICKEY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_PINNEDPUBLICKEY 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_PINNEDPUBLICKEY \- set pinned public key for https proxy
+CURLOPT_PROXY_PINNEDPUBLICKEY \- pinned public key for https proxy
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -64,14 +64,14 @@
 If you do not have the https proxy server's public key file you can extract it
 from the https proxy server's certificate.
 .nf
-# retrieve the server's certificate if you don't already have it
+# retrieve the server's certificate if you do not already have it
 #
 # be sure to examine the certificate to see if it is what you expected
 #
 # Windows-specific:
 # - Use NUL instead of /dev/null.
 # - OpenSSL may wait for input instead of disconnecting. Hit enter.
-# - If you don't have sed, then just copy the certificate into a file:
+# - If you do not have sed, then just copy the certificate into a file:
 #   Lines from -----BEGIN CERTIFICATE----- to -----END CERTIFICATE-----.
 #
 openssl s_client -servername www.example.com -connect www.example.com:443 < /dev/null | sed -n "/-----BEGIN/,/-----END/p" > www.example.com.pem
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3 b/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3
index 7424ead..2370097 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SERVICE_NAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SERVICE_NAME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SERVICE_NAME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SERVICE_NAME \- proxy authentication service name
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT.3
index 31b1127..5646a42 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLCERT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLCERT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_SSLCERT \- set SSL proxy client certificate
+CURLOPT_PROXY_SSLCERT \- HTTPS proxy client certificate
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3
index 2b8fafa..fa64067 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERTTYPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLCERTTYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLCERTTYPE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_SSLCERTTYPE \- specify type of the proxy client SSL certificate
+CURLOPT_PROXY_SSLCERTTYPE \- type of the proxy client SSL certificate
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT_BLOB.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT_BLOB.3
index f127ded..1927ef9 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLCERT_BLOB.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLCERT_BLOB 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLCERT_BLOB 3 "October 25, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSLCERT_BLOB \- SSL proxy client certificate from memory blob
@@ -63,8 +63,8 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.71.0. This option is supported by the OpenSSL, Secure
-Transport and Schannel backends.
+Added in 7.71.0. This option is supported by the OpenSSL, Secure Transport and
+Schannel backends.
 .SH RETURN VALUE
 Returns CURLE_OK if TLS enabled, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3
index b768ffb..beab88a 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLKEY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLKEY 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_SSLKEY \- specify private keyfile for TLS and SSL proxy client cert
+CURLOPT_PROXY_SSLKEY \- private keyfile for HTTPS proxy client cert
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3
index 95d8462..9790fda 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEYTYPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLKEYTYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLKEYTYPE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_SSLKEYTYPE \- set type of the proxy private key file
+CURLOPT_PROXY_SSLKEYTYPE \- type of the proxy private key file
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY_BLOB.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY_BLOB.3
index 85d99b0..48e178b 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLKEY_BLOB.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLKEY_BLOB 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLKEY_BLOB 3 "October 25, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSLKEY_BLOB \- private key for proxy cert from memory blob
@@ -66,7 +66,7 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.71.0. This option is supported by the OpenSSL backends.
+Added in 7.71.0. This option is supported by the OpenSSL backends.
 .SH RETURN VALUE
 Returns CURLE_OK if TLS enabled, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3
index 9919e91..2ebeead 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSLVERSION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSLVERSION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSLVERSION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_SSLVERSION \- set preferred proxy TLS/SSL version
+CURLOPT_PROXY_SSLVERSION \- preferred HTTPS proxy TLS version
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3
index 7b8f836..a22d52f 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSL_CIPHER_LIST.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSL_CIPHER_LIST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_CIPHER_LIST 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_SSL_CIPHER_LIST \- specify ciphers to use for proxy TLS
+CURLOPT_PROXY_SSL_CIPHER_LIST \- ciphers to use for HTTPS proxy
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -35,22 +35,21 @@
 colons. Commas or spaces are also acceptable separators but colons are
 normally used, \&!, \&- and \&+ can be used as operators.
 
-For OpenSSL and GnuTLS valid examples of cipher lists include 'RC4-SHA',
-\'SHA1+DES\', 'TLSv1' and 'DEFAULT'. The default list is normally set when you
-compile OpenSSL.
+For OpenSSL and GnuTLS valid examples of cipher lists include \fBRC4-SHA\fP,
+\fBSHA1+DES\fP, \fBTLSv1\fP and \fBDEFAULT\fP. The default list is normally
+set when you compile OpenSSL.
 
-You'll find more details about cipher lists on this URL:
-
- https://www.openssl.org/docs/apps/ciphers.html
-
-For NSS, valid examples of cipher lists include 'rsa_rc4_128_md5',
-\'rsa_aes_128_sha\', etc. With NSS you don't add/remove ciphers. If one uses
+For NSS, valid examples of cipher lists include \fBrsa_rc4_128_md5\fP,
+\fBrsa_aes_128_sha\fP, etc. With NSS you do not add/remove ciphers. If one uses
 this option then all known ciphers are disabled and only those passed in are
 enabled.
 
-You'll find more details about the NSS cipher lists on this URL:
+For WolfSSL, valid examples of cipher lists include \fBECDHE-RSA-RC4-SHA\fP,
+\fBAES256-SHA:AES256-SHA256\fP, etc.
 
- http://git.fedorahosted.org/cgit/mod_nss.git/plain/docs/mod_nss.html#Directives
+you will find more details about cipher lists on this URL:
+
+ https://curl.se/docs/ssl-ciphers.html
 
 The application does not have to keep the string around after setting this
 option.
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3
index 57fbc60..bae84e0 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSL_OPTIONS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSL_OPTIONS 3 "February 27, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_OPTIONS 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_SSL_OPTIONS \- set proxy SSL behavior options
+CURLOPT_PROXY_SSL_OPTIONS \- HTTPS proxy SSL behavior options
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -33,7 +33,7 @@
 behaviors. Available bits:
 .IP CURLSSLOPT_ALLOW_BEAST
 Tells libcurl to not attempt to use any workarounds for a security flaw in the
-SSL3 and TLS1.0 protocols.  If this option isn't used or this bit is set to 0,
+SSL3 and TLS1.0 protocols.  If this option is not used or this bit is set to 0,
 the SSL layer libcurl uses may use a work-around for this flaw although it
 might cause interoperability problems with some (older) SSL
 implementations. WARNING: avoiding this work-around lessens the security, and
@@ -43,7 +43,7 @@
 Tells libcurl to disable certificate revocation checks for those SSL backends
 where such behavior is present. This option is only supported for Schannel
 (the native Windows SSL library), with an exception in the case of Windows'
-Untrusted Publishers block list which it seems can't be bypassed. (Added in
+Untrusted Publishers block list which it seems cannot be bypassed. (Added in
 7.44.0)
 .IP CURLSSLOPT_NO_PARTIALCHAIN
 Tells libcurl to not accept "partial" certificate chains, which it otherwise
@@ -68,8 +68,6 @@
 0
 .SH PROTOCOLS
 All TLS-based protocols
-.SH AVAILABLE
-Added in 7.52.0
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -83,6 +81,8 @@
   curl_easy_cleanup(curl);
 }
 .fi
+.SH AVAILABILITY
+Added in 7.52.0
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYHOST.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYHOST.3
index a3bbfb9..3ddd561 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYHOST.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYHOST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSL_VERIFYHOST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_VERIFYHOST 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSL_VERIFYHOST \- verify the proxy certificate's name against host
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYPEER.3 b/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYPEER.3
index ace18ad..ea8a66c 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYPEER.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_SSL_VERIFYPEER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_SSL_VERIFYPEER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_SSL_VERIFYPEER 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_SSL_VERIFYPEER \- verify the proxy's SSL certificate
@@ -32,9 +32,9 @@
 Pass a long as parameter set to 1L to enable or 0L to disable.
 
 This option tells curl to verifies the authenticity of the HTTPS proxy's
-certificate. A value of 1 means curl verifies; 0 (zero) means it doesn't.
+certificate. A value of 1 means curl verifies; 0 (zero) means it does not.
 
-This is the proxy version of \fICURLOPT_SSL_VERIFYPEER(3)\fP that's used for
+This is the proxy version of \fICURLOPT_SSL_VERIFYPEER(3)\fP that is used for
 ordinary HTTPS servers.
 
 When negotiating a TLS or SSL connection, the server sends a certificate
@@ -53,7 +53,7 @@
 Authenticating the certificate is not enough to be sure about the server. You
 typically also want to ensure that the server is the server you mean to be
 talking to.  Use \fICURLOPT_PROXY_SSL_VERIFYHOST(3)\fP for that. The check
-that the host name in the certificate is valid for the host name you're
+that the host name in the certificate is valid for the host name you are
 connecting to is done independently of the
 \fICURLOPT_PROXY_SSL_VERIFYPEER(3)\fP option.
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TLS13_CIPHERS.3 b/docs/libcurl/opts/CURLOPT_PROXY_TLS13_CIPHERS.3
index 53fd528..841715d 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TLS13_CIPHERS.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TLS13_CIPHERS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_TLS13_CIPHERS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLS13_CIPHERS 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_TLS13_CIPHERS \- ciphers suites for proxy TLS 1.3
@@ -34,7 +34,7 @@
 syntactically correct, it consists of one or more cipher suite strings
 separated by colons.
 
-You'll find more details about cipher lists on this URL:
+you will find more details about cipher lists on this URL:
 
  https://curl.se/docs/ssl-ciphers.html
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_PASSWORD.3 b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_PASSWORD.3
index 8010380..2226ebb 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_PASSWORD.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_PASSWORD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_TLSAUTH_PASSWORD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLSAUTH_PASSWORD 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_TLSAUTH_PASSWORD \- password to use for proxy TLS authentication
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_TYPE.3 b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_TYPE.3
index 22ad1d6..f83ff34 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_TYPE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_TYPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_TLSAUTH_TYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLSAUTH_TYPE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_PROXY_TLSAUTH_TYPE \- set proxy TLS authentication methods
+CURLOPT_PROXY_TLSAUTH_TYPE \- HTTPS proxy TLS authentication methods
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_USERNAME.3 b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_USERNAME.3
index f273458..95dbf5c 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_USERNAME.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TLSAUTH_USERNAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_TLSAUTH_USERNAME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TLSAUTH_USERNAME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_TLSAUTH_USERNAME \- user name to use for proxy TLS authentication
diff --git a/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.3 b/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.3
index 9083a1e..af5063d 100644
--- a/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.3
+++ b/docs/libcurl/opts/CURLOPT_PROXY_TRANSFER_MODE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PROXY_TRANSFER_MODE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PROXY_TRANSFER_MODE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PROXY_TRANSFER_MODE \- append FTP transfer mode to URL for proxy
diff --git a/docs/libcurl/opts/CURLOPT_PUT.3 b/docs/libcurl/opts/CURLOPT_PUT.3
index 092159b..538b005 100644
--- a/docs/libcurl/opts/CURLOPT_PUT.3
+++ b/docs/libcurl/opts/CURLOPT_PUT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_PUT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_PUT 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_PUT \- make an HTTP PUT request
@@ -39,6 +39,29 @@
 0, disabled
 .SH PROTOCOLS
 HTTP
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  /* we want to use our own read function */
+  curl_easy_setopt(curl, CURLOPT_READFUNCTION, read_callback);
+
+  /* enable PUT */
+  curl_easy_setopt(curl, CURLOPT_PUT, 1L);
+
+  /* specify target */
+  curl_easy_setopt(curl, CURLOPT_URL, "ftp://example.com/dir/to/newfile");
+
+  /* now specify which pointer to pass to our callback */
+  curl_easy_setopt(curl, CURLOPT_READDATA, hd_src);
+
+  /* Set the size of the file to upload */
+  curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)fsize);
+
+  /* Now run off and do what you have been told! */
+  curl_easy_perform(curl);
+}
+.fi
 .SH AVAILABILITY
 Deprecated since 7.12.1. Do not use.
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_QUOTE.3 b/docs/libcurl/opts/CURLOPT_QUOTE.3
index 0dacc6f..560987e 100644
--- a/docs/libcurl/opts/CURLOPT_QUOTE.3
+++ b/docs/libcurl/opts/CURLOPT_QUOTE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_QUOTE 3 "February 08, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_QUOTE 3 "February 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_QUOTE \- (S)FTP commands to run before transfer
diff --git a/docs/libcurl/opts/CURLOPT_RANDOM_FILE.3 b/docs/libcurl/opts/CURLOPT_RANDOM_FILE.3
index a2c6987..4a2a3ce 100644
--- a/docs/libcurl/opts/CURLOPT_RANDOM_FILE.3
+++ b/docs/libcurl/opts/CURLOPT_RANDOM_FILE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RANDOM_FILE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RANDOM_FILE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RANDOM_FILE \- specify a source for random data
+CURLOPT_RANDOM_FILE \- file to read random data from
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RANGE.3 b/docs/libcurl/opts/CURLOPT_RANGE.3
index 541af64..06dbad4 100644
--- a/docs/libcurl/opts/CURLOPT_RANGE.3
+++ b/docs/libcurl/opts/CURLOPT_RANGE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RANGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RANGE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RANGE \- set byte range to request
+CURLOPT_RANGE \- byte range to request
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_READDATA.3 b/docs/libcurl/opts/CURLOPT_READDATA.3
index b8e6917..99efc06 100644
--- a/docs/libcurl/opts/CURLOPT_READDATA.3
+++ b/docs/libcurl/opts/CURLOPT_READDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,23 +20,23 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_READDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_READDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_READDATA \- custom pointer passed to the read callback
+CURLOPT_READDATA \- pointer passed to the read callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_READDATA, void *pointer);
 .SH DESCRIPTION
 Data \fIpointer\fP to pass to the file read function. If you use the
-\fICURLOPT_READFUNCTION(3)\fP option, this is the pointer you'll get as
+\fICURLOPT_READFUNCTION(3)\fP option, this is the pointer you will get as
 input in the 4th argument to the callback.
 
-If you don't specify a read callback but instead rely on the default internal
+If you do not specify a read callback but instead rely on the default internal
 read function, this data must be a valid readable FILE * (cast to 'void *').
 
-If you're using libcurl as a win32 DLL, you \fBMUST\fP use a
+If you are using libcurl as a win32 DLL, you \fBMUST\fP use a
 \fICURLOPT_READFUNCTION(3)\fP if you set this option or you will experience
 crashes.
 .SH DEFAULT
diff --git a/docs/libcurl/opts/CURLOPT_READFUNCTION.3 b/docs/libcurl/opts/CURLOPT_READFUNCTION.3
index ba1ee92..a208488 100644
--- a/docs/libcurl/opts/CURLOPT_READFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_READFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_READFUNCTION 3 "December 30, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_READFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_READFUNCTION \- read callback for data uploads
@@ -47,9 +47,9 @@
 end-of-file to the library and cause it to stop the current transfer.
 
 If you stop the current transfer by returning 0 "pre-maturely" (i.e before the
-server expected it, like when you've said you will upload N bytes and you
+server expected it, like when you have said you will upload N bytes and you
 upload less than N bytes), you may experience that the server "hangs" waiting
-for the rest of the data that won't come.
+for the rest of the data that will not come.
 
 The read callback may return \fICURL_READFUNC_ABORT\fP to stop the current
 operation immediately, resulting in a \fICURLE_ABORTED_BY_CALLBACK\fP error
@@ -62,7 +62,7 @@
 that the callback wants, or it will be considered the final packet by the
 server end and the transfer will end there.
 
-If you set this callback pointer to NULL, or don't set it at all, the default
+If you set this callback pointer to NULL, or do not set it at all, the default
 internal read function will be used. It is doing an fread() on the FILE *
 userdata set with \fICURLOPT_READDATA(3)\fP.
 
diff --git a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3 b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3
index 8239ea1..aaf57ab 100644
--- a/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3
+++ b/docs/libcurl/opts/CURLOPT_REDIR_PROTOCOLS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_REDIR_PROTOCOLS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_REDIR_PROTOCOLS 3 "October 27, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_REDIR_PROTOCOLS \- set protocols allowed to redirect to
+CURLOPT_REDIR_PROTOCOLS \- protocols allowed to redirect to
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -76,7 +76,7 @@
 CURLPROTO_TFTP
 .fi
 .SH DEFAULT
-HTTP, HTTPS, FTP and FTPS (Since 7.65.2).
+HTTP, HTTPS, FTP and FTPS (Added in 7.65.2).
 
 Older versions defaulted to all protocols except FILE, SCP and since 7.40.0
 SMB and SMBS.
diff --git a/docs/libcurl/opts/CURLOPT_REFERER.3 b/docs/libcurl/opts/CURLOPT_REFERER.3
index eb77867..f5b3bdd 100644
--- a/docs/libcurl/opts/CURLOPT_REFERER.3
+++ b/docs/libcurl/opts/CURLOPT_REFERER.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_REFERER 3 "February 19, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_REFERER 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_REFERER \- set the HTTP referer header
+CURLOPT_REFERER \- the HTTP referer header
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3 b/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3
index 1ba67ea..7b9e9b0 100644
--- a/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3
+++ b/docs/libcurl/opts/CURLOPT_REQUEST_TARGET.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_REQUEST_TARGET 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_REQUEST_TARGET 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_REQUEST_TARGET \- specify an alternative target for this request
+CURLOPT_REQUEST_TARGET \- alternative target for this request
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVE.3 b/docs/libcurl/opts/CURLOPT_RESOLVE.3
index 89e2596..523cada 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVE.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESOLVE 3 "April 24, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RESOLVE 3 "April 24, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_RESOLVE \- provide custom host name to IP address resolves
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVER_START_DATA.3 b/docs/libcurl/opts/CURLOPT_RESOLVER_START_DATA.3
index d352db3..0c28572 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVER_START_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVER_START_DATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESOLVER_START_DATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RESOLVER_START_DATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RESOLVER_START_DATA \- custom pointer passed to the resolver start callback
+CURLOPT_RESOLVER_START_DATA \- pointer passed to the resolver start callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3
index 0cc2b1d..7e1c716 100644
--- a/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_RESOLVER_START_FUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESOLVER_START_FUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RESOLVER_START_FUNCTION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RESOLVER_START_FUNCTION \- set callback to be called before a new resolve request is started
+CURLOPT_RESOLVER_START_FUNCTION \- callback called before a new name resolve is started
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM.3 b/docs/libcurl/opts/CURLOPT_RESUME_FROM.3
index 22ff50a..7d99a65 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM.3
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESUME_FROM 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RESUME_FROM 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RESUME_FROM \- set a point to resume transfer from
+CURLOPT_RESUME_FROM \- offset to resume transfer from
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3 b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3
index 722405a..a2cd8ea 100644
--- a/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_RESUME_FROM_LARGE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RESUME_FROM_LARGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RESUME_FROM_LARGE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RESUME_FROM_LARGE \- set a point to resume transfer from
+CURLOPT_RESUME_FROM_LARGE \- offset to resume transfer from
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3 b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3
index effdaa1..b7d98a5 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_CLIENT_CSEQ.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_CLIENT_CSEQ 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_CLIENT_CSEQ 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RTSP_CLIENT_CSEQ \- set the RTSP client CSEQ number
+CURLOPT_RTSP_CLIENT_CSEQ \- RTSP client CSEQ number
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3 b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3
index 1d4413a..5dbc75a 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_REQUEST.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_REQUEST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_REQUEST 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RTSP_REQUEST \- specify RTSP request
+CURLOPT_RTSP_REQUEST \- RTSP request
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3 b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3
index 1aaa252..0386f79 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SERVER_CSEQ.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_SERVER_CSEQ 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_SERVER_CSEQ 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RTSP_SERVER_CSEQ \- set the RTSP server CSEQ number
+CURLOPT_RTSP_SERVER_CSEQ \- RTSP server CSEQ number
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3 b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3
index a5fa3ed..251bf6f 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_SESSION_ID.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_SESSION_ID 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_SESSION_ID 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RTSP_SESSION_ID \- set RTSP session ID
+CURLOPT_RTSP_SESSION_ID \- RTSP session ID
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3 b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3
index 753c275..8112363 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_STREAM_URI.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_STREAM_URI 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_STREAM_URI 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RTSP_STREAM_URI \- set RTSP stream URI
+CURLOPT_RTSP_STREAM_URI \- RTSP stream URI
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3 b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3
index 48c63f0..0d22ba5 100644
--- a/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3
+++ b/docs/libcurl/opts/CURLOPT_RTSP_TRANSPORT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_RTSP_TRANSPORT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_RTSP_TRANSPORT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_RTSP_TRANSPORT \- set RTSP Transport: header
+CURLOPT_RTSP_TRANSPORT \- RTSP Transport: header
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_SASL_AUTHZID.3 b/docs/libcurl/opts/CURLOPT_SASL_AUTHZID.3
index 1dcd46a..a81184a 100644
--- a/docs/libcurl/opts/CURLOPT_SASL_AUTHZID.3
+++ b/docs/libcurl/opts/CURLOPT_SASL_AUTHZID.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SASL_AUTHZID 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SASL_AUTHZID 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SASL_AUTHZID \- authorisation identity (identity to act as)
diff --git a/docs/libcurl/opts/CURLOPT_SASL_IR.3 b/docs/libcurl/opts/CURLOPT_SASL_IR.3
index 7242faa..8415a15 100644
--- a/docs/libcurl/opts/CURLOPT_SASL_IR.3
+++ b/docs/libcurl/opts/CURLOPT_SASL_IR.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SASL_IR 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SASL_IR 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SASL_IR \- enable sending initial response in first packet
+CURLOPT_SASL_IR \- send initial response in first packet
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SEEKDATA.3 b/docs/libcurl/opts/CURLOPT_SEEKDATA.3
index 97a42f2..dc23b94 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKDATA.3
+++ b/docs/libcurl/opts/CURLOPT_SEEKDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,20 +20,20 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SEEKDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SEEKDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SEEKDATA \- custom pointer passed to the seek callback
+CURLOPT_SEEKDATA \- pointer passed to the seek callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SEEKDATA, void *pointer);
 .SH DESCRIPTION
 Data \fIpointer\fP to pass to the seek callback function. If you use the
-\fICURLOPT_SEEKFUNCTION(3)\fP option, this is the pointer you'll get as
+\fICURLOPT_SEEKFUNCTION(3)\fP option, this is the pointer you will get as
 input.
 .SH DEFAULT
-If you don't set this, NULL is passed to the callback.
+If you do not set this, NULL is passed to the callback.
 .SH PROTOCOLS
 HTTP, FTP, SFTP
 .SH EXAMPLE
diff --git a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3 b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
index 1bfd853..32da7bc 100644
--- a/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SEEKFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SEEKFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SEEKFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SEEKFUNCTION \- user callback for seeking in input stream
@@ -31,7 +31,7 @@
 /* These are the return codes for the seek callbacks */
 #define CURL_SEEKFUNC_OK       0
 #define CURL_SEEKFUNC_FAIL     1 /* fail the entire transfer */
-#define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so
+#define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking cannot be done, so
                                     libcurl might try other means instead */
 
 int seek_callback(void *userp, curl_off_t offset, int origin);
diff --git a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3 b/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3
index b157095..3ae2870 100644
--- a/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3
+++ b/docs/libcurl/opts/CURLOPT_SERVICE_NAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SERVICE_NAME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SERVICE_NAME 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SERVICE_NAME \- authentication service name
diff --git a/docs/libcurl/opts/CURLOPT_SHARE.3 b/docs/libcurl/opts/CURLOPT_SHARE.3
index 3f7b4cd..876a660 100644
--- a/docs/libcurl/opts/CURLOPT_SHARE.3
+++ b/docs/libcurl/opts/CURLOPT_SHARE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SHARE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SHARE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SHARE \- specify share handle to use
+CURLOPT_SHARE \- share handle to use
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -39,7 +39,7 @@
 
 If you add a share that is set to share cookies, your easy handle will use
 that cookie cache and get the cookie engine enabled. If you unshare an object
-that was using cookies (or change to another object that doesn't share
+that was using cookies (or change to another object that does not share
 cookies), the easy handle will get its cookie engine disabled.
 
 Data that the share object is not set to share will be dealt with the usual
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3 b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3
index deeffc2..bd56220 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKOPTDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SOCKOPTDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SOCKOPTDATA \- custom pointer to pass to sockopt callback
+CURLOPT_SOCKOPTDATA \- pointer to pass to sockopt callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3 b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3
index af256e8..d9a6c00 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKOPTFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKOPTFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SOCKOPTFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SOCKOPTFUNCTION \- set callback for setting socket options
+CURLOPT_SOCKOPTFUNCTION \- callback for setting socket options
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
@@ -55,7 +55,7 @@
 
 \fICURLSOCKTYPE_IPCXN\fP for actively created connections or since 7.28.0
 \fICURLSOCKTYPE_ACCEPT\fP for FTP when the connection was setup with PORT/EPSV
-(in earlier versions these sockets weren't passed to this callback).
+(in earlier versions these sockets were not passed to this callback).
 
 Future versions of libcurl may support more purposes. libcurl passes the newly
 created socket descriptor to the callback in the \fIcurlfd\fP parameter so
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3 b/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3
index 86efa97..ff1f1c5 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_AUTH.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKS5_AUTH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SOCKS5_AUTH 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SOCKS5_AUTH \- set allowed methods for SOCKS5 proxy authentication
+CURLOPT_SOCKS5_AUTH \- methods for SOCKS5 proxy authentication
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3 b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3
index 89cbbaa..95c299e 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_NEC.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2014, 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKS5_GSSAPI_NEC 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SOCKS5_GSSAPI_NEC 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SOCKS5_GSSAPI_NEC \- set socks proxy gssapi negotiation protection
+CURLOPT_SOCKS5_GSSAPI_NEC \- socks proxy gssapi negotiation protection
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.3 b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.3
index 79d2a4d..9eae76f 100644
--- a/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.3
+++ b/docs/libcurl/opts/CURLOPT_SOCKS5_GSSAPI_SERVICE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SOCKS5_GSSAPI_SERVICE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SOCKS5_GSSAPI_SERVICE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SOCKS5_GSSAPI_SERVICE \- SOCKS5 proxy authentication service name
diff --git a/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.3 b/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.3
index 4834a14..722901b 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_AUTH_TYPES.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_AUTH_TYPES 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_AUTH_TYPES 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSH_AUTH_TYPES \- set desired auth types for SFTP and SCP
+CURLOPT_SSH_AUTH_TYPES \- auth types for SFTP and SCP
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3 b/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3
index 3ba3672..ddfa06d 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_COMPRESSION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_COMPRESSION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_COMPRESSION 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSH_COMPRESSION \- enables compression / decompression of SSH traffic
+CURLOPT_SSH_COMPRESSION \- enable SSH compression
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3 b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3
index ce9ac5f..f366155 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 \- checksum of SSH server public key
+CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 \- MD5 checksum of SSH server public key
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256.3 b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256.3
new file mode 100644
index 0000000..ee88e4e
--- /dev/null
+++ b/docs/libcurl/opts/CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256.3
@@ -0,0 +1,61 @@
+.\" **************************************************************************
+.\" *                                  _   _ ____  _
+.\" *  Project                     ___| | | |  _ \| |
+.\" *                             / __| | | | |_) | |
+.\" *                            | (__| |_| |  _ <| |___
+.\" *                             \___|\___/|_| \_\_____|
+.\" *
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" *
+.\" * This software is licensed as described in the file COPYING, which
+.\" * you should have received as part of this distribution. The terms
+.\" * are also available at https://curl.se/docs/copyright.html.
+.\" *
+.\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+.\" * copies of the Software, and permit persons to whom the Software is
+.\" * furnished to do so, under the terms of the COPYING file.
+.\" *
+.\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+.\" * KIND, either express or implied.
+.\" *
+.\" **************************************************************************
+.\"
+.TH CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
+
+.SH NAME
+CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 \- SHA256 hash of SSH server public key
+.SH SYNOPSIS
+.nf
+#include <curl/curl.h>
+
+CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256,
+                          char *sha256);
+.SH DESCRIPTION
+Pass a char * pointing to a string containing a Base64-encoded SHA256
+hash of the remote host's public key.
+The transfer will fail if the given hash does not match the hash the
+remote host provides.
+
+.SH DEFAULT
+NULL
+.SH PROTOCOLS
+SCP and SFTP
+.SH EXAMPLE
+.nf
+CURL *curl = curl_easy_init();
+if(curl) {
+  curl_easy_setopt(curl, CURLOPT_URL, "sftp://example.com/file");
+  curl_easy_setopt(curl, CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256,
+                   "NDVkMTQxMGQ1ODdmMjQ3MjczYjAyOTY5MmRkMjVmNDQ=");
+  ret = curl_easy_perform(curl);
+  curl_easy_cleanup(curl);
+}
+.fi
+.SH AVAILABILITY
+Added in 7.80.0
+Requires the libssh2 back-end.
+.SH RETURN VALUE
+Returns CURLE_OK if the option is supported, CURLE_UNKNOWN_OPTION if not, or
+CURLE_OUT_OF_MEMORY if there was insufficient heap space.
+.SH "SEE ALSO"
+.BR CURLOPT_SSH_PUBLIC_KEYFILE "(3), " CURLOPT_SSH_AUTH_TYPES "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3 b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3
index 0f36a4e..93df7a6 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_KEYDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_KEYDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_KEYDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSH_KEYDATA \- pointer to pass to the SSH key callback
+CURLOPT_SSH_KEYDATA \- pointer passed to the SSH key callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.3 b/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.3
index d4857e8..82817de 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_KEYFUNCTION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_KEYFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_KEYFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_KEYFUNCTION \- callback for known host matching logic
@@ -32,7 +32,7 @@
   CURLKHSTAT_FINE_ADD_TO_FILE,
   CURLKHSTAT_FINE,
   CURLKHSTAT_REJECT, /* reject the connection, return an error */
-  CURLKHSTAT_DEFER,  /* do not accept it, but we can't answer right
+  CURLKHSTAT_DEFER,  /* do not accept it, but we cannot answer right
                         now so this causes a CURLE_DEFER error but
                         otherwise the connection will be left intact
                         etc */
@@ -77,19 +77,19 @@
 .IP CURLKHSTAT_FINE_REPLACE
 The new host+key is accepted and libcurl will replace the old host+key into
 the known_hosts file before continuing with the connection.  This will also
-add the new host+key combo to the known_host pool kept in memory if it wasn't
+add the new host+key combo to the known_host pool kept in memory if it was not
 already present there. The adding of data to the file is done by completely
 replacing the file with a new copy, so the permissions of the file must allow
 this. (Added in 7.73.0)
 .IP CURLKHSTAT_FINE_ADD_TO_FILE
 The host+key is accepted and libcurl will append it to the known_hosts file
 before continuing with the connection. This will also add the host+key combo
-to the known_host pool kept in memory if it wasn't already present there. The
+to the known_host pool kept in memory if it was not already present there. The
 adding of data to the file is done by completely replacing the file with a new
 copy, so the permissions of the file must allow this.
 .IP CURLKHSTAT_FINE
 The host+key is accepted libcurl will continue with the connection. This will
-also add the host+key combo to the known_host pool kept in memory if it wasn't
+also add the host+key combo to the known_host pool kept in memory if it was not
 already present there.
 .IP CURLKHSTAT_REJECT
 The host+key is rejected. libcurl will deny the connection to continue and it
diff --git a/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.3 b/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.3
index 1453f08..d908f39 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_KNOWNHOSTS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_KNOWNHOSTS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_KNOWNHOSTS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSH_KNOWNHOSTS \- file name holding the SSH known hosts
diff --git a/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.3 b/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.3
index 64d8be4..c0657c3 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_PRIVATE_KEYFILE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2014, 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_PRIVATE_KEYFILE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_PRIVATE_KEYFILE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSH_PRIVATE_KEYFILE \- set private key file for SSH auth
+CURLOPT_SSH_PRIVATE_KEYFILE \- private key file for SSH auth
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3 b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3
index f381e6a..3042e4d 100644
--- a/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3
+++ b/docs/libcurl/opts/CURLOPT_SSH_PUBLIC_KEYFILE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSH_PUBLIC_KEYFILE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSH_PUBLIC_KEYFILE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSH_PUBLIC_KEYFILE \- set public key file for SSH auth
+CURLOPT_SSH_PUBLIC_KEYFILE \- public key file for SSH auth
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERT.3 b/docs/libcurl/opts/CURLOPT_SSLCERT.3
index 87068e9..a73e05f 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERT.3
+++ b/docs/libcurl/opts/CURLOPT_SSLCERT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLCERT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLCERT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSLCERT \- set SSL client certificate
+CURLOPT_SSLCERT \- SSL client certificate
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3 b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3
index 66c6ccd..dc5f8c7 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_SSLCERTTYPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2015, 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLCERTTYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLCERTTYPE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSLCERTTYPE \- specify type of the client SSL certificate
+CURLOPT_SSLCERTTYPE \- type of client SSL certificate
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSLCERT_BLOB.3 b/docs/libcurl/opts/CURLOPT_SSLCERT_BLOB.3
index 348652c..6efdd27 100644
--- a/docs/libcurl/opts/CURLOPT_SSLCERT_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_SSLCERT_BLOB.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLCERT_BLOB 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLCERT_BLOB 3 "October 25, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLCERT_BLOB \- SSL client certificate from memory blob
@@ -61,8 +61,8 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.71.0. This option is supported by the OpenSSL, Secure
-Transport and Schannel backends.
+Added in 7.71.0. This option is supported by the OpenSSL, Secure Transport and
+Schannel backends.
 .SH RETURN VALUE
 Returns CURLE_OK if TLS enabled, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE.3 b/docs/libcurl/opts/CURLOPT_SSLENGINE.3
index d7802bc..86a5b29 100644
--- a/docs/libcurl/opts/CURLOPT_SSLENGINE.3
+++ b/docs/libcurl/opts/CURLOPT_SSLENGINE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLENGINE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLENGINE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSLENGINE \- set SSL engine identifier
+CURLOPT_SSLENGINE \- SSL engine identifier
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.3 b/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.3
index 025979e..354402d 100644
--- a/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.3
+++ b/docs/libcurl/opts/CURLOPT_SSLENGINE_DEFAULT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLENGINE_DEFAULT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLENGINE_DEFAULT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLENGINE_DEFAULT \- make SSL engine default
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEY.3 b/docs/libcurl/opts/CURLOPT_SSLKEY.3
index 8fc7431..079540b 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEY.3
+++ b/docs/libcurl/opts/CURLOPT_SSLKEY.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLKEY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLKEY 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSLKEY \- specify private keyfile for TLS and SSL client cert
+CURLOPT_SSLKEY \- private keyfile for TLS and SSL client cert
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3 b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3
index 5202a8f..137dc6f 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3
+++ b/docs/libcurl/opts/CURLOPT_SSLKEYTYPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLKEYTYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLKEYTYPE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSLKEYTYPE \- set type of the private key file
+CURLOPT_SSLKEYTYPE \- type of the private key file
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSLKEY_BLOB.3 b/docs/libcurl/opts/CURLOPT_SSLKEY_BLOB.3
index 8ee4a52..0f36dd8 100644
--- a/docs/libcurl/opts/CURLOPT_SSLKEY_BLOB.3
+++ b/docs/libcurl/opts/CURLOPT_SSLKEY_BLOB.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLKEY_BLOB 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLKEY_BLOB 3 "October 25, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSLKEY_BLOB \- private key for client cert from memory blob
@@ -68,7 +68,7 @@
 }
 .fi
 .SH AVAILABILITY
-Added in libcurl 7.71.0. This option is supported by the OpenSSL backends.
+Added in 7.71.0. This option is supported by the OpenSSL backends.
 .SH RETURN VALUE
 Returns CURLE_OK if TLS enabled, CURLE_UNKNOWN_OPTION if not, or
 CURLE_OUT_OF_MEMORY if there was insufficient heap space.
diff --git a/docs/libcurl/opts/CURLOPT_SSLVERSION.3 b/docs/libcurl/opts/CURLOPT_SSLVERSION.3
index 38c60d0..164e2d5 100644
--- a/docs/libcurl/opts/CURLOPT_SSLVERSION.3
+++ b/docs/libcurl/opts/CURLOPT_SSLVERSION.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSLVERSION 3 "March 22, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSLVERSION 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSLVERSION \- set preferred TLS/SSL version
+CURLOPT_SSLVERSION \- preferred TLS/SSL version
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3 b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3
index 5a72874..12165a1 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CIPHER_LIST.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_CIPHER_LIST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_CIPHER_LIST 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_CIPHER_LIST \- specify ciphers to use for TLS
+CURLOPT_SSL_CIPHER_LIST \- ciphers to use for TLS
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -35,21 +35,21 @@
 spaces are also acceptable separators but colons are normally used, \&!, \&-
 and \&+ can be used as operators.
 
-For OpenSSL and GnuTLS valid examples of cipher lists include 'RC4-SHA',
-\'SHA1+DES\', 'TLSv1' and 'DEFAULT'. The default list is normally set when you
-compile OpenSSL.
+For OpenSSL and GnuTLS valid examples of cipher lists include \fBRC4-SHA\fP,
+\fBSHA1+DES\fP, \fBTLSv1\fP and \fBDEFAULT\fP. The default list is normally
+set when you compile OpenSSL.
 
-You'll find more details about cipher lists on this URL:
-
- https://curl.se/docs/ssl-ciphers.html
-
-For NSS, valid examples of cipher lists include 'rsa_rc4_128_md5',
-\'rsa_aes_128_sha\', etc. With NSS you don't add/remove ciphers. If one uses
+For NSS, valid examples of cipher lists include \fBrsa_rc4_128_md5\fP,
+\fBrsa_aes_128_sha\fP, etc. With NSS you do not add/remove ciphers. If one uses
 this option then all known ciphers are disabled and only those passed in are
 enabled.
 
-For WolfSSL, valid examples of cipher lists include
-\'ECDHE-RSA-RC4-SHA\', 'AES256-SHA:AES256-SHA256', etc.
+For WolfSSL, valid examples of cipher lists include \fBECDHE-RSA-RC4-SHA\fP,
+\fBAES256-SHA:AES256-SHA256\fP, etc.
+
+you will find more details about cipher lists on this URL:
+
+ https://curl.se/docs/ssl-ciphers.html
 
 The application does not have to keep the string around after setting this
 option.
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3 b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
index 807a793..d3dc00c 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_DATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,17 +20,17 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_CTX_DATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_CTX_DATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_CTX_DATA \- custom pointer passed to ssl_ctx callback
+CURLOPT_SSL_CTX_DATA \- pointer passed to ssl_ctx callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_SSL_CTX_DATA, void *pointer);
 .SH DESCRIPTION
 Data \fIpointer\fP to pass to the ssl context callback set by the option
-\fICURLOPT_SSL_CTX_FUNCTION(3)\fP, this is the pointer you'll get as third
+\fICURLOPT_SSL_CTX_FUNCTION(3)\fP, this is the pointer you will get as third
 parameter.
 .SH DEFAULT
 NULL
@@ -47,11 +47,11 @@
 static CURLcode sslctx_function(CURL *curl, void *sslctx, void *parm)
 {
   X509_STORE *store;
-  X509 *cert=NULL;
+  X509 *cert = NULL;
   BIO *bio;
-  char *mypem = (char *)parm;
+  char *mypem = parm;
   /* get a BIO */
-  bio=BIO_new_mem_buf(mypem, -1);
+  bio = BIO_new_mem_buf(mypem, -1);
   /* use it to read the PEM formatted certificate from memory into an
    * X509 structure that SSL can use
    */
@@ -60,10 +60,10 @@
     printf("PEM_read_bio_X509 failed...\\n");
 
   /* get a pointer to the X509 certificate store (which may be empty) */
-  store=SSL_CTX_get_cert_store((SSL_CTX *)sslctx);
+  store = SSL_CTX_get_cert_store((SSL_CTX *)sslctx);
 
   /* add our certificate to this store */
-  if(X509_STORE_add_cert(store, cert)==0)
+  if(X509_STORE_add_cert(store, cert) == 0)
     printf("error adding certificate\\n");
 
   /* decrease reference counts */
@@ -89,20 +89,21 @@
     "omTxJBzcoTWcFbLUvFUufQb1nA5V9FrWk9p2rSVzTMVD\\n"
     "-----END CERTIFICATE-----\\n";
 
-  rv=curl_global_init(CURL_GLOBAL_ALL);
-  ch=curl_easy_init();
-  rv=curl_easy_setopt(ch, CURLOPT_SSLCERTTYPE, "PEM");
-  rv=curl_easy_setopt(ch, CURLOPT_SSL_VERIFYPEER, 1L);
-  rv=curl_easy_setopt(ch, CURLOPT_URL, "https://www.example.com/");
+  curl_global_init(CURL_GLOBAL_ALL);
+  ch = curl_easy_init();
+
+  curl_easy_setopt(ch, CURLOPT_SSLCERTTYPE, "PEM");
+  curl_easy_setopt(ch, CURLOPT_SSL_VERIFYPEER, 1L);
+  curl_easy_setopt(ch, CURLOPT_URL, "https://www.example.com/");
 
   /* Retrieve page using cacerts' certificate -> will succeed
    * load the certificate by installing a function doing the necessary
    * "modifications" to the SSL CONTEXT just before link init
    */
-  rv=curl_easy_setopt(ch, CURLOPT_SSL_CTX_FUNCTION, *sslctx_function);
-  rv=curl_easy_setopt(ch, CURLOPT_SSL_CTX_DATA, mypem);
-  rv=curl_easy_perform(ch);
-  if(rv==CURLE_OK)
+  curl_easy_setopt(ch, CURLOPT_SSL_CTX_FUNCTION, *sslctx_function);
+  curl_easy_setopt(ch, CURLOPT_SSL_CTX_DATA, mypem);
+  rv = curl_easy_perform(ch);
+  if(!rv)
     printf("*** transfer succeeded ***\\n");
   else
     printf("*** transfer failed ***\\n");
diff --git a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3 b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
index a0bc569..13bc921 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_CTX_FUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_CTX_FUNCTION 3 "July 16, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_CTX_FUNCTION 3 "July 26, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_CTX_FUNCTION \- SSL context callback for OpenSSL, wolfSSL or mbedTLS
@@ -76,9 +76,82 @@
 .SH PROTOCOLS
 All TLS based protocols: HTTPS, FTPS, IMAPS, POP3S, SMTPS etc.
 .SH EXAMPLE
-See cacertinmem.c in docs/examples directory for usage example.
+.nf
+/* OpenSSL specific */
 
-https://curl.se/libcurl/c/cacertinmem.html
+#include <openssl/ssl.h>
+#include <curl/curl.h>
+#include <stdio.h>
+
+static CURLcode sslctx_function(CURL *curl, void *sslctx, void *parm)
+{
+  X509_STORE *store;
+  X509 *cert = NULL;
+  BIO *bio;
+  char *mypem = parm;
+  /* get a BIO */
+  bio = BIO_new_mem_buf(mypem, -1);
+  /* use it to read the PEM formatted certificate from memory into an
+   * X509 structure that SSL can use
+   */
+  PEM_read_bio_X509(bio, &cert, 0, NULL);
+  if(cert == NULL)
+    printf("PEM_read_bio_X509 failed...\\n");
+
+  /* get a pointer to the X509 certificate store (which may be empty) */
+  store = SSL_CTX_get_cert_store((SSL_CTX *)sslctx);
+
+  /* add our certificate to this store */
+  if(X509_STORE_add_cert(store, cert) == 0)
+    printf("error adding certificate\\n");
+
+  /* decrease reference counts */
+  X509_free(cert);
+  BIO_free(bio);
+
+  /* all set to go */
+  return CURLE_OK;
+}
+
+int main(void)
+{
+  CURL * ch;
+  CURLcode rv;
+  char *mypem = /* example CA cert PEM - shortened */
+    "-----BEGIN CERTIFICATE-----\\n"
+    "MIIHPTCCBSWgAwIBAgIBADANBgkqhkiG9w0BAQQFADB5MRAwDgYDVQQKEwdSb290\\n"
+    "IENBMR4wHAYDVQQLExVodHRwOi8vd3d3LmNhY2VydC5vcmcxIjAgBgNVBAMTGUNB\\n"
+    "IENlcnQgU2lnbmluZyBBdXRob3JpdHkxITAfBgkqhkiG9w0BCQEWEnN1cHBvcnRA\\n"
+    "Y2FjZXJ0Lm9yZzAeFw0wMzAzMzAxMjI5NDlaFw0zMzAzMjkxMjI5NDlaMHkxEDAO\\n"
+    "GCSNe9FINSkYQKyTYOGWhlC0elnYjyELn8+CkcY7v2vcB5G5l1YjqrZslMZIBjzk\\n"
+    "zk6q5PYvCdxTby78dOs6Y5nCpqyJvKeyRKANihDjbPIky/qbn3BHLt4Ui9SyIAmW\\n"
+    "omTxJBzcoTWcFbLUvFUufQb1nA5V9FrWk9p2rSVzTMVD\\n"
+    "-----END CERTIFICATE-----\\n";
+
+  curl_global_init(CURL_GLOBAL_ALL);
+  ch = curl_easy_init();
+
+  curl_easy_setopt(ch, CURLOPT_SSLCERTTYPE, "PEM");
+  curl_easy_setopt(ch, CURLOPT_SSL_VERIFYPEER, 1L);
+  curl_easy_setopt(ch, CURLOPT_URL, "https://www.example.com/");
+
+  /* Retrieve page using cacerts' certificate -> will succeed
+   * load the certificate by installing a function doing the necessary
+   * "modifications" to the SSL CONTEXT just before link init
+   */
+  curl_easy_setopt(ch, CURLOPT_SSL_CTX_FUNCTION, *sslctx_function);
+  curl_easy_setopt(ch, CURLOPT_SSL_CTX_DATA, mypem);
+  rv = curl_easy_perform(ch);
+  if(!rv)
+    printf("*** transfer succeeded ***\\n");
+  else
+    printf("*** transfer failed ***\\n");
+
+  curl_easy_cleanup(ch);
+  curl_global_cleanup();
+  return rv;
+}
+.fi
 .SH AVAILABILITY
 Added in 7.11.0 for OpenSSL, in 7.42.0 for wolfSSL and in 7.54.0 for
 mbedTLS. Other SSL backends are not supported.
diff --git a/docs/libcurl/opts/CURLOPT_SSL_EC_CURVES.3 b/docs/libcurl/opts/CURLOPT_SSL_EC_CURVES.3
index dca1a88..a2bb347 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_EC_CURVES.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_EC_CURVES.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_EC_CURVES 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_EC_CURVES 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_EC_CURVES \- set key exchange curves
+CURLOPT_SSL_EC_CURVES \- key exchange curves
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3 b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3
index d4cce50..15f8369 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_ALPN.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_ENABLE_ALPN 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_ENABLE_ALPN 3 "September 19, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_ENABLE_ALPN \- enable ALPN
+CURLOPT_SSL_ENABLE_ALPN \- Application Layer Protocol Negotiation
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3 b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3
index 276c4d6..0314ec8 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_ENABLE_NPN.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_ENABLE_NPN 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_ENABLE_NPN 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_ENABLE_NPN \- enable NPN
+CURLOPT_SSL_ENABLE_NPN \- use NPN
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3 b/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
index 0b2f027..01eea84 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_FALSESTART.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_FALSESTART 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_FALSESTART 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_FALSESTART \- enable TLS false start
+CURLOPT_SSL_FALSESTART \- TLS false start
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -54,3 +54,5 @@
 .SH RETURN VALUE
 Returns CURLE_OK if false start is supported by the SSL backend, otherwise
 returns CURLE_NOT_BUILT_IN.
+.SH SEE ALSO
+.BR CURLOPT_TCP_FASTOPEN "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3 b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
index a8cfb31..9c78df2 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_OPTIONS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_OPTIONS 3 "February 27, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_OPTIONS 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_OPTIONS \- set SSL behavior options
+CURLOPT_SSL_OPTIONS \- SSL behavior options
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -33,7 +33,7 @@
 behaviors. Available bits:
 .IP CURLSSLOPT_ALLOW_BEAST
 Tells libcurl to not attempt to use any workarounds for a security flaw in the
-SSL3 and TLS1.0 protocols.  If this option isn't used or this bit is set to 0,
+SSL3 and TLS1.0 protocols.  If this option is not used or this bit is set to 0,
 the SSL layer libcurl uses may use a work-around for this flaw although it
 might cause interoperability problems with some (older) SSL
 implementations. WARNING: avoiding this work-around lessens the security, and
@@ -43,7 +43,7 @@
 Tells libcurl to disable certificate revocation checks for those SSL backends
 where such behavior is present. This option is only supported for Schannel
 (the native Windows SSL library), with an exception in the case of Windows'
-Untrusted Publishers block list which it seems can't be bypassed. (Added in
+Untrusted Publishers block list which it seems cannot be bypassed. (Added in
 7.44.0)
 .IP CURLSSLOPT_NO_PARTIALCHAIN
 Tells libcurl to not accept "partial" certificate chains, which it otherwise
diff --git a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3 b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3
index 3601e64..9c6c5de 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_SESSIONID_CACHE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_SESSIONID_CACHE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_SESSIONID_CACHE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SSL_SESSIONID_CACHE \- enable/disable use of the SSL session-ID cache
+CURLOPT_SSL_SESSIONID_CACHE \- use the SSL session-ID cache
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3
index d76387b..cbdd856 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYHOST.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_VERIFYHOST 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_VERIFYHOST 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_VERIFYHOST \- verify the certificate's name against host
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3
index 8676e64..60b8725 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYPEER.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_VERIFYPEER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_VERIFYPEER 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_VERIFYPEER \- verify the peer's SSL certificate
@@ -32,7 +32,7 @@
 Pass a long as parameter to enable or disable.
 
 This option determines whether curl verifies the authenticity of the peer's
-certificate. A value of 1 means curl verifies; 0 (zero) means it doesn't.
+certificate. A value of 1 means curl verifies; 0 (zero) means it does not.
 
 When negotiating a TLS or SSL connection, the server sends a certificate
 indicating its identity.  Curl verifies whether the certificate is authentic,
@@ -50,7 +50,7 @@
 Authenticating the certificate is not enough to be sure about the server. You
 typically also want to ensure that the server is the server you mean to be
 talking to.  Use \fICURLOPT_SSL_VERIFYHOST(3)\fP for that. The check that the
-host name in the certificate is valid for the host name you're connecting to
+host name in the certificate is valid for the host name you are connecting to
 is done independently of the \fICURLOPT_SSL_VERIFYPEER(3)\fP option.
 
 WARNING: disabling verification of the certificate allows bad guys to
diff --git a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3 b/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
index 9c8f0bd..5da44d1 100644
--- a/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
+++ b/docs/libcurl/opts/CURLOPT_SSL_VERIFYSTATUS.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SSL_VERIFYSTATUS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SSL_VERIFYSTATUS 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_SSL_VERIFYSTATUS \- verify the certificate's status
diff --git a/docs/libcurl/opts/CURLOPT_STDERR.3 b/docs/libcurl/opts/CURLOPT_STDERR.3
index 1a599ed..0984925 100644
--- a/docs/libcurl/opts/CURLOPT_STDERR.3
+++ b/docs/libcurl/opts/CURLOPT_STDERR.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STDERR 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_STDERR 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_STDERR \- redirect stderr to another stream
diff --git a/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3 b/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3
index e0a1137..7ae9bd4 100644
--- a/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3
+++ b/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STREAM_DEPENDS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_STREAM_DEPENDS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_STREAM_DEPENDS \- set stream this transfer depends on
+CURLOPT_STREAM_DEPENDS \- stream this transfer depends on
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3 b/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
index c88208b..edd4231 100644
--- a/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
+++ b/docs/libcurl/opts/CURLOPT_STREAM_DEPENDS_E.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STREAM_DEPENDS_E 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_STREAM_DEPENDS_E 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_STREAM_DEPENDS_E \- set stream this transfer depends on exclusively
+CURLOPT_STREAM_DEPENDS_E \- stream this transfer depends on exclusively
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3 b/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
index cce0610..b3f1c51 100644
--- a/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
+++ b/docs/libcurl/opts/CURLOPT_STREAM_WEIGHT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_STREAM_WEIGHT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_STREAM_WEIGHT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_STREAM_WEIGHT \- set numerical stream weight
+CURLOPT_STREAM_WEIGHT \- numerical stream weight
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3 b/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3
index c4495ae..ac32b3e 100644
--- a/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3
+++ b/docs/libcurl/opts/CURLOPT_SUPPRESS_CONNECT_HEADERS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_SUPPRESS_CONNECT_HEADERS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_SUPPRESS_CONNECT_HEADERS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_SUPPRESS_CONNECT_HEADERS \- Suppress proxy CONNECT response headers from user callbacks
+CURLOPT_SUPPRESS_CONNECT_HEADERS \- suppress proxy CONNECT response headers from user callbacks
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
diff --git a/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3 b/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3
index 13c676f..d4c0031 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_FASTOPEN.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_FASTOPEN 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TCP_FASTOPEN 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TCP_FASTOPEN \- enable TCP Fast Open
+CURLOPT_TCP_FASTOPEN \- TCP Fast Open
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -53,3 +53,5 @@
 .SH RETURN VALUE
 Returns CURLE_OK if fast open is supported by the operating system, otherwise
 returns CURLE_NOT_BUILT_IN.
+.SH SEE ALSO
+.BR CURLOPT_SSL_FALSESTART "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
index cb270f0..384f2b2 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPALIVE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_KEEPALIVE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TCP_KEEPALIVE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TCP_KEEPALIVE \- enable TCP keep-alive probing
+CURLOPT_TCP_KEEPALIVE \- TCP keep-alive probing
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
index b56eb76..1306cf6 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPIDLE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_KEEPIDLE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TCP_KEEPIDLE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TCP_KEEPIDLE \- set TCP keep-alive idle time wait
+CURLOPT_TCP_KEEPIDLE \- TCP keep-alive idle time wait
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3 b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
index 44b4871..1a80720 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_KEEPINTVL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_KEEPINTVL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TCP_KEEPINTVL 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TCP_KEEPINTVL \- set TCP keep-alive interval
+CURLOPT_TCP_KEEPINTVL \- TCP keep-alive interval
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3 b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3
index 1868fb2..23efa2e 100644
--- a/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3
+++ b/docs/libcurl/opts/CURLOPT_TCP_NODELAY.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TCP_NODELAY 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TCP_NODELAY 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TCP_NODELAY \- set the TCP_NODELAY option
+CURLOPT_TCP_NODELAY \- the TCP_NODELAY option
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3 b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3
index a61e848..fe1b07d 100644
--- a/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_TELNETOPTIONS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TELNETOPTIONS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TELNETOPTIONS 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TELNETOPTIONS \- custom telnet options
+CURLOPT_TELNETOPTIONS \- set of telnet options
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.3 b/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.3
index 6670f01..ec96f0f 100644
--- a/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.3
+++ b/docs/libcurl/opts/CURLOPT_TFTP_BLKSIZE.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TFTP_BLKSIZE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TFTP_BLKSIZE 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TFTP_BLKSIZE \- TFTP block size
diff --git a/docs/libcurl/opts/CURLOPT_TFTP_NO_OPTIONS.3 b/docs/libcurl/opts/CURLOPT_TFTP_NO_OPTIONS.3
index 7c2eb0d..243b88a 100644
--- a/docs/libcurl/opts/CURLOPT_TFTP_NO_OPTIONS.3
+++ b/docs/libcurl/opts/CURLOPT_TFTP_NO_OPTIONS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2016, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TFTP_NO_OPTIONS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TFTP_NO_OPTIONS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TFTP_NO_OPTIONS \- Do not send TFTP options requests.
+CURLOPT_TFTP_NO_OPTIONS \- send no TFTP options requests
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -70,3 +70,5 @@
 Added in 7.48.0
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
+.SH SEE ALSO
+.BR CURLOPT_TFTP_BLKSIZE "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_TIMECONDITION.3 b/docs/libcurl/opts/CURLOPT_TIMECONDITION.3
index 5e97354..1f0d8bb 100644
--- a/docs/libcurl/opts/CURLOPT_TIMECONDITION.3
+++ b/docs/libcurl/opts/CURLOPT_TIMECONDITION.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMECONDITION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TIMECONDITION 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TIMECONDITION \- select condition for a time request
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT.3 b/docs/libcurl/opts/CURLOPT_TIMEOUT.3
index 07321ba..a39a82b 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEOUT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TIMEOUT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TIMEOUT \- set maximum time the request is allowed to take
+CURLOPT_TIMEOUT \- maximum time the transfer is allowed to complete
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3 b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
index 5d61a8f..088515a 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEOUT_MS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEOUT_MS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TIMEOUT_MS 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TIMEOUT_MS \- set maximum time the request is allowed to take
+CURLOPT_TIMEOUT_MS \- maximum time the transfer is allowed to complete
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TIMEVALUE.3 b/docs/libcurl/opts/CURLOPT_TIMEVALUE.3
index 8bf177f..134469c 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEVALUE.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEVALUE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEVALUE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TIMEVALUE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TIMEVALUE \- set time value for conditional
+CURLOPT_TIMEVALUE \- time value for conditional
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3 b/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3
index 5827c8d..421211a 100644
--- a/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3
+++ b/docs/libcurl/opts/CURLOPT_TIMEVALUE_LARGE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TIMEVALUE_LARGE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TIMEVALUE_LARGE 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TIMEVALUE_LARGE \- set time value for conditional
+CURLOPT_TIMEVALUE_LARGE \- time value for conditional
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3 b/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3
index 0dc89f2..d59b4a4 100644
--- a/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3
+++ b/docs/libcurl/opts/CURLOPT_TLS13_CIPHERS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TLS13_CIPHERS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TLS13_CIPHERS 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TLS13_CIPHERS \- specify ciphers suites to use for TLS 1.3
+CURLOPT_TLS13_CIPHERS \- ciphers suites to use for TLS 1.3
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -33,7 +33,7 @@
 suites to use for the TLS 1.3 connection. The list must be syntactically
 correct, it consists of one or more cipher suite strings separated by colons.
 
-You'll find more details about cipher lists on this URL:
+you will find more details about cipher lists on this URL:
 
  https://curl.se/docs/ssl-ciphers.html
 
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.3 b/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.3
index ba65dc0..ba6eca4 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.3
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_PASSWORD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TLSAUTH_PASSWORD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TLSAUTH_PASSWORD 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TLSAUTH_PASSWORD \- password to use for TLS authentication
@@ -37,7 +37,7 @@
 The application does not have to keep the string around after setting this
 option.
 
-This feature relies in TLS SRP which doesn't work with TLS 1.3.
+This feature relies in TLS SRP which does not work with TLS 1.3.
 .SH DEFAULT
 NULL
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3 b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3
index fdcfb7e..d3e908b 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_TYPE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TLSAUTH_TYPE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TLSAUTH_TYPE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TLSAUTH_TYPE \- set TLS authentication methods
+CURLOPT_TLSAUTH_TYPE \- TLS authentication methods
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -42,7 +42,7 @@
 The application does not have to keep the string around after setting this
 option.
 
-TLS SRP doesn't work with TLS 1.3.
+TLS SRP does not work with TLS 1.3.
 .SH DEFAULT
 blank
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.3 b/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.3
index 1b3f383..aa14ebc 100644
--- a/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.3
+++ b/docs/libcurl/opts/CURLOPT_TLSAUTH_USERNAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TLSAUTH_USERNAME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TLSAUTH_USERNAME 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TLSAUTH_USERNAME \- user name to use for TLS authentication
@@ -37,7 +37,7 @@
 The application does not have to keep the string around after setting this
 option.
 
-This feature relies in TLS SRP which doesn't work with TLS 1.3.
+This feature relies in TLS SRP which does not work with TLS 1.3.
 .SH DEFAULT
 NULL
 .SH PROTOCOLS
diff --git a/docs/libcurl/opts/CURLOPT_TRAILERDATA.3 b/docs/libcurl/opts/CURLOPT_TRAILERDATA.3
index 1d395da..19c9ac1 100644
--- a/docs/libcurl/opts/CURLOPT_TRAILERDATA.3
+++ b/docs/libcurl/opts/CURLOPT_TRAILERDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,15 +20,15 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TRAILERDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TRAILERDATA 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TRAILERDATA \- Custom pointer passed to the trailing headers callback
+CURLOPT_TRAILERDATA \- pointer passed to trailing headers callback
 .SH SYNOPSIS
 #include <curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_TRAILERDATA, void *userdata);
-.SH DESCRIPTION:
+.SH DESCRIPTION
 Data pointer to be passed to the HTTP trailer callback function.
 .SH DEFAULT
 NULL
@@ -46,5 +46,7 @@
 A more complete example can be found in examples/http_trailers.html
 .SH AVAILABILITY
 This option was added in curl 7.64.0 and is present if HTTP support is enabled
+.SH RETURN VALUE
+Returns CURLE_OK.
 .SH "SEE ALSO"
 .BR CURLOPT_TRAILERFUNCTION "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_TRAILERFUNCTION.3 b/docs/libcurl/opts/CURLOPT_TRAILERFUNCTION.3
index 1b521cf..c8d8d64 100644
--- a/docs/libcurl/opts/CURLOPT_TRAILERFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_TRAILERFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TRAILERFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TRAILERFUNCTION 3 "October 26, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_TRAILERFUNCTION \- Set callback for sending trailing headers
+CURLOPT_TRAILERFUNCTION \- callback for sending trailing headers
 .SH SYNOPSIS
 #include <curl.h>
 
@@ -67,7 +67,7 @@
 static int trailer_cb(struct curl_slist **tr, void *data)
 {
   /* libcurl will free the list */
-  tr = curl_slist_append(*tr, "My-super-awesome-trailer: trailer-stuff");
+  *tr = curl_slist_append(*tr, "My-super-awesome-trailer: trailer-stuff");
   return CURL_TRAILERFUNC_OK;
 }
 
@@ -98,5 +98,7 @@
 }
 .SH AVAILABILITY
 This option was added in curl 7.64.0 and is present if HTTP support is enabled
+.SH RETURN VALUE
+Returns CURLE_OK.
 .SH "SEE ALSO"
 .BR CURLOPT_TRAILERDATA "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3 b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3
index 2ef66a8..4e1c258 100644
--- a/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3
+++ b/docs/libcurl/opts/CURLOPT_TRANSFERTEXT.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TRANSFERTEXT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TRANSFERTEXT 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TRANSFERTEXT \- request a text based transfer for FTP
diff --git a/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.3 b/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.3
index 630c2d4..2b839e8 100644
--- a/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.3
+++ b/docs/libcurl/opts/CURLOPT_TRANSFER_ENCODING.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_TRANSFER_ENCODING 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_TRANSFER_ENCODING 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_TRANSFER_ENCODING \- ask for HTTP Transfer Encoding
diff --git a/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.3 b/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.3
index b8c6f0b..a37548f 100644
--- a/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.3
+++ b/docs/libcurl/opts/CURLOPT_UNIX_SOCKET_PATH.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_UNIX_SOCKET_PATH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_UNIX_SOCKET_PATH 3 "October 27, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_UNIX_SOCKET_PATH \- set Unix domain socket
+CURLOPT_UNIX_SOCKET_PATH \- Unix domain socket
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -41,42 +41,41 @@
 The maximum path length on Cygwin, Linux and Solaris is 107. On other platforms
 it might be even less.
 
-Proxy and TCP options such as
-.BR CURLOPT_TCP_NODELAY "(3)
-are not supported. Proxy options such as
-.BR CURLOPT_PROXY "(3)
-have no effect either as these are TCP-oriented, and asking a proxy server to
-connect to a certain Unix domain socket is not possible.
+Proxy and TCP options such as \fICURLOPT_TCP_NODELAY(3)\fP are not
+supported. Proxy options such as \fICURLOPT_PROXY(3)\fP have no effect either
+as these are TCP-oriented, and asking a proxy server to connect to a certain
+Unix domain socket is not possible.
 
 The application does not have to keep the string around after setting this
 option.
 .SH DEFAULT
 Default is NULL, meaning that no Unix domain sockets are used.
 .SH PROTOCOLS
-All protocols except for file:// and FTP are supported in theory. HTTP, IMAP,
+All protocols except for FILE and FTP are supported in theory. HTTP, IMAP,
 POP3 and SMTP should in particular work (including their SSL/TLS variants).
 .SH EXAMPLE
-Given that you have an nginx server running, listening on /tmp/nginx.sock, you
+Given that you have an HTTP server running listening on /tmp/httpd.sock, you
 can request an HTTP resource with:
 
 .nf
-    curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, "/tmp/nginx.sock");
-    curl_easy_setopt(curl_handle, CURLOPT_URL, "http://localhost/");
+  curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, "/tmp/httpd.sock");
+  curl_easy_setopt(curl_handle, CURLOPT_URL, "http://localhost/");
 .fi
 
-If you are on Linux and somehow have a need for paths larger than 107 bytes, you
-could use the proc filesystem to bypass the limitation:
+If you are on Linux and somehow have a need for paths larger than 107 bytes,
+you could use the proc filesystem to bypass the limitation:
 
 .nf
-    int dirfd = open(long_directory_path_to_socket, O_DIRECTORY | O_RDONLY);
-    char path[108];
-    snprintf(path, sizeof(path), "/proc/self/fd/%d/nginx.sock", dirfd);
-    curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, path);
-    /* Be sure to keep dirfd valid until you discard the handle */
+  int dirfd = open(long_directory_path_to_socket, O_DIRECTORY | O_RDONLY);
+  char path[108];
+  snprintf(path, sizeof(path), "/proc/self/fd/%d/httpd.sock", dirfd);
+  curl_easy_setopt(curl_handle, CURLOPT_UNIX_SOCKET_PATH, path);
+  /* Be sure to keep dirfd valid until you discard the handle */
 .fi
 .SH AVAILABILITY
-Since 7.40.0.
+Added in 7.40.0.
 .SH RETURN VALUE
 Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
 .SH "SEE ALSO"
+.BR CURLOPT_ABSTRACT_UNIX_SOCKET "(3), "
 .BR CURLOPT_OPENSOCKETFUNCTION "(3), " unix "(7), "
diff --git a/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.3 b/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.3
index 2cc20d1..91d6d36 100644
--- a/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.3
+++ b/docs/libcurl/opts/CURLOPT_UNRESTRICTED_AUTH.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_UNRESTRICTED_AUTH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_UNRESTRICTED_AUTH 3 "November 04, 2020" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_UNRESTRICTED_AUTH \- send credentials to other hosts too
diff --git a/docs/libcurl/opts/CURLOPT_UPKEEP_INTERVAL_MS.3 b/docs/libcurl/opts/CURLOPT_UPKEEP_INTERVAL_MS.3
index 969d1f3..0d14d42 100644
--- a/docs/libcurl/opts/CURLOPT_UPKEEP_INTERVAL_MS.3
+++ b/docs/libcurl/opts/CURLOPT_UPKEEP_INTERVAL_MS.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_UPKEEP_INTERVAL_MS 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_UPKEEP_INTERVAL_MS 3 "September 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_UPKEEP_INTERVAL_MS \- connection upkeep interval
@@ -43,6 +43,8 @@
 
 .SH DEFAULT
 CURL_UPKEEP_INTERVAL_DEFAULT (currently defined as 60000L, which is 60 seconds)
+.SH PROTOCOLS
+All
 .SH EXAMPLE
 .nf
 CURL *curl = curl_easy_init();
@@ -72,3 +74,6 @@
 Added in 7.62.0
 .SH RETURN VALUE
 Returns CURLE_OK
+.SH SEE ALSO
+.BR CURLOPT_TCP_KEEPALIVE "(3), "
+
diff --git a/docs/libcurl/opts/CURLOPT_UPLOAD.3 b/docs/libcurl/opts/CURLOPT_UPLOAD.3
index 5c24e6a..f28f1a3 100644
--- a/docs/libcurl/opts/CURLOPT_UPLOAD.3
+++ b/docs/libcurl/opts/CURLOPT_UPLOAD.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_UPLOAD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_UPLOAD 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_UPLOAD \- enable data upload
+CURLOPT_UPLOAD \- data upload
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -66,7 +66,7 @@
   /* Set the size of the file to upload */
   curl_easy_setopt(curl, CURLOPT_INFILESIZE_LARGE, (curl_off_t)fsize);
 
-  /* Now run off and do what you've been told! */
+  /* Now run off and do what you have been told! */
   curl_easy_perform(curl);
 }
 .fi
diff --git a/docs/libcurl/opts/CURLOPT_UPLOAD_BUFFERSIZE.3 b/docs/libcurl/opts/CURLOPT_UPLOAD_BUFFERSIZE.3
index ac6505e..48759c2 100644
--- a/docs/libcurl/opts/CURLOPT_UPLOAD_BUFFERSIZE.3
+++ b/docs/libcurl/opts/CURLOPT_UPLOAD_BUFFERSIZE.3
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_UPLOAD_BUFFERSIZE 3 "May 06, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_UPLOAD_BUFFERSIZE 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_UPLOAD_BUFFERSIZE \- set preferred upload buffer size
+CURLOPT_UPLOAD_BUFFERSIZE \- upload buffer size
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -43,7 +43,7 @@
 16 kilobytes.
 
 Since curl 7.61.1 the upload buffer is allocated on-demand - so if the handle
-isn't used for upload, this buffer will not be allocated at all.
+is not used for upload, this buffer will not be allocated at all.
 
 DO NOT set this option on a handle that is currently used for an active
 transfer as that may lead to unintended consequences.
diff --git a/docs/libcurl/opts/CURLOPT_URL.3 b/docs/libcurl/opts/CURLOPT_URL.3
index 2423d79..38654e0 100644
--- a/docs/libcurl/opts/CURLOPT_URL.3
+++ b/docs/libcurl/opts/CURLOPT_URL.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_URL 3 "June 15, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_URL 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_URL \- provide the URL to use in the request
+CURLOPT_URL \- URL for this transfer
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -37,7 +37,7 @@
 
 For a greater explanation of the format please see RFC3986.
 
-libcurl doesn't validate the syntax or use this variable until the transfer is
+libcurl does not validate the syntax or use this variable until the transfer is
 issued. Even if you set a crazy value here, \fIcurl_easy_setopt(3)\fP will
 still return \fICURLE_OK\fP.
 
@@ -78,7 +78,7 @@
 If libcurl is built without IDN support, the server name is used exactly as
 specified when passed to the name resolver functions.
 .SH DEFAULT
-There is no default URL. If this option isn't set, no transfer can be
+There is no default URL. If this option is not set, no transfer can be
 performed.
 .SH SECURITY CONCERNS
 Applications may at times find it convenient to allow users to specify URLs
@@ -89,8 +89,8 @@
 
 If you have an application that runs as or in a server application, getting an
 unfiltered URL can easily trick your application to access a local resource
-instead of a remote. Protecting yourself against localhost accesses is very
-hard when accepting user provided URLs.
+instead of a remote. Protecting yourself against localhost accesses is hard
+when accepting user provided URLs.
 
 Such custom URLs can also access other ports than you planned as port numbers
 are part of the regular URL format. The combination of a local host and a
@@ -120,7 +120,7 @@
 Returns CURLE_OK on success or CURLE_OUT_OF_MEMORY if there was insufficient
 heap space.
 
-Note that \fIcurl_easy_setopt(3)\fP won't actually parse the given string so
+Note that \fIcurl_easy_setopt(3)\fP will not actually parse the given string so
 given a bad URL, it will not be detected until \fIcurl_easy_perform(3)\fP or
 similar is called.
 .SH "SEE ALSO"
diff --git a/docs/libcurl/opts/CURLOPT_USERAGENT.3 b/docs/libcurl/opts/CURLOPT_USERAGENT.3
index 2c9a80e..a2b355f 100644
--- a/docs/libcurl/opts/CURLOPT_USERAGENT.3
+++ b/docs/libcurl/opts/CURLOPT_USERAGENT.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_USERAGENT 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_USERAGENT 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_USERAGENT \- set HTTP user-agent header
+CURLOPT_USERAGENT \- HTTP user-agent header
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/CURLOPT_USERNAME.3 b/docs/libcurl/opts/CURLOPT_USERNAME.3
index 9ced4f1..8dd29bc 100644
--- a/docs/libcurl/opts/CURLOPT_USERNAME.3
+++ b/docs/libcurl/opts/CURLOPT_USERNAME.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_USERNAME 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_USERNAME 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_USERNAME \- user name to use in authentication
@@ -40,7 +40,7 @@
 
 When using Kerberos V5 authentication with a Windows based server, you should
 include the domain name in order for the server to successfully obtain a
-Kerberos Ticket. If you don't then the initial part of the authentication
+Kerberos Ticket. If you do not then the initial part of the authentication
 handshake may fail.
 
 When using NTLM, the user name can be specified simply as the user name
diff --git a/docs/libcurl/opts/CURLOPT_USERPWD.3 b/docs/libcurl/opts/CURLOPT_USERPWD.3
index fe89d84..faa15cf 100644
--- a/docs/libcurl/opts/CURLOPT_USERPWD.3
+++ b/docs/libcurl/opts/CURLOPT_USERPWD.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_USERPWD 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_USERPWD 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_USERPWD \- user name and password to use in authentication
@@ -34,7 +34,7 @@
 
 When using Kerberos V5 authentication with a Windows based server, you should
 specify the user name part with the domain name in order for the server to
-successfully obtain a Kerberos Ticket. If you don't then the initial part of
+successfully obtain a Kerberos Ticket. If you do not then the initial part of
 the authentication handshake may fail.
 
 When using NTLM, the user name can be specified simply as the user name
diff --git a/docs/libcurl/opts/CURLOPT_USE_SSL.3 b/docs/libcurl/opts/CURLOPT_USE_SSL.3
index 3bc98a2..cc40cf0 100644
--- a/docs/libcurl/opts/CURLOPT_USE_SSL.3
+++ b/docs/libcurl/opts/CURLOPT_USE_SSL.3
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_USE_SSL 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_USE_SSL 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
 CURLOPT_USE_SSL \- request using SSL / TLS for the transfer
@@ -37,7 +37,7 @@
 
 This is for enabling SSL/TLS when you use FTP, SMTP, POP3, IMAP etc.
 .IP CURLUSESSL_NONE
-Don't attempt to use SSL.
+do not attempt to use SSL.
 .IP CURLUSESSL_TRY
 Try using SSL, proceed as normal otherwise.
 .IP CURLUSESSL_CONTROL
diff --git a/docs/libcurl/opts/CURLOPT_VERBOSE.3 b/docs/libcurl/opts/CURLOPT_VERBOSE.3
index b9125c1..21f35b5 100644
--- a/docs/libcurl/opts/CURLOPT_VERBOSE.3
+++ b/docs/libcurl/opts/CURLOPT_VERBOSE.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,17 +20,17 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_VERBOSE 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_VERBOSE 3 "November 01, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_VERBOSE \- set verbose mode on/off
+CURLOPT_VERBOSE \- verbose mode
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_VERBOSE, long onoff);
 .SH DESCRIPTION
 Set the \fIonoff\fP parameter to 1 to make the library display a lot of
-verbose information about its operations on this \fIhandle\fP. Very useful for
+verbose information about its operations on this \fIhandle\fP. Useful for
 libcurl and/or protocol debugging and understanding. The verbose information
 will be sent to stderr, or the stream set with \fICURLOPT_STDERR(3)\fP.
 
diff --git a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3 b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3
index 91b9a97..ebc9c27 100644
--- a/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3
+++ b/docs/libcurl/opts/CURLOPT_WILDCARDMATCH.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_WILDCARDMATCH 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_WILDCARDMATCH 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_WILDCARDMATCH \- enable directory wildcard transfers
+CURLOPT_WILDCARDMATCH \- directory wildcard transfers
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -79,7 +79,21 @@
 .SH PROTOCOLS
 This feature is only supported for FTP download.
 .SH EXAMPLE
-See https://curl.se/libcurl/c/ftp-wildcard.html
+.nf
+  /* initialization of easy handle */
+  handle = curl_easy_init();
+
+  /* turn on wildcard matching */
+  curl_easy_setopt(handle, CURLOPT_WILDCARDMATCH, 1L);
+
+  /* callback is called before download of concrete file started */
+  curl_easy_setopt(handle, CURLOPT_CHUNK_BGN_FUNCTION, file_is_coming);
+
+  /* callback is called after data from the file have been transferred */
+  curl_easy_setopt(handle, CURLOPT_CHUNK_END_FUNCTION, file_is_downloaded);
+
+  /* See more on https://curl.se/libcurl/c/ftp-wildcard.html */
+.fi
 .SH AVAILABILITY
 Added in 7.21.0
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_WRITEDATA.3 b/docs/libcurl/opts/CURLOPT_WRITEDATA.3
index adc5b51..feb8bfc 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEDATA.3
+++ b/docs/libcurl/opts/CURLOPT_WRITEDATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,25 +20,25 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_WRITEDATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_WRITEDATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_WRITEDATA \- custom pointer passed to the write callback
+CURLOPT_WRITEDATA \- pointer passed to the write callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
 CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WRITEDATA, void *pointer);
 .SH DESCRIPTION
 A data \fIpointer\fP to pass to the write callback. If you use the
-\fICURLOPT_WRITEFUNCTION(3)\fP option, this is the pointer you'll get in that
-callback's 4th argument. If you don't use a write callback, you must make
+\fICURLOPT_WRITEFUNCTION(3)\fP option, this is the pointer you will get in that
+callback's 4th argument. If you do not use a write callback, you must make
 \fIpointer\fP a 'FILE *' (cast to 'void *') as libcurl will pass this to
 \fIfwrite(3)\fP when writing data.
 
 The internal \fICURLOPT_WRITEFUNCTION(3)\fP will write the data to the FILE *
-given with this option, or to stdout if this option hasn't been set.
+given with this option, or to stdout if this option has not been set.
 
-If you're using libcurl as a win32 DLL, you \fBMUST\fP use a
+If you are using libcurl as a win32 DLL, you \fBMUST\fP use a
 \fICURLOPT_WRITEFUNCTION(3)\fP if you set this option or you will experience
 crashes.
 .SH DEFAULT
diff --git a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3 b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3
index facfeca..c274bbb 100644
--- a/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_WRITEFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_WRITEFUNCTION 3 "June 09, 2021" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_WRITEFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_WRITEFUNCTION \- set callback for writing received data
+CURLOPT_WRITEFUNCTION \- callback for writing received data
 .SH SYNOPSIS
 .nf
 #include <curl/curl.h>
@@ -58,7 +58,7 @@
 Set the \fIuserdata\fP argument with the \fICURLOPT_WRITEDATA(3)\fP option.
 
 Your callback should return the number of bytes actually taken care of. If
-that amount differs from the amount passed to your callback function, it'll
+that amount differs from the amount passed to your callback function, it will
 signal an error condition to the library. This will cause the transfer to get
 aborted and the libcurl function used will return \fICURLE_WRITE_ERROR\fP.
 
@@ -69,16 +69,12 @@
 your callback. The internal default function will write the data to the FILE *
 given with \fICURLOPT_WRITEDATA(3)\fP.
 
-This option doesn't enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
+This option does not enable HSTS, you need to use \fICURLOPT_HSTS_CTRL(3)\fP to
 do that.
 .SH DEFAULT
 libcurl will use 'fwrite' as a callback by default.
 .SH PROTOCOLS
 For all protocols
-.SH AVAILABILITY
-Support for the CURL_WRITEFUNC_PAUSE return code was added in version 7.18.0.
-.SH RETURN VALUE
-This will return CURLE_OK.
 .SH EXAMPLE
 .nf
  struct memory {
@@ -111,6 +107,10 @@
  /* we pass our 'chunk' struct to the callback function */
  curl_easy_setopt(curl_handle, CURLOPT_WRITEDATA, (void *)&chunk);
 .fi
+.SH AVAILABILITY
+Support for the CURL_WRITEFUNC_PAUSE return code was added in version 7.18.0.
+.SH RETURN VALUE
+This will return CURLE_OK.
 .SH "SEE ALSO"
 .BR CURLOPT_WRITEDATA "(3), " CURLOPT_READFUNCTION "(3), "
 .BR CURLOPT_HEADERFUNCTION "(3), "
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFODATA.3 b/docs/libcurl/opts/CURLOPT_XFERINFODATA.3
index 2f378a8..d082dff 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFODATA.3
+++ b/docs/libcurl/opts/CURLOPT_XFERINFODATA.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2017, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_XFERINFODATA 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_XFERINFODATA 3 "November 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_XFERINFODATA \- custom pointer passed to the progress callback
+CURLOPT_XFERINFODATA \- pointer passed to the progress callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -38,7 +38,32 @@
 .SH PROTOCOLS
 All
 .SH EXAMPLE
-https://curl.se/libcurl/c/progressfunc.html
+.nf
+ struct progress {
+   char *private;
+   size_t size;
+ };
+
+ static size_t progress_callback(void *clientp,
+                                 curl_off_t dltotal,
+                                 curl_off_t dlnow,
+                                 curl_off_t ultotal,
+                                 curl_off_t ulnow)
+ {
+   struct memory *progress = (struct progress *)userp;
+
+   /* use the values */
+
+   return 0; /* all is good */
+ }
+
+ struct progress data;
+
+ /* pass struct to callback  */
+ curl_easy_setopt(curl_handle, CURLOPT_XFERINFODATA, &data);
+
+ curl_easy_setopt(curl_handle, CURLOPT_XFERINFOFUNCTION, progress_callback);
+.fi
 .SH AVAILABILITY
 Added in 7.32.0
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3 b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3
index 267ec75..6478e7c 100644
--- a/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3
+++ b/docs/libcurl/opts/CURLOPT_XFERINFOFUNCTION.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_XFERINFOFUNCTION 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_XFERINFOFUNCTION 3 "October 31, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_XFERINFOFUNCTION \- callback to progress meter function
+CURLOPT_XFERINFOFUNCTION \- progress meter callback
 .SH SYNOPSIS
 #include <curl/curl.h>
 
@@ -39,7 +39,7 @@
 shown above.
 
 This function gets called by libcurl instead of its internal equivalent with a
-frequent interval. While data is being transferred it will be called very
+frequent interval. While data is being transferred it will be called
 frequently, and during slow periods like when nothing is being transferred it
 can slow down to about one call per second.
 
@@ -71,12 +71,37 @@
 \fICURLOPT_NOPROGRESS(3)\fP must be set to 0 to make this function actually
 get called.
 .SH DEFAULT
-By default, libcurl has an internal progress meter. That's rarely wanted by
+By default, libcurl has an internal progress meter. That is rarely wanted by
 users.
 .SH PROTOCOLS
 All
 .SH EXAMPLE
-https://curl.se/libcurl/c/progressfunc.html
+.nf
+ struct progress {
+   char *private;
+   size_t size;
+ };
+
+ static size_t progress_callback(void *clientp,
+                                 curl_off_t dltotal,
+                                 curl_off_t dlnow,
+                                 curl_off_t ultotal,
+                                 curl_off_t ulnow)
+ {
+   struct memory *progress = (struct progress *)userp;
+
+   /* use the values */
+
+   return 0; /* all is good */
+ }
+
+ struct progress data;
+
+ /* pass struct to callback  */
+ curl_easy_setopt(curl_handle, CURLOPT_XFERINFODATA, &data);
+
+ curl_easy_setopt(curl_handle, CURLOPT_XFERINFOFUNCTION, progress_callback);
+.fi
 .SH AVAILABILITY
 Added in 7.32.0. This callback replaces \fICURLOPT_PROGRESSFUNCTION(3)\fP
 .SH RETURN VALUE
diff --git a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3 b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3
index 3906ef1..ab78955 100644
--- a/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3
+++ b/docs/libcurl/opts/CURLOPT_XOAUTH2_BEARER.3
@@ -5,7 +5,7 @@
 .\" *                            | (__| |_| |  _ <| |___
 .\" *                             \___|\___/|_| \_\_____|
 .\" *
-.\" * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+.\" * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 .\" *
 .\" * This software is licensed as described in the file COPYING, which
 .\" * you should have received as part of this distribution. The terms
@@ -20,10 +20,10 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH CURLOPT_XOAUTH2_BEARER 3 "November 04, 2020" "libcurl 7.78.0" "curl_easy_setopt options"
+.TH CURLOPT_XOAUTH2_BEARER 3 "September 08, 2021" "libcurl 7.80.0" "curl_easy_setopt options"
 
 .SH NAME
-CURLOPT_XOAUTH2_BEARER \- specify OAuth 2.0 access token
+CURLOPT_XOAUTH2_BEARER \- OAuth 2.0 access token
 .SH SYNOPSIS
 #include <curl/curl.h>
 
diff --git a/docs/libcurl/opts/Makefile.inc b/docs/libcurl/opts/Makefile.inc
index 1181331..55a0a3b 100644
--- a/docs/libcurl/opts/Makefile.inc
+++ b/docs/libcurl/opts/Makefile.inc
@@ -228,6 +228,7 @@
   CURLOPT_MAXCONNECTS.3                         \
   CURLOPT_MAXFILESIZE.3                         \
   CURLOPT_MAXFILESIZE_LARGE.3                   \
+  CURLOPT_MAXLIFETIME_CONN.3                    \
   CURLOPT_MAXREDIRS.3                           \
   CURLOPT_MAX_RECV_SPEED_LARGE.3                \
   CURLOPT_MAX_SEND_SPEED_LARGE.3                \
@@ -254,6 +255,8 @@
   CURLOPT_POSTQUOTE.3                           \
   CURLOPT_POSTREDIR.3                           \
   CURLOPT_PREQUOTE.3                            \
+  CURLOPT_PREREQDATA.3                          \
+  CURLOPT_PREREQFUNCTION.3                      \
   CURLOPT_PRE_PROXY.3                           \
   CURLOPT_PRIVATE.3                             \
   CURLOPT_PROGRESSDATA.3                        \
@@ -326,6 +329,7 @@
   CURLOPT_SSH_AUTH_TYPES.3                      \
   CURLOPT_SSH_COMPRESSION.3                     \
   CURLOPT_SSH_HOST_PUBLIC_KEY_MD5.3             \
+  CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256.3          \
   CURLOPT_SSH_KEYDATA.3                         \
   CURLOPT_SSH_KEYFUNCTION.3                     \
   CURLOPT_SSH_KNOWNHOSTS.3                      \
diff --git a/docs/libcurl/symbols-in-versions b/docs/libcurl/symbols-in-versions
index 2dc0af2..a8f2e08 100644
--- a/docs/libcurl/symbols-in-versions
+++ b/docs/libcurl/symbols-in-versions
@@ -10,7 +10,7 @@
  for a few symbols the last version that featured it. The names appear in
  alphabetical order.
 
- Name                           Introduced  Deprecated  Removed
+ Name                           Introduced  Deprecated  Last
 
 CURLALTSVC_H1                   7.64.1
 CURLALTSVC_H2                   7.64.1
@@ -499,6 +499,7 @@
 CURLOPT_MAXCONNECTS             7.7
 CURLOPT_MAXFILESIZE             7.10.8
 CURLOPT_MAXFILESIZE_LARGE       7.11.0
+CURLOPT_MAXLIFETIME_CONN        7.80.0
 CURLOPT_MAXREDIRS               7.5
 CURLOPT_MAX_RECV_SPEED_LARGE    7.15.5
 CURLOPT_MAX_SEND_SPEED_LARGE    7.15.5
@@ -531,6 +532,8 @@
 CURLOPT_POSTQUOTE               7.1
 CURLOPT_POSTREDIR               7.19.1
 CURLOPT_PREQUOTE                7.9.5
+CURLOPT_PREREQDATA              7.80.0
+CURLOPT_PREREQFUNCTION          7.80.0
 CURLOPT_PRE_PROXY               7.52.0
 CURLOPT_PRIVATE                 7.10.3
 CURLOPT_PROGRESSDATA            7.1
@@ -613,6 +616,7 @@
 CURLOPT_SSH_AUTH_TYPES          7.16.1
 CURLOPT_SSH_COMPRESSION         7.56.0
 CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 7.17.1
+CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 7.80.0
 CURLOPT_SSH_KEYDATA             7.19.6
 CURLOPT_SSH_KEYFUNCTION         7.19.6
 CURLOPT_SSH_KNOWNHOSTS          7.19.6
@@ -815,7 +819,7 @@
 CURLSSLBACKEND_OPENSSL          7.34.0
 CURLSSLBACKEND_POLARSSL         7.34.0       7.69.0
 CURLSSLBACKEND_RUSTLS           7.76.0
-CURLSSLBACKEND_QSOSSL           7.34.0        -           7.38.1
+CURLSSLBACKEND_QSOSSL           7.34.0        -           7.38.0
 CURLSSLBACKEND_SCHANNEL         7.34.0
 CURLSSLBACKEND_SECURETRANSPORT  7.64.1
 CURLSSLBACKEND_WOLFSSL          7.49.0
@@ -963,6 +967,8 @@
 CURL_POLL_NONE                  7.14.0
 CURL_POLL_OUT                   7.14.0
 CURL_POLL_REMOVE                7.14.0
+CURL_PREREQFUNC_ABORT           7.79.0
+CURL_PREREQFUNC_OK              7.79.0
 CURL_PROGRESSFUNC_CONTINUE      7.68.0
 CURL_PROGRESS_BAR               7.1.1         -           7.4.1
 CURL_PROGRESS_STATS             7.1.1         -           7.4.1
diff --git a/docs/options-in-versions b/docs/options-in-versions
index 6fada93..ac087a1 100644
--- a/docs/options-in-versions
+++ b/docs/options-in-versions
@@ -84,6 +84,7 @@
 --header (-H)                        5.0
 --help (-h)                          4.0
 --hostpubmd5                         7.17.1
+--hostpubsha256                      7.80.0
 --hsts                               7.74.0
 --http0.9                            7.64.0
 --http1.0 (-0)                       7.9.1
diff --git a/include/curl/curl.h b/include/curl/curl.h
index 521c254..6b6ac8a 100644
--- a/include/curl/curl.h
+++ b/include/curl/curl.h
@@ -25,9 +25,6 @@
 /*
  * If you have libcurl problems, all docs and details are found here:
  *   https://curl.se/libcurl/
- *
- * curl-library mailing list subscription and unsubscription web interface:
- *   https://cool.haxx.se/mailman/listinfo/curl-library/
  */
 
 #ifdef CURL_NO_OLDIES
@@ -49,8 +46,8 @@
 #include <stdio.h>
 #include <limits.h>
 
-#if defined(__FreeBSD__) && (__FreeBSD__ >= 2)
-/* Needed for __FreeBSD_version symbol definition */
+#if (defined(__FreeBSD__) && (__FreeBSD__ >= 2)) || defined(__MidnightBSD__)
+/* Needed for __FreeBSD_version or __MidnightBSD_version symbol definition */
 #include <osreldate.h>
 #endif
 
@@ -76,6 +73,7 @@
     defined(ANDROID) || defined(__ANDROID__) || defined(__OpenBSD__) || \
     defined(__CYGWIN__) || defined(AMIGA) || defined(__NuttX__) || \
    (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) || \
+   (defined(__MidnightBSD_version) && (__MidnightBSD_version < 100000)) || \
     defined(__VXWORKS__)
 #include <sys/select.h>
 #endif
@@ -473,6 +471,20 @@
         size_t size,       /* size of the data pointed to */
         void *userptr);    /* whatever the user please */
 
+/* This is the CURLOPT_PREREQFUNCTION callback prototype. */
+typedef int (*curl_prereq_callback)(void *clientp,
+                                    char *conn_primary_ip,
+                                    char *conn_local_ip,
+                                    int conn_primary_port,
+                                    int conn_local_port);
+
+/* Return code for when the pre-request callback has terminated without
+   any errors */
+#define CURL_PREREQFUNC_OK 0
+/* Return code for when the pre-request callback wants to abort the
+   request */
+#define CURL_PREREQFUNC_ABORT 1
+
 /* All possible error codes from all sorts of curl functions. Future versions
    may return other values, stay prepared.
 
@@ -2046,7 +2058,8 @@
   /* alt-svc cache file name to possibly read from/write to */
   CURLOPT(CURLOPT_ALTSVC, CURLOPTTYPE_STRINGPOINT, 287),
 
-  /* maximum age of a connection to consider it for reuse (in seconds) */
+  /* maximum age (idle time) of a connection to consider it for reuse
+   * (in seconds) */
   CURLOPT(CURLOPT_MAXAGE_CONN, CURLOPTTYPE_LONG, 288),
 
   /* SASL authorisation identity */
@@ -2105,6 +2118,20 @@
      this option is used only if PROXY_SSL_VERIFYPEER is true */
   CURLOPT(CURLOPT_PROXY_CAINFO_BLOB, CURLOPTTYPE_BLOB, 310),
 
+  /* used by scp/sftp to verify the host's public key */
+  CURLOPT(CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256, CURLOPTTYPE_STRINGPOINT, 311),
+
+  /* Function that will be called immediately before the initial request
+     is made on a connection (after any protocol negotiation step).  */
+  CURLOPT(CURLOPT_PREREQFUNCTION, CURLOPTTYPE_FUNCTIONPOINT, 312),
+
+  /* Data passed to the CURLOPT_PREREQFUNCTION callback */
+  CURLOPT(CURLOPT_PREREQDATA, CURLOPTTYPE_CBPOINT, 313),
+
+  /* maximum age (since creation) of a connection to consider it for reuse
+   * (in seconds) */
+  CURLOPT(CURLOPT_MAXLIFETIME_CONN, CURLOPTTYPE_LONG, 314),
+
   CURLOPT_LASTENTRY /* the last unused */
 } CURLoption;
 
diff --git a/include/curl/curlver.h b/include/curl/curlver.h
index d2ccdba..6756c31 100644
--- a/include/curl/curlver.h
+++ b/include/curl/curlver.h
@@ -30,12 +30,12 @@
 
 /* This is the version number of the libcurl package from which this header
    file origins: */
-#define LIBCURL_VERSION "7.78.0"
+#define LIBCURL_VERSION "7.80.0"
 
 /* The numeric version number is also available "in parts" by using these
    defines: */
 #define LIBCURL_VERSION_MAJOR 7
-#define LIBCURL_VERSION_MINOR 78
+#define LIBCURL_VERSION_MINOR 80
 #define LIBCURL_VERSION_PATCH 0
 
 /* This is the numeric version of the libcurl version number, meant for easier
@@ -57,7 +57,7 @@
    CURL_VERSION_BITS() macro since curl's own configure script greps for it
    and needs it to contain the full number.
 */
-#define LIBCURL_VERSION_NUM 0x074e00
+#define LIBCURL_VERSION_NUM 0x075000
 
 /*
  * This is the date and time when the full source package was created. The
@@ -68,7 +68,7 @@
  *
  * "2007-11-23"
  */
-#define LIBCURL_TIMESTAMP "2021-07-21"
+#define LIBCURL_TIMESTAMP "2021-11-10"
 
 #define CURL_VERSION_BITS(x,y,z) ((x)<<16|(y)<<8|(z))
 #define CURL_AT_LEAST_VERSION(x,y,z) \
diff --git a/include/curl/typecheck-gcc.h b/include/curl/typecheck-gcc.h
index 34d0267..9e14d8a 100644
--- a/include/curl/typecheck-gcc.h
+++ b/include/curl/typecheck-gcc.h
@@ -317,6 +317,7 @@
    (option) == CURLOPT_SERVICE_NAME ||                                        \
    (option) == CURLOPT_SOCKS5_GSSAPI_SERVICE ||                               \
    (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 ||                             \
+   (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256 ||                          \
    (option) == CURLOPT_SSH_KNOWNHOSTS ||                                      \
    (option) == CURLOPT_SSH_PRIVATE_KEYFILE ||                                 \
    (option) == CURLOPT_SSH_PUBLIC_KEYFILE ||                                  \
@@ -363,6 +364,7 @@
    (option) == CURLOPT_INTERLEAVEDATA ||                                      \
    (option) == CURLOPT_IOCTLDATA ||                                           \
    (option) == CURLOPT_OPENSOCKETDATA ||                                      \
+   (option) == CURLOPT_PREREQDATA ||                                          \
    (option) == CURLOPT_PROGRESSDATA ||                                        \
    (option) == CURLOPT_READDATA ||                                            \
    (option) == CURLOPT_SEEKDATA ||                                            \
diff --git a/include/curl/urlapi.h b/include/curl/urlapi.h
index 1d70880..3c4b4e1 100644
--- a/include/curl/urlapi.h
+++ b/include/curl/urlapi.h
@@ -47,7 +47,8 @@
   CURLUE_NO_HOST,             /* 14 */
   CURLUE_NO_PORT,             /* 15 */
   CURLUE_NO_QUERY,            /* 16 */
-  CURLUE_NO_FRAGMENT          /* 17 */
+  CURLUE_NO_FRAGMENT,         /* 17 */
+  CURLUE_LAST
 } CURLUcode;
 
 typedef enum {
@@ -118,6 +119,12 @@
 CURL_EXTERN CURLUcode curl_url_set(CURLU *handle, CURLUPart what,
                                    const char *part, unsigned int flags);
 
+/*
+ * curl_url_strerror() turns a CURLUcode value into the equivalent human
+ * readable error string.  This is useful for printing meaningful error
+ * messages.
+ */
+CURL_EXTERN const char *curl_url_strerror(CURLUcode);
 
 #ifdef __cplusplus
 } /* end of extern "C" */
diff --git a/lib/.checksrc b/lib/.checksrc
new file mode 100644
index 0000000..16133a4
--- /dev/null
+++ b/lib/.checksrc
@@ -0,0 +1 @@
+enable STRERROR
diff --git a/lib/Makefile.am b/lib/Makefile.am
index b51796f..7693639 100644
--- a/lib/Makefile.am
+++ b/lib/Makefile.am
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -30,7 +30,7 @@
  config-os400.h setup-os400.h                                       \
  config-tpf.h mk-ca-bundle.pl mk-ca-bundle.vbs $(CMAKE_DIST)        \
  firefox-db2pem.sh config-vxworks.h Makefile.vxworks checksrc.pl    \
- setup-win32.h
+ setup-win32.h .checksrc
 
 lib_LTLIBRARIES = libcurl.la
 
diff --git a/lib/Makefile.m32 b/lib/Makefile.m32
index 9f1f596..d78614d 100644
--- a/lib/Makefile.m32
+++ b/lib/Makefile.m32
@@ -179,12 +179,10 @@
 endif
 ifeq ($(findstring -rtmp,$(CFG)),-rtmp)
 RTMP = 1
-SSL = 1
 ZLIB = 1
 endif
 ifeq ($(findstring -ssh2,$(CFG)),-ssh2)
 SSH2 = 1
-SSL = 1
 ZLIB = 1
 endif
 ifeq ($(findstring -ssl,$(CFG)),-ssl)
@@ -237,6 +235,13 @@
 UNICODE = 1
 endif
 
+# SSH2 and RTMP require an SSL library; assume OpenSSL if none specified
+ifneq ($(SSH2)$(RTMP),)
+  ifeq ($(SSL)$(WINSSL),)
+    SSL = 1
+  endif
+endif
+
 INCLUDES = -I. -I../include
 CFLAGS += -DBUILDING_LIBCURL
 ifdef SSL
@@ -299,7 +304,7 @@
     endif
   endif
   ifneq "$(wildcard $(OPENSSL_INCLUDE)/openssl/opensslv.h)" "$(OPENSSL_INCLUDE)/openssl/opensslv.h"
-  $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
+    $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
   endif
   ifndef OPENSSL_LIBPATH
     ifeq "$(wildcard $(OPENSSL_PATH)/out)" "$(OPENSSL_PATH)/out"
diff --git a/lib/Makefile.netware b/lib/Makefile.netware
index cf7904a..9275212 100644
--- a/lib/Makefile.netware
+++ b/lib/Makefile.netware
@@ -580,7 +580,6 @@
 	@echo $(DL)#define HAVE_SETLOCALE 1$(DL) >> $@
 	@echo $(DL)#define HAVE_SIGNAL 1$(DL) >> $@
 	@echo $(DL)#define HAVE_SIGNAL_H 1$(DL) >> $@
-	@echo $(DL)#define HAVE_SIG_ATOMIC_T 1$(DL) >> $@
 	@echo $(DL)#define HAVE_SOCKET 1$(DL) >> $@
 	@echo $(DL)#define HAVE_STDLIB_H 1$(DL) >> $@
 	@echo $(DL)#define HAVE_STRDUP 1$(DL) >> $@
diff --git a/lib/asyn-ares.c b/lib/asyn-ares.c
index 839fabb..fc168ba 100644
--- a/lib/asyn-ares.c
+++ b/lib/asyn-ares.c
@@ -59,7 +59,6 @@
 #include "hostip.h"
 #include "hash.h"
 #include "share.h"
-#include "strerror.h"
 #include "url.h"
 #include "multiif.h"
 #include "inet_pton.h"
@@ -80,13 +79,33 @@
 #define HAVE_CARES_CALLBACK_TIMEOUTS 1
 #endif
 
+#if ARES_VERSION >= 0x010601
+/* IPv6 supported since 1.6.1 */
+#define HAVE_CARES_IPV6 1
+#endif
+
+#if ARES_VERSION >= 0x010704
+#define HAVE_CARES_SERVERS_CSV 1
+#define HAVE_CARES_LOCAL_DEV 1
+#define HAVE_CARES_SET_LOCAL 1
+#endif
+
+#if ARES_VERSION >= 0x010b00
+#define HAVE_CARES_PORTS_CSV 1
+#endif
+
+#if ARES_VERSION >= 0x011000
+/* 1.16.0 or later has ares_getaddrinfo */
+#define HAVE_CARES_GETADDRINFO 1
+#endif
+
 /* The last 3 #include files should be in this order */
 #include "curl_printf.h"
 #include "curl_memory.h"
 #include "memdebug.h"
 
 struct thread_data {
-  int num_pending; /* number of ares_gethostbyname() requests */
+  int num_pending; /* number of outstanding c-ares requests */
   struct Curl_addrinfo *temp_ai; /* intermediary result while fetching c-ares
                                     parts */
   int last_status;
@@ -322,7 +341,7 @@
     nfds = 0;
 
   if(!nfds)
-    /* Call ares_process() unconditonally here, even if we simply timed out
+    /* Call ares_process() unconditionally here, even if we simply timed out
        above, as otherwise the ares name resolve won't timeout! */
     ares_process_fd((ares_channel)data->state.async.resolver, ARES_SOCKET_BAD,
                     ARES_SOCKET_BAD);
@@ -490,6 +509,8 @@
   return result;
 }
 
+#ifndef HAVE_CARES_GETADDRINFO
+
 /* Connects results to the list */
 static void compound_results(struct thread_data *res,
                              struct Curl_addrinfo *ai)
@@ -620,8 +641,99 @@
     }
   }
 }
+#else
+/* c-ares 1.16.0 or later */
 
 /*
+ * ares2addr() converts an address list provided by c-ares to an internal
+ * libcurl compatible list
+ */
+static struct Curl_addrinfo *ares2addr(struct ares_addrinfo_node *node)
+{
+  /* traverse the ares_addrinfo_node list */
+  struct ares_addrinfo_node *ai;
+  struct Curl_addrinfo *cafirst = NULL;
+  struct Curl_addrinfo *calast = NULL;
+  int error = 0;
+
+  for(ai = node; ai != NULL; ai = ai->ai_next) {
+    size_t ss_size;
+    struct Curl_addrinfo *ca;
+    /* ignore elements with unsupported address family, */
+    /* settle family-specific sockaddr structure size.  */
+    if(ai->ai_family == AF_INET)
+      ss_size = sizeof(struct sockaddr_in);
+#ifdef ENABLE_IPV6
+    else if(ai->ai_family == AF_INET6)
+      ss_size = sizeof(struct sockaddr_in6);
+#endif
+    else
+      continue;
+
+    /* ignore elements without required address info */
+    if(!ai->ai_addr || !(ai->ai_addrlen > 0))
+      continue;
+
+    /* ignore elements with bogus address size */
+    if((size_t)ai->ai_addrlen < ss_size)
+      continue;
+
+    ca = malloc(sizeof(struct Curl_addrinfo) + ss_size);
+    if(!ca) {
+      error = EAI_MEMORY;
+      break;
+    }
+
+    /* copy each structure member individually, member ordering, */
+    /* size, or padding might be different for each platform.    */
+
+    ca->ai_flags     = ai->ai_flags;
+    ca->ai_family    = ai->ai_family;
+    ca->ai_socktype  = ai->ai_socktype;
+    ca->ai_protocol  = ai->ai_protocol;
+    ca->ai_addrlen   = (curl_socklen_t)ss_size;
+    ca->ai_addr      = NULL;
+    ca->ai_canonname = NULL;
+    ca->ai_next      = NULL;
+
+    ca->ai_addr = (void *)((char *)ca + sizeof(struct Curl_addrinfo));
+    memcpy(ca->ai_addr, ai->ai_addr, ss_size);
+
+    /* if the return list is empty, this becomes the first element */
+    if(!cafirst)
+      cafirst = ca;
+
+    /* add this element last in the return list */
+    if(calast)
+      calast->ai_next = ca;
+    calast = ca;
+  }
+
+  /* if we failed, destroy the Curl_addrinfo list */
+  if(error) {
+    Curl_freeaddrinfo(cafirst);
+    cafirst = NULL;
+  }
+
+  return cafirst;
+}
+
+static void addrinfo_cb(void *arg, int status, int timeouts,
+                        struct ares_addrinfo *result)
+{
+  struct Curl_easy *data = (struct Curl_easy *)arg;
+  struct thread_data *res = data->state.async.tdata;
+  (void)timeouts;
+  if(ARES_SUCCESS == status) {
+    res->temp_ai = ares2addr(result->nodes);
+    res->last_status = CURL_ASYNC_SUCCESS;
+    ares_freeaddrinfo(result);
+  }
+  res->num_pending--;
+}
+
+#endif
+/*
  * Curl_resolver_getaddrinfo() - when using ares
  *
  * Returns name information about the given hostname and port number. If
@@ -658,8 +770,28 @@
     /* initial status - failed */
     res->last_status = ARES_ENOTFOUND;
 
-#if ARES_VERSION >= 0x010601
-    /* IPv6 supported by c-ares since 1.6.1 */
+#ifdef HAVE_CARES_GETADDRINFO
+    {
+      struct ares_addrinfo_hints hints;
+      char service[12];
+      int pf = PF_INET;
+      memset(&hints, 0, sizeof(hints));
+#ifdef CURLRES_IPV6
+      if(Curl_ipv6works(data))
+        /* The stack seems to be IPv6-enabled */
+        pf = PF_UNSPEC;
+#endif /* CURLRES_IPV6 */
+      hints.ai_family = pf;
+      hints.ai_socktype = (data->conn->transport == TRNSPRT_TCP)?
+        SOCK_STREAM : SOCK_DGRAM;
+      msnprintf(service, sizeof(service), "%d", port);
+      res->num_pending = 1;
+      ares_getaddrinfo((ares_channel)data->state.async.resolver, hostname,
+                       service, &hints, addrinfo_cb, data);
+    }
+#else
+
+#ifdef HAVE_CARES_IPV6
     if(Curl_ipv6works(data)) {
       /* The stack seems to be IPv6-enabled */
       res->num_pending = 2;
@@ -671,7 +803,7 @@
                           PF_INET6, query_completed_cb, data);
     }
     else
-#endif /* ARES_VERSION >= 0x010601 */
+#endif
     {
       res->num_pending = 1;
 
@@ -680,7 +812,7 @@
                          hostname, PF_INET,
                          query_completed_cb, data);
     }
-
+#endif
     *waitp = 1; /* expect asynchronous response */
   }
   return NULL; /* no struct yet */
@@ -701,8 +833,8 @@
   if(!(servers && servers[0]))
     return CURLE_OK;
 
-#if (ARES_VERSION >= 0x010704)
-#if (ARES_VERSION >= 0x010b00)
+#ifdef HAVE_CARES_SERVERS_CSV
+#ifdef HAVE_CARES_PORTS_CSV
   ares_result = ares_set_servers_ports_csv(data->state.async.resolver,
                                            servers);
 #else
@@ -732,7 +864,7 @@
 CURLcode Curl_set_dns_interface(struct Curl_easy *data,
                                 const char *interf)
 {
-#if (ARES_VERSION >= 0x010704)
+#ifdef HAVE_CARES_LOCAL_DEV
   if(!interf)
     interf = "";
 
@@ -749,7 +881,7 @@
 CURLcode Curl_set_dns_local_ip4(struct Curl_easy *data,
                                 const char *local_ip4)
 {
-#if (ARES_VERSION >= 0x010704)
+#ifdef HAVE_CARES_SET_LOCAL
   struct in_addr a4;
 
   if((!local_ip4) || (local_ip4[0] == 0)) {
@@ -775,7 +907,7 @@
 CURLcode Curl_set_dns_local_ip6(struct Curl_easy *data,
                                 const char *local_ip6)
 {
-#if (ARES_VERSION >= 0x010704) && defined(ENABLE_IPV6)
+#if defined(HAVE_CARES_SET_LOCAL) && defined(ENABLE_IPV6)
   unsigned char a6[INET6_ADDRSTRLEN];
 
   if((!local_ip6) || (local_ip6[0] == 0)) {
diff --git a/lib/asyn-thread.c b/lib/asyn-thread.c
index 36f68cb..149172a 100644
--- a/lib/asyn-thread.c
+++ b/lib/asyn-thread.c
@@ -68,7 +68,6 @@
 #include "hostip.h"
 #include "hash.h"
 #include "share.h"
-#include "strerror.h"
 #include "url.h"
 #include "multiif.h"
 #include "inet_ntop.h"
diff --git a/lib/c-hyper.c b/lib/c-hyper.c
index 2cc5d49..c253cd3 100644
--- a/lib/c-hyper.c
+++ b/lib/c-hyper.c
@@ -156,13 +156,15 @@
 
   Curl_debug(data, CURLINFO_HEADER_IN, headp, len);
 
-  writetype = CLIENTWRITE_HEADER;
-  if(data->set.include_header)
-    writetype |= CLIENTWRITE_BODY;
-  result = Curl_client_write(data, writetype, headp, len);
-  if(result) {
-    data->state.hresult = CURLE_ABORTED_BY_CALLBACK;
-    return HYPER_ITER_BREAK;
+  if(!data->state.hconnect || !data->set.suppress_connect_headers) {
+    writetype = CLIENTWRITE_HEADER;
+    if(data->set.include_header)
+      writetype |= CLIENTWRITE_BODY;
+    result = Curl_client_write(data, writetype, headp, len);
+    if(result) {
+      data->state.hresult = CURLE_ABORTED_BY_CALLBACK;
+      return HYPER_ITER_BREAK;
+    }
   }
 
   data->info.header_size += (long)len;
@@ -176,7 +178,7 @@
   size_t len = hyper_buf_len(chunk);
   struct Curl_easy *data = (struct Curl_easy *)userdata;
   struct SingleRequest *k = &data->req;
-  CURLcode result;
+  CURLcode result = CURLE_OK;
 
   if(0 == k->bodywrites++) {
     bool done = FALSE;
@@ -192,8 +194,21 @@
       Curl_safefree(data->req.newurl);
     }
 #endif
-    if(data->state.hconnect &&
-       (data->req.httpcode/100 != 2)) {
+    if(data->state.expect100header) {
+      Curl_expire_done(data, EXPIRE_100_TIMEOUT);
+      if(data->req.httpcode < 400) {
+        k->exp100 = EXP100_SEND_DATA;
+        if(data->hyp.exp100_waker) {
+          hyper_waker_wake(data->hyp.exp100_waker);
+          data->hyp.exp100_waker = NULL;
+        }
+      }
+      else { /* >= 4xx */
+        k->exp100 = EXP100_FAILED;
+      }
+    }
+    if(data->state.hconnect && (data->req.httpcode/100 != 2) &&
+       data->state.authproxy.done) {
       done = TRUE;
       result = CURLE_OK;
     }
@@ -245,6 +260,15 @@
   conn->httpversion =
     http_version == HYPER_HTTP_VERSION_1_1 ? 11 :
     (http_version == HYPER_HTTP_VERSION_2 ? 20 : 10);
+  if(http_version == HYPER_HTTP_VERSION_1_0)
+    data->state.httpwant = CURL_HTTP_VERSION_1_0;
+
+  if(data->state.hconnect)
+    /* CONNECT */
+    data->info.httpproxycode = http_status;
+
+  /* We need to set 'httpcodeq' for functions that check the response code in
+     a single place. */
   data->req.httpcode = http_status;
 
   result = Curl_http_statusline(data, conn);
@@ -262,16 +286,18 @@
   len = Curl_dyn_len(&data->state.headerb);
   Curl_debug(data, CURLINFO_HEADER_IN, Curl_dyn_ptr(&data->state.headerb),
              len);
-  writetype = CLIENTWRITE_HEADER;
-  if(data->set.include_header)
-    writetype |= CLIENTWRITE_BODY;
-  result = Curl_client_write(data, writetype,
-                             Curl_dyn_ptr(&data->state.headerb), len);
-  if(result) {
-    data->state.hresult = CURLE_ABORTED_BY_CALLBACK;
-    return HYPER_ITER_BREAK;
-  }
 
+  if(!data->state.hconnect || !data->set.suppress_connect_headers) {
+    writetype = CLIENTWRITE_HEADER;
+    if(data->set.include_header)
+      writetype |= CLIENTWRITE_BODY;
+    result = Curl_client_write(data, writetype,
+                               Curl_dyn_ptr(&data->state.headerb), len);
+    if(result) {
+      data->state.hresult = CURLE_ABORTED_BY_CALLBACK;
+      return HYPER_ITER_BREAK;
+    }
+  }
   data->info.header_size += (long)len;
   data->req.headerbytecount += (long)len;
   data->req.httpcode = http_status;
@@ -284,8 +310,14 @@
  */
 static CURLcode empty_header(struct Curl_easy *data)
 {
-  return hyper_each_header(data, NULL, 0, NULL, 0) ?
-    CURLE_WRITE_ERROR : CURLE_OK;
+  CURLcode result = Curl_http_size(data);
+  if(!result) {
+    result = hyper_each_header(data, NULL, 0, NULL, 0) ?
+      CURLE_WRITE_ERROR : CURLE_OK;
+    if(result)
+      failf(data, "hyperstream: couldn't pass blank header");
+  }
+  return result;
 }
 
 CURLcode Curl_hyper_stream(struct Curl_easy *data,
@@ -306,8 +338,25 @@
   const uint8_t *reasonp;
   size_t reason_len;
   CURLcode result = CURLE_OK;
+  struct SingleRequest *k = &data->req;
   (void)conn;
 
+  if(k->exp100 > EXP100_SEND_DATA) {
+    struct curltime now = Curl_now();
+    timediff_t ms = Curl_timediff(now, k->start100);
+    if(ms >= data->set.expect_100_timeout) {
+      /* we've waited long enough, continue anyway */
+      k->exp100 = EXP100_SEND_DATA;
+      k->keepon |= KEEP_SEND;
+      Curl_expire_done(data, EXPIRE_100_TIMEOUT);
+      infof(data, "Done waiting for 100-continue");
+      if(data->hyp.exp100_waker) {
+        hyper_waker_wake(data->hyp.exp100_waker);
+        data->hyp.exp100_waker = NULL;
+      }
+    }
+  }
+
   if(select_res & CURL_CSELECT_IN) {
     if(h->read_waker)
       hyper_waker_wake(h->read_waker);
@@ -341,8 +390,7 @@
     hyper_task_free(task);
 
     if(t == HYPER_TASK_ERROR) {
-      hyper_code errnum = hyper_error_code(hypererr);
-      if(errnum == HYPERE_ABORTED_BY_CALLBACK) {
+      if(data->state.hresult) {
         /* override Hyper's view, might not even be an error */
         result = data->state.hresult;
         infof(data, "hyperstream is done (by early callback)");
@@ -352,7 +400,9 @@
         size_t errlen = hyper_error_print(hypererr, errbuf, sizeof(errbuf));
         hyper_code code = hyper_error_code(hypererr);
         failf(data, "Hyper: [%d] %.*s", (int)code, (int)errlen, errbuf);
-        if((code == HYPERE_UNEXPECTED_EOF) && !data->req.bytecount)
+        if(code == HYPERE_ABORTED_BY_CALLBACK)
+          result = CURLE_OK;
+        else if((code == HYPERE_UNEXPECTED_EOF) && !data->req.bytecount)
           result = CURLE_GOT_NOTHING;
         else if(code == HYPERE_INVALID_PEER_MESSAGE)
           result = CURLE_UNSUPPORTED_PROTOCOL; /* maybe */
@@ -367,6 +417,11 @@
       /* end of transfer */
       *done = TRUE;
       infof(data, "hyperstream is done!");
+      if(!k->bodywrites) {
+        /* hyper doesn't always call the body write callback */
+        bool stilldone;
+        result = Curl_http_firstwrite(data, data->conn, &stilldone);
+      }
       break;
     }
     else if(t != HYPER_TASK_RESPONSE) {
@@ -405,11 +460,9 @@
       break;
     }
 
-    if(empty_header(data)) {
-      failf(data, "hyperstream: couldn't pass blank header");
-      result = CURLE_OUT_OF_MEMORY;
+    result = empty_header(data);
+    if(result)
       break;
-    }
 
     /* Curl_http_auth_act() checks what authentication methods that are
      * available and decides which one (if any) to use. It will set 'newurl'
@@ -523,7 +576,7 @@
         free(ptr);
       }
       else
-        Curl_debug(data, CURLINFO_HEADER_OUT, (char *)line, linelen);
+        Curl_debug(data, CURLINFO_HEADER_OUT, (char *)n, linelen);
     }
     numh++;
     n += linelen;
@@ -546,9 +599,22 @@
   if(result)
     return result;
 
-  if(hyper_request_set_uri(req, (uint8_t *)Curl_dyn_uptr(&r),
-                           Curl_dyn_len(&r))) {
-    failf(data, "error setting path");
+  if(h2 && hyper_request_set_uri_parts(req,
+                                       /* scheme */
+                                       (uint8_t *)data->state.up.scheme,
+                                       strlen(data->state.up.scheme),
+                                       /* authority */
+                                       (uint8_t *)conn->host.name,
+                                       strlen(conn->host.name),
+                                       /* path_and_query */
+                                       (uint8_t *)Curl_dyn_uptr(&r),
+                                       Curl_dyn_len(&r))) {
+    failf(data, "error setting uri parts to hyper");
+    result = CURLE_OUT_OF_MEMORY;
+  }
+  else if(!h2 && hyper_request_set_uri(req, (uint8_t *)Curl_dyn_uptr(&r),
+                                       Curl_dyn_len(&r))) {
+    failf(data, "error setting uri to hyper");
     result = CURLE_OUT_OF_MEMORY;
   }
   else
@@ -564,6 +630,16 @@
 {
   struct Curl_easy *data = (struct Curl_easy *)userdata;
   (void)ctx;
+  if(data->req.exp100 > EXP100_SEND_DATA) {
+    if(data->req.exp100 == EXP100_FAILED)
+      return HYPER_POLL_ERROR;
+
+    /* still waiting confirmation */
+    if(data->hyp.exp100_waker)
+      hyper_waker_free(data->hyp.exp100_waker);
+    data->hyp.exp100_waker = hyper_context_waker(ctx);
+    return HYPER_POLL_PENDING;
+  }
   if(data->req.upload_done)
     *chunk = NULL; /* nothing more to deliver */
   else {
@@ -590,9 +666,21 @@
 {
   size_t fillcount;
   struct Curl_easy *data = (struct Curl_easy *)userdata;
-  CURLcode result =
-    Curl_fillreadbuffer(data, data->set.upload_buffer_size, &fillcount);
+  CURLcode result;
   (void)ctx;
+
+  if(data->req.exp100 > EXP100_SEND_DATA) {
+    if(data->req.exp100 == EXP100_FAILED)
+      return HYPER_POLL_ERROR;
+
+    /* still waiting confirmation */
+    if(data->hyp.exp100_waker)
+      hyper_waker_free(data->hyp.exp100_waker);
+    data->hyp.exp100_waker = hyper_context_waker(ctx);
+    return HYPER_POLL_PENDING;
+  }
+
+  result = Curl_fillreadbuffer(data, data->set.upload_buffer_size, &fillcount);
   if(result) {
     data->state.hresult = result;
     return HYPER_POLL_ERROR;
@@ -627,6 +715,7 @@
                          hyper_request *hyperreq,
                          Curl_HttpReq httpreq)
 {
+  struct HTTP *http = data->req.p.http;
   CURLcode result = CURLE_OK;
   struct dynbuf req;
   if((httpreq == HTTPREQ_GET) || (httpreq == HTTPREQ_HEAD))
@@ -659,6 +748,7 @@
       result = CURLE_OUT_OF_MEMORY;
     }
   }
+  http->sending = HTTPSEND_BODY;
   return result;
 }
 
@@ -677,6 +767,48 @@
   return result;
 }
 
+/* called on 1xx responses */
+static void http1xx_cb(void *arg, struct hyper_response *resp)
+{
+  struct Curl_easy *data = (struct Curl_easy *)arg;
+  hyper_headers *headers = NULL;
+  CURLcode result = CURLE_OK;
+  uint16_t http_status;
+  int http_version;
+  const uint8_t *reasonp;
+  size_t reason_len;
+
+  infof(data, "Got HTTP 1xx informational");
+
+  http_status = hyper_response_status(resp);
+  http_version = hyper_response_version(resp);
+  reasonp = hyper_response_reason_phrase(resp);
+  reason_len = hyper_response_reason_phrase_len(resp);
+
+  result = status_line(data, data->conn,
+                       http_status, http_version, reasonp, reason_len);
+  if(!result) {
+    headers = hyper_response_headers(resp);
+    if(!headers) {
+      failf(data, "hyperstream: couldn't get 1xx response headers");
+      result = CURLE_RECV_ERROR;
+    }
+  }
+  data->state.hresult = result;
+
+  if(!result) {
+    /* the headers are already received */
+    hyper_headers_foreach(headers, hyper_each_header, data);
+    /* this callback also sets data->state.hresult on error */
+
+    if(empty_header(data))
+      result = CURLE_OUT_OF_MEMORY;
+  }
+
+  if(data->state.hresult)
+    infof(data, "ERROR in 1xx, bail out!");
+}
+
 /*
  * Curl_http() gets called from the generic multi_do() function when a HTTP
  * request is to be performed. This creates and sends a properly constructed
@@ -694,13 +826,13 @@
   hyper_request *req = NULL;
   hyper_headers *headers = NULL;
   hyper_task *handshake = NULL;
-  hyper_error *hypererr = NULL;
   CURLcode result;
   const char *p_accept; /* Accept: string */
   const char *method;
   Curl_HttpReq httpreq;
   bool h2 = FALSE;
   const char *te = NULL; /* transfer-encoding */
+  hyper_code rc;
 
   /* Always consider the DO phase done after this function call, even if there
      may be parts of the request that is not yet sent, since we can deal with
@@ -746,6 +878,7 @@
   io = hyper_io_new();
   if(!io) {
     failf(data, "Couldn't create hyper IO");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
   /* tell Hyper how to read/write network data */
@@ -758,6 +891,7 @@
     h->exec = hyper_executor_new();
     if(!h->exec) {
       failf(data, "Couldn't create hyper executor");
+      result = CURLE_OUT_OF_MEMORY;
       goto error;
     }
   }
@@ -765,6 +899,7 @@
   options = hyper_clientconn_options_new();
   if(!options) {
     failf(data, "Couldn't create hyper client options");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
   if(conn->negnpn == CURL_HTTP_VERSION_2) {
@@ -778,6 +913,7 @@
   handshake = hyper_clientconn_handshake(io, options);
   if(!handshake) {
     failf(data, "Couldn't create hyper client handshake");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
   io = NULL;
@@ -785,6 +921,7 @@
 
   if(HYPERE_OK != hyper_executor_push(h->exec, handshake)) {
     failf(data, "Couldn't hyper_executor_push the handshake");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
   handshake = NULL; /* ownership passed on */
@@ -792,6 +929,7 @@
   task = hyper_executor_poll(h->exec);
   if(!task) {
     failf(data, "Couldn't hyper_executor_poll the handshake");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
 
@@ -801,19 +939,22 @@
   req = hyper_request_new();
   if(!req) {
     failf(data, "Couldn't hyper_request_new");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
 
-  if(data->state.httpwant == CURL_HTTP_VERSION_1_0) {
+  if(!Curl_use_http_1_1plus(data, conn)) {
     if(HYPERE_OK != hyper_request_set_version(req,
                                               HYPER_HTTP_VERSION_1_0)) {
       failf(data, "error setting HTTP version");
+      result = CURLE_OUT_OF_MEMORY;
       goto error;
     }
   }
 
   if(hyper_request_set_method(req, (uint8_t *)method, strlen(method))) {
     failf(data, "error setting method");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
 
@@ -824,47 +965,81 @@
   headers = hyper_request_headers(req);
   if(!headers) {
     failf(data, "hyper_request_headers");
+    result = CURLE_OUT_OF_MEMORY;
+    goto error;
+  }
+
+  rc = hyper_request_on_informational(req, http1xx_cb, data);
+  if(rc) {
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
 
   result = Curl_http_body(data, conn, httpreq, &te);
   if(result)
-    return result;
-
-  if(data->state.aptr.host &&
-     Curl_hyper_header(data, headers, data->state.aptr.host))
     goto error;
 
-  if(data->state.aptr.proxyuserpwd &&
-     Curl_hyper_header(data, headers, data->state.aptr.proxyuserpwd))
-    goto error;
+  if(!h2) {
+    if(data->state.aptr.host) {
+      result = Curl_hyper_header(data, headers, data->state.aptr.host);
+      if(result)
+        goto error;
+    }
+  }
+  else {
+    /* For HTTP/2, we show the Host: header as if we sent it, to make it look
+       like for HTTP/1 but it isn't actually sent since :authority is then
+       used. */
+    result = Curl_debug(data, CURLINFO_HEADER_OUT, data->state.aptr.host,
+                        strlen(data->state.aptr.host));
+    if(result)
+      goto error;
+  }
 
-  if(data->state.aptr.userpwd &&
-     Curl_hyper_header(data, headers, data->state.aptr.userpwd))
-    goto error;
+  if(data->state.aptr.proxyuserpwd) {
+    result = Curl_hyper_header(data, headers, data->state.aptr.proxyuserpwd);
+    if(result)
+      goto error;
+  }
 
-  if((data->state.use_range && data->state.aptr.rangeline) &&
-     Curl_hyper_header(data, headers, data->state.aptr.rangeline))
-    goto error;
+  if(data->state.aptr.userpwd) {
+    result = Curl_hyper_header(data, headers, data->state.aptr.userpwd);
+    if(result)
+      goto error;
+  }
+
+  if((data->state.use_range && data->state.aptr.rangeline)) {
+    result = Curl_hyper_header(data, headers, data->state.aptr.rangeline);
+    if(result)
+      goto error;
+  }
 
   if(data->set.str[STRING_USERAGENT] &&
      *data->set.str[STRING_USERAGENT] &&
-     data->state.aptr.uagent &&
-     Curl_hyper_header(data, headers, data->state.aptr.uagent))
-    goto error;
+     data->state.aptr.uagent) {
+    result = Curl_hyper_header(data, headers, data->state.aptr.uagent);
+    if(result)
+      goto error;
+  }
 
   p_accept = Curl_checkheaders(data, "Accept")?NULL:"Accept: */*\r\n";
-  if(p_accept && Curl_hyper_header(data, headers, p_accept))
-    goto error;
-
-  if(te && Curl_hyper_header(data, headers, te))
-    goto error;
+  if(p_accept) {
+    result = Curl_hyper_header(data, headers, p_accept);
+    if(result)
+      goto error;
+  }
+  if(te) {
+    result = Curl_hyper_header(data, headers, te);
+    if(result)
+      goto error;
+  }
 
 #ifndef CURL_DISABLE_PROXY
   if(conn->bits.httpproxy && !conn->bits.tunnel_proxy &&
      !Curl_checkheaders(data, "Proxy-Connection") &&
      !Curl_checkProxyheaders(data, conn, "Proxy-Connection")) {
-    if(Curl_hyper_header(data, headers, "Proxy-Connection: Keep-Alive"))
+    result = Curl_hyper_header(data, headers, "Proxy-Connection: Keep-Alive");
+    if(result)
       goto error;
   }
 #endif
@@ -873,8 +1048,10 @@
   if(data->state.referer && !Curl_checkheaders(data, "Referer")) {
     data->state.aptr.ref = aprintf("Referer: %s\r\n", data->state.referer);
     if(!data->state.aptr.ref)
-      return CURLE_OUT_OF_MEMORY;
-    if(Curl_hyper_header(data, headers, data->state.aptr.ref))
+      result = CURLE_OUT_OF_MEMORY;
+    else
+      result = Curl_hyper_header(data, headers, data->state.aptr.ref);
+    if(result)
       goto error;
   }
 
@@ -884,8 +1061,11 @@
     data->state.aptr.accept_encoding =
       aprintf("Accept-Encoding: %s\r\n", data->set.str[STRING_ENCODING]);
     if(!data->state.aptr.accept_encoding)
-      return CURLE_OUT_OF_MEMORY;
-    if(Curl_hyper_header(data, headers, data->state.aptr.accept_encoding))
+      result = CURLE_OUT_OF_MEMORY;
+    else
+      result = Curl_hyper_header(data, headers,
+                                 data->state.aptr.accept_encoding);
+    if(result)
       goto error;
   }
   else
@@ -895,61 +1075,58 @@
   /* we only consider transfer-encoding magic if libz support is built-in */
   result = Curl_transferencode(data);
   if(result)
-    return result;
-  if(Curl_hyper_header(data, headers, data->state.aptr.te))
+    goto error;
+  result = Curl_hyper_header(data, headers, data->state.aptr.te);
+  if(result)
     goto error;
 #endif
 
   result = cookies(data, conn, headers);
   if(result)
-    return result;
+    goto error;
 
   result = Curl_add_timecondition(data, headers);
   if(result)
-    return result;
+    goto error;
 
   result = Curl_add_custom_headers(data, FALSE, headers);
   if(result)
-    return result;
+    goto error;
 
   result = bodysend(data, conn, headers, req, httpreq);
   if(result)
-    return result;
+    goto error;
 
-  Curl_debug(data, CURLINFO_HEADER_OUT, (char *)"\r\n", 2);
+  result = Curl_debug(data, CURLINFO_HEADER_OUT, (char *)"\r\n", 2);
+  if(result)
+    goto error;
 
   data->req.upload_chunky = FALSE;
   sendtask = hyper_clientconn_send(client, req);
   if(!sendtask) {
     failf(data, "hyper_clientconn_send");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
 
   if(HYPERE_OK != hyper_executor_push(h->exec, sendtask)) {
     failf(data, "Couldn't hyper_executor_push the send");
+    result = CURLE_OUT_OF_MEMORY;
     goto error;
   }
 
   hyper_clientconn_free(client);
 
-  do {
-    task = hyper_executor_poll(h->exec);
-    if(task) {
-      bool error = hyper_task_type(task) == HYPER_TASK_ERROR;
-      if(error)
-        hypererr = hyper_task_value(task);
-      hyper_task_free(task);
-      if(error)
-        goto error;
-    }
-  } while(task);
-
   if((httpreq == HTTPREQ_GET) || (httpreq == HTTPREQ_HEAD)) {
     /* HTTP GET/HEAD download */
     Curl_pgrsSetUploadSize(data, 0); /* nothing */
     Curl_setup_transfer(data, FIRSTSOCKET, -1, TRUE, -1);
   }
   conn->datastream = Curl_hyper_stream;
+  if(data->state.expect100header)
+    /* Timeout count starts now since with Hyper we don't know exactly when
+       the full request has been sent. */
+    data->req.start100 = Curl_now();
 
   /* clear userpwd and proxyuserpwd to avoid re-using old credentials
    * from re-used connections */
@@ -957,7 +1134,7 @@
   Curl_safefree(data->state.aptr.proxyuserpwd);
   return CURLE_OK;
   error:
-
+  DEBUGASSERT(result);
   if(io)
     hyper_io_free(io);
 
@@ -967,16 +1144,7 @@
   if(handshake)
     hyper_task_free(handshake);
 
-  if(hypererr) {
-    uint8_t errbuf[256];
-    size_t errlen = hyper_error_print(hypererr, errbuf, sizeof(errbuf));
-    hyper_code code = hyper_error_code(hypererr);
-    failf(data, "Hyper: [%d] %.*s", (int)code, (int)errlen, errbuf);
-    hyper_error_free(hypererr);
-    if(data->state.hresult)
-      return data->state.hresult;
-  }
-  return CURLE_OUT_OF_MEMORY;
+  return result;
 }
 
 void Curl_hyper_done(struct Curl_easy *data)
@@ -994,6 +1162,10 @@
     hyper_waker_free(h->write_waker);
     h->write_waker = NULL;
   }
+  if(h->exp100_waker) {
+    hyper_waker_free(h->exp100_waker);
+    h->exp100_waker = NULL;
+  }
 }
 
 #endif /* !defined(CURL_DISABLE_HTTP) && defined(USE_HYPER) */
diff --git a/lib/c-hyper.h b/lib/c-hyper.h
index d60ed78..d63defe 100644
--- a/lib/c-hyper.h
+++ b/lib/c-hyper.h
@@ -33,6 +33,7 @@
   hyper_waker *read_waker;
   const hyper_executor *exec;
   hyper_task *endtask;
+  hyper_waker *exp100_waker;
 };
 
 size_t Curl_hyper_recv(void *userp, hyper_context *ctx,
diff --git a/lib/checksrc.pl b/lib/checksrc.pl
index a35535c..8f98a99 100755
--- a/lib/checksrc.pl
+++ b/lib/checksrc.pl
@@ -47,6 +47,7 @@
 
 my %warnings_extended = (
     'COPYRIGHTYEAR'    => 'copyright year incorrect',
+    'STRERROR',        => 'strerror() detected',
     );
 
 my %warnings = (
@@ -87,7 +88,7 @@
     'EXCLAMATIONSPACE' => 'Whitespace after exclamation mark in expression',
     'EMPTYLINEBRACE'   => 'Empty line before the open brace',
     'EQUALSNULL'       => 'if/while comparison with == NULL',
-    'NOTEQUALSZERO'    => 'if/while comparison with != 0'
+    'NOTEQUALSZERO',   => 'if/while comparison with != 0',
     );
 
 sub readskiplist {
@@ -238,9 +239,17 @@
     print "  -i<n>     Indent spaces. Default: 2\n";
     print "  -m<n>     Maximum line length. Default: 79\n";
     print "\nDetects and warns for these problems:\n";
-    for(sort keys %warnings) {
-        printf (" %-18s: %s\n", $_, $warnings{$_});
+    my @allw = keys %warnings;
+    push @allw, keys %warnings_extended;
+    for my $w (sort @allw) {
+        if($warnings{$w}) {
+            printf (" %-18s: %s\n", $w, $warnings{$w});
+        }
+        else {
+            printf (" %-18s: %s[*]\n", $w, $warnings_extended{$w});
+        }
     }
+    print " [*] = disabled by default\n";
     exit;
 }
 
@@ -361,7 +370,10 @@
 
     my $line = 1;
     my $prevl="";
-    my $l;
+    my $prevpl="";
+    my $l = "";
+    my $prep = 0;
+    my $prevp = 0;
     open(R, "<$file") || die "failed to open $file";
 
     my $incomment=0;
@@ -443,6 +455,14 @@
         # comments
         # ------------------------------------------------------------
 
+        # prev line was a preprocessor **and** ended with a backslash
+        if($prep && ($prevpl =~ /\\ *\z/)) {
+            # this is still a preprocessor line
+            $prep = 1;
+            goto preproc;
+        }
+        $prep = 0;
+
         # crude attempt to detect // comments without too many false
         # positives
         if($l =~ /^(([^"\*]*)[^:"]|)\/\//) {
@@ -450,6 +470,13 @@
                       $line, length($1), $file, $l, "\/\/ comment");
         }
 
+        # detect and strip preprocessor directives
+        if($l =~ /^[ \t]*\#/) {
+            # preprocessor line
+            $prep = 1;
+            goto preproc;
+        }
+
         my $nostr = nostrings($l);
         # check spaces after for/if/while/function call
         if($nostr =~ /^(.*)(for|if|while| ([a-zA-Z0-9_]+)) \((.)/) {
@@ -520,7 +547,6 @@
             }
             elsif($even && $postparen &&
                ($postparen !~ /^ *$/) && ($postparen !~ /^ *[,{&|\\]+/)) {
-                print STDERR "5: '$postparen'\n";
                 checkwarn("ONELINECONDITION",
                           $line, length($l)-length($postparen), $file, $l,
                           "conditional block on the same line");
@@ -621,7 +647,7 @@
         # check for space before the semicolon last in a line
         if($l =~ /^(.*[^ ].*) ;$/) {
             checkwarn("SPACESEMICOLON",
-                      $line, length($1), $file, $ol, "space before last semicolon");
+                      $line, length($1), $file, $ol, "no space before semicolon");
         }
 
         # scan for use of banned functions
@@ -638,7 +664,18 @@
                       $line, length($1), $file, $ol,
                       "use of $2 is banned");
         }
-
+        if($warnings{"STRERROR"}) {
+            # scan for use of banned strerror. This is not a BANNEDFUNC to
+            # allow for individual enable/disable of this warning.
+            if($l =~ /^(.*\W)(strerror)\s*\(/x) {
+                if($1 !~ /^ *\#/) {
+                    # skip preprocessor lines
+                    checkwarn("STRERROR",
+                              $line, length($1), $file, $ol,
+                              "use of $2 is banned");
+                }
+            }
+        }
         # scan for use of snprintf for curl-internals reasons
         if($l =~ /^(.*\W)(v?snprintf)\s*\(/x) {
             checkwarn("SNPRINTF",
@@ -656,10 +693,9 @@
             }
         }
 
-        # check for open brace first on line but not first column
-        # only alert if previous line ended with a close paren and wasn't a cpp
-        # line
-        if((($prevl =~ /\)\z/) && ($prevl !~ /^ *#/)) && ($l =~ /^( +)\{/)) {
+        # check for open brace first on line but not first column only alert
+        # if previous line ended with a close paren and it wasn't a cpp line
+        if(($prevl =~ /\)\z/) && ($l =~ /^( +)\{/) && !$prevp) {
             checkwarn("BRACEPOS",
                       $line, length($1), $file, $ol, "badly placed open brace");
         }
@@ -667,11 +703,10 @@
         # if the previous line starts with if/while/for AND ends with an open
         # brace, or an else statement, check that this line is indented $indent
         # more steps, if not a cpp line
-        if($prevl =~ /^( *)((if|while|for)\(.*\{|else)\z/) {
+        if(!$prevp && ($prevl =~ /^( *)((if|while|for)\(.*\{|else)\z/)) {
             my $first = length($1);
-
             # this line has some character besides spaces
-            if(($l !~ /^ *#/) && ($l =~ /^( *)[^ ]/)) {
+            if($l =~ /^( *)[^ ]/) {
                 my $second = length($1);
                 my $expect = $first+$indent;
                 if($expect != $second) {
@@ -762,13 +797,13 @@
            $nostr =~ /^(.*(\S)) + [{?]/i) {
             checkwarn("MULTISPACE",
                       $line, length($1)+1, $file, $ol,
-                      "multiple space");
-            print STDERR "L: $l\n";
-            print STDERR "nostr: $nostr\n";
+                      "multiple spaces");
         }
-
+      preproc:
         $line++;
-        $prevl = $ol;
+        $prevp = $prep;
+        $prevl = $ol if(!$prep);
+        $prevpl = $ol if($prep);
     }
 
     if(!scalar(@copyright)) {
diff --git a/lib/config-amigaos.h b/lib/config-amigaos.h
index 0bbf4c4..842cbc2 100644
--- a/lib/config-amigaos.h
+++ b/lib/config-amigaos.h
@@ -55,7 +55,6 @@
 #define HAVE_SETJMP_H 1
 #define HAVE_SIGNAL 1
 #define HAVE_SIGNAL_H 1
-#define HAVE_SIG_ATOMIC_T 1
 #define HAVE_SOCKET 1
 #define HAVE_STRCASECMP 1
 #define HAVE_STRDUP 1
diff --git a/lib/config-mac.h b/lib/config-mac.h
index c8833e3..22d32d4 100644
--- a/lib/config-mac.h
+++ b/lib/config-mac.h
@@ -67,7 +67,6 @@
 
 #define HAVE_SIGACTION          1
 #define HAVE_SIGNAL_H           1
-#define HAVE_SIG_ATOMIC_T       1
 
 #ifdef MACOS_SSL_SUPPORT
 #  define USE_OPENSSL           1
diff --git a/lib/config-os400.h b/lib/config-os400.h
index cff9c3e..d68cb4b 100644
--- a/lib/config-os400.h
+++ b/lib/config-os400.h
@@ -235,12 +235,6 @@
 /* Define if you have the <signal.h> header file. */
 #define HAVE_SIGNAL_H
 
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T
-
-/* Define if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
 /* Define if you have the `socket' function. */
 #define HAVE_SOCKET
 
@@ -334,9 +328,6 @@
 /* Define if you have the <unistd.h> header file. */
 #define HAVE_UNISTD_H
 
-/* Define if you have the <winsock.h> header file. */
-#undef HAVE_WINSOCK_H
-
 /* Define if you have the <x509.h> header file. */
 #undef HAVE_X509_H
 
diff --git a/lib/config-plan9.h b/lib/config-plan9.h
index 9b98a6e..dbe9b82 100644
--- a/lib/config-plan9.h
+++ b/lib/config-plan9.h
@@ -149,7 +149,6 @@
 #define HAVE_SIGNAL 1
 #define HAVE_SIGNAL_H 1
 #define HAVE_SIGSETJMP 1
-#define HAVE_SIG_ATOMIC_T 1
 #define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
 #define HAVE_SOCKET 1
 #define HAVE_SSL_GET_SHUTDOWN 1
diff --git a/lib/config-riscos.h b/lib/config-riscos.h
index 0535137..9986b20 100644
--- a/lib/config-riscos.h
+++ b/lib/config-riscos.h
@@ -227,12 +227,6 @@
 /* Define if you have the <signal.h> header file. */
 #define HAVE_SIGNAL_H
 
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T
-
-/* Define if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
 /* Define if you have the `socket' function. */
 #define HAVE_SOCKET
 
@@ -311,9 +305,6 @@
 /* Define if you have the <unistd.h> header file. */
 #define HAVE_UNISTD_H
 
-/* Define if you have the <winsock.h> header file. */
-#undef HAVE_WINSOCK_H
-
 /* Define if you have the <x509.h> header file. */
 #undef HAVE_X509_H
 
diff --git a/lib/config-tpf.h b/lib/config-tpf.h
index ab29bfc..cce06ce 100644
--- a/lib/config-tpf.h
+++ b/lib/config-tpf.h
@@ -366,12 +366,6 @@
 /* Define to 1 if you have the <signal.h> header file. */
 #define HAVE_SIGNAL_H 1
 
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-/* #undef HAVE_SIG_ATOMIC_T_VOLATILE */
-
 /* If you have sigsetjmp */
 /* #undef HAVE_SIGSETJMP */
 
@@ -489,9 +483,6 @@
 /* Define to 1 if you have the <winsock2.h> header file. */
 /* #undef HAVE_WINSOCK2_H */
 
-/* Define to 1 if you have the <winsock.h> header file. */
-/* #undef HAVE_WINSOCK_H */
-
 /* Define this symbol if your OS supports changing the contents of argv */
 /* #undef HAVE_WRITABLE_ARGV */
 
diff --git a/lib/config-vxworks.h b/lib/config-vxworks.h
index 22d2b96..af1d873 100644
--- a/lib/config-vxworks.h
+++ b/lib/config-vxworks.h
@@ -445,12 +445,6 @@
 /* Define to 1 if you have the sigsetjmp function or macro. */
 /* #undef HAVE_SIGSETJMP */
 
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-/* #undef HAVE_SIG_ATOMIC_T_VOLATILE */
-
 /* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
 #define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
 
@@ -607,9 +601,6 @@
 /* Define to 1 if you have the winsock2.h header file. */
 /* #undef HAVE_WINSOCK2_H */
 
-/* Define to 1 if you have the winsock.h header file. */
-/* #undef HAVE_WINSOCK_H */
-
 /* Define this symbol if your OS supports changing the contents of argv */
 #define HAVE_WRITABLE_ARGV 1
 
diff --git a/lib/config-win32.h b/lib/config-win32.h
index 244e5ae..89593a8 100644
--- a/lib/config-win32.h
+++ b/lib/config-win32.h
@@ -132,9 +132,6 @@
 /* Define if you have the <windows.h> header file. */
 #define HAVE_WINDOWS_H 1
 
-/* Define if you have the <winsock.h> header file. */
-#define HAVE_WINSOCK_H 1
-
 /* Define if you have the <winsock2.h> header file. */
 #ifndef __SALFORDC__
 #define HAVE_WINSOCK2_H 1
@@ -149,9 +146,6 @@
 /*                        OTHER HEADER INFO                         */
 /* ---------------------------------------------------------------- */
 
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
 /* Define if you have the ANSI C header files. */
 #define STDC_HEADERS 1
 
@@ -384,7 +378,6 @@
 
 #ifdef USE_LWIPSOCK
 #  undef USE_WINSOCK
-#  undef HAVE_WINSOCK_H
 #  undef HAVE_WINSOCK2_H
 #  undef HAVE_WS2TCPIP_H
 #  undef HAVE_ERRNO_H
@@ -415,7 +408,6 @@
   #undef byte
   #undef word
   #undef USE_WINSOCK
-  #undef HAVE_WINSOCK_H
   #undef HAVE_WINSOCK2_H
   #undef HAVE_WS2TCPIP_H
   #define HAVE_GETADDRINFO
diff --git a/lib/config-win32ce.h b/lib/config-win32ce.h
index f3f02e7..889028b 100644
--- a/lib/config-win32ce.h
+++ b/lib/config-win32ce.h
@@ -110,22 +110,16 @@
 /* Define if you have the <windows.h> header file.  */
 #define HAVE_WINDOWS_H 1
 
-/* Define if you have the <winsock.h> header file.  */
-#define HAVE_WINSOCK_H 1
-
 /* Define if you have the <winsock2.h> header file.  */
-/* #define HAVE_WINSOCK2_H 1 */
+#define HAVE_WINSOCK2_H 1
 
 /* Define if you have the <ws2tcpip.h> header file.  */
-/* #define HAVE_WS2TCPIP_H 1 */
+#define HAVE_WS2TCPIP_H 1
 
 /* ---------------------------------------------------------------- */
 /*                        OTHER HEADER INFO                         */
 /* ---------------------------------------------------------------- */
 
-/* Define if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
 /* Define if you have the ANSI C header files.  */
 #define STDC_HEADERS 1
 
diff --git a/lib/connect.c b/lib/connect.c
index 11e6b88..af60947 100644
--- a/lib/connect.c
+++ b/lib/connect.c
@@ -85,7 +85,7 @@
 
 static bool verifyconnect(curl_socket_t sockfd, int *error);
 
-#if defined(__DragonFly__) || defined(HAVE_WINSOCK_H)
+#if defined(__DragonFly__) || defined(HAVE_WINSOCK2_H)
 /* DragonFlyBSD and Windows use millisecond units */
 #define KEEPALIVE_FACTOR(x) (x *= 1000)
 #else
@@ -589,12 +589,10 @@
     struct Curl_addrinfo *ai = conn->tempaddr[tempindex];
 
     while(ai) {
-      if(ai) {
-        result = singleipconnect(data, conn, ai, tempindex);
-        if(result == CURLE_COULDNT_CONNECT) {
-          ai = ainext(conn, tempindex, TRUE);
-          continue;
-        }
+      result = singleipconnect(data, conn, ai, tempindex);
+      if(result == CURLE_COULDNT_CONNECT) {
+        ai = ainext(conn, tempindex, TRUE);
+        continue;
       }
       break;
     }
@@ -631,7 +629,7 @@
 #ifdef ENABLE_IPV6
   struct sockaddr_in6 *si6 = NULL;
 #endif
-#if defined(HAVE_SYS_UN_H) && defined(AF_UNIX)
+#if (defined(HAVE_SYS_UN_H) || defined(WIN32_SOCKADDR_UN)) && defined(AF_UNIX)
   struct sockaddr_un *su = NULL;
 #else
   (void)salen;
@@ -658,7 +656,7 @@
       }
       break;
 #endif
-#if defined(HAVE_SYS_UN_H) && defined(AF_UNIX)
+#if (defined(HAVE_SYS_UN_H) || defined(WIN32_SOCKADDR_UN)) && defined(AF_UNIX)
     case AF_UNIX:
       if(salen > (curl_socklen_t)sizeof(CURL_SA_FAMILY_T)) {
         su = (struct sockaddr_un*)sa;
@@ -746,18 +744,15 @@
 void Curl_updateconninfo(struct Curl_easy *data, struct connectdata *conn,
                          curl_socket_t sockfd)
 {
-  /* 'local_ip' and 'local_port' get filled with local's numerical
-     ip address and port number whenever an outgoing connection is
-     **established** from the primary socket to a remote address. */
+  /* 'local_ip' and 'local_port' get filled with local's numerical ip address
+     and port number whenever an outgoing connection is **established** from
+     the primary socket to a remote address. */
   char local_ip[MAX_IPADR_LEN] = "";
   int local_port = -1;
 
-  if(conn->transport == TRNSPRT_TCP) {
-    if(!conn->bits.reuse && !conn->bits.tcp_fastopen) {
-      Curl_conninfo_remote(data, conn, sockfd);
-      Curl_conninfo_local(data, sockfd, local_ip, &local_port);
-    }
-  } /* end of TCP-only section */
+  if(!conn->bits.reuse && !conn->bits.tcp_fastopen)
+    Curl_conninfo_remote(data, conn, sockfd);
+  Curl_conninfo_local(data, sockfd, local_ip, &local_port);
 
   /* persist connection info in session handle */
   Curl_persistconninfo(data, conn, local_ip, local_port);
diff --git a/lib/content_encoding.c b/lib/content_encoding.c
index a84ff54..c03637a 100644
--- a/lib/content_encoding.c
+++ b/lib/content_encoding.c
@@ -240,7 +240,8 @@
         }
         zp->zlib_init = ZLIB_UNINIT;    /* inflateEnd() already called. */
       }
-      /* FALLTHROUGH */
+      result = exit_zlib(data, z, &zp->zlib_init, process_zlib_error(data, z));
+      break;
     default:
       result = exit_zlib(data, z, &zp->zlib_init, process_zlib_error(data, z));
       break;
diff --git a/lib/curl_config.h b/lib/curl_config.h
index 0961ee9..c46f32b 100644
--- a/lib/curl_config.h
+++ b/lib/curl_config.h
@@ -589,12 +589,6 @@
 /* Define to 1 if you have the sigsetjmp function or macro. */
 /* #undef HAVE_SIGSETJMP */
 
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#define HAVE_SIG_ATOMIC_T 1
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-/* #undef HAVE_SIG_ATOMIC_T_VOLATILE */
-
 /* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
 #define HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
 
@@ -622,6 +616,9 @@
 /* Define to 1 if you have the <stdint.h> header file. */
 #define HAVE_STDINT_H 1
 
+/* Define to 1 if you have the <stdio.h> header file. */
+#define HAVE_STDIO_H 1
+
 /* Define to 1 if you have the <stdlib.h> header file. */
 #define HAVE_STDLIB_H 1
 
@@ -766,9 +763,6 @@
 /* Define to 1 if you have the winsock2.h header file. */
 /* #undef HAVE_WINSOCK2_H */
 
-/* Define to 1 if you have the winsock.h header file. */
-/* #undef HAVE_WINSOCK_H */
-
 /* Define to 1 if you have the <wolfssh/ssh.h> header file. */
 /* #undef HAVE_WOLFSSH_SSH_H */
 
@@ -907,7 +901,9 @@
 /* The number of bytes in type short */
 #define SIZEOF_SHORT 2
 
-/* Define to 1 if you have the ANSI C header files. */
+/* Define to 1 if all of the C90 standard headers exist (not just the ones
+   required in a freestanding environment). This macro is provided for
+   backward compatibility; new code need not use it. */
 #define STDC_HEADERS 1
 
 /* Define to the type of arg 3 for strerror_r. */
@@ -1041,11 +1037,6 @@
 /* #  undef _ALL_SOURCE */
 #endif
 
-/* Enable large inode numbers on Mac OS X 10.5.  */
-#ifndef _DARWIN_USE_64_BIT_INODE
-# define _DARWIN_USE_64_BIT_INODE 1
-#endif
-
 /* Number of bits in a file offset, on hosts where this is settable. */
 #define _FILE_OFFSET_BITS 64
 
diff --git a/lib/curl_config.h.cmake b/lib/curl_config.h.cmake
index fa4f19c..d2a0f43 100644
--- a/lib/curl_config.h.cmake
+++ b/lib/curl_config.h.cmake
@@ -33,61 +33,91 @@
 /* Location of default ca path */
 #cmakedefine CURL_CA_PATH "${CURL_CA_PATH}"
 
-/* to disable cookies support */
+/* disables alt-svc */
+#cmakedefine CURL_DISABLE_ALTSVC 1
+
+/* disables cookies support */
 #cmakedefine CURL_DISABLE_COOKIES 1
 
-/* to disable cryptographic authentication */
+/* disables cryptographic authentication */
 #cmakedefine CURL_DISABLE_CRYPTO_AUTH 1
 
-/* to disable DICT */
+/* disables DICT */
 #cmakedefine CURL_DISABLE_DICT 1
 
-/* to disable FILE */
+/* disables DNS-over-HTTPS */
+#cmakedefine CURL_DISABLE_DOH 1
+
+/* disables FILE */
 #cmakedefine CURL_DISABLE_FILE 1
 
-/* to disable FTP */
+/* disables FTP */
 #cmakedefine CURL_DISABLE_FTP 1
 
-/* to disable GOPHER */
+/* disables GOPHER */
 #cmakedefine CURL_DISABLE_GOPHER 1
 
-/* to disable IMAP */
-#cmakedefine CURL_DISABLE_IMAP 1
+/* disables HSTS support */
+#cmakedefine CURL_DISABLE_HSTS 1
 
-/* to disable HTTP */
+/* disables HTTP */
 #cmakedefine CURL_DISABLE_HTTP 1
 
-/* to disable LDAP */
+/* disables IMAP */
+#cmakedefine CURL_DISABLE_IMAP 1
+
+/* disables LDAP */
 #cmakedefine CURL_DISABLE_LDAP 1
 
-/* to disable LDAPS */
+/* disables LDAPS */
 #cmakedefine CURL_DISABLE_LDAPS 1
 
-/* to disable MQTT */
+/* disables --libcurl option from the curl tool */
+#cmakedefine CURL_DISABLE_LIBCURL_OPTION 1
+
+/* disables MIME support */
+#cmakedefine CURL_DISABLE_MIME 1
+
+/* disables MQTT */
 #cmakedefine CURL_DISABLE_MQTT 1
 
-/* to disable POP3 */
+/* disables netrc parser */
+#cmakedefine CURL_DISABLE_NETRC 1
+
+/* disables NTLM support */
+#cmakedefine CURL_DISABLE_NTLM 1
+
+/* disables date parsing */
+#cmakedefine CURL_DISABLE_PARSEDATE 1
+
+/* disables POP3 */
 #cmakedefine CURL_DISABLE_POP3 1
 
-/* to disable proxies */
+/* disables built-in progress meter */
+#cmakedefine CURL_DISABLE_PROGRESS_METER 1
+
+/* disables proxies */
 #cmakedefine CURL_DISABLE_PROXY 1
 
-/* to disable RTSP */
+/* disables RTSP */
 #cmakedefine CURL_DISABLE_RTSP 1
 
-/* to disable SMB */
+/* disables SMB */
 #cmakedefine CURL_DISABLE_SMB 1
 
-/* to disable SMTP */
+/* disables SMTP */
 #cmakedefine CURL_DISABLE_SMTP 1
 
-/* to disable TELNET */
+/* disables use of socketpair for curl_multi_poll */
+#cmakedefine CURL_DISABLE_SOCKETPAIR 1
+
+/* disables TELNET */
 #cmakedefine CURL_DISABLE_TELNET 1
 
-/* to disable TFTP */
+/* disables TFTP */
 #cmakedefine CURL_DISABLE_TFTP 1
 
-/* to disable verbose strings */
+/* disables verbose strings */
 #cmakedefine CURL_DISABLE_VERBOSE_STRINGS 1
 
 /* to make a symbol visible */
@@ -521,12 +551,6 @@
 /* Define to 1 if you have the sigsetjmp function or macro. */
 #cmakedefine HAVE_SIGSETJMP 1
 
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#cmakedefine HAVE_SIG_ATOMIC_T 1
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-#cmakedefine HAVE_SIG_ATOMIC_T_VOLATILE 1
-
 /* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
 #cmakedefine HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID 1
 
@@ -686,9 +710,6 @@
 /* Define to 1 if you have the winsock2.h header file. */
 #cmakedefine HAVE_WINSOCK2_H 1
 
-/* Define to 1 if you have the winsock.h header file. */
-#cmakedefine HAVE_WINSOCK_H 1
-
 /* Define this symbol if your OS supports changing the contents of argv */
 #cmakedefine HAVE_WRITABLE_ARGV 1
 
@@ -931,9 +952,6 @@
 /* if Unix domain sockets are enabled  */
 #cmakedefine USE_UNIX_SOCKETS
 
-/* to disable alt-svc */
-#cmakedefine CURL_DISABLE_ALTSVC 1
-
 /* Define to 1 if you are building a Windows target with large file support. */
 #cmakedefine USE_WIN32_LARGE_FILES 1
 
diff --git a/lib/curl_config.h.in b/lib/curl_config.h.in
index 5a8190f..751f6a4 100644
--- a/lib/curl_config.h.in
+++ b/lib/curl_config.h.in
@@ -588,12 +588,6 @@
 /* Define to 1 if you have the sigsetjmp function or macro. */
 #undef HAVE_SIGSETJMP
 
-/* Define to 1 if sig_atomic_t is an available typedef. */
-#undef HAVE_SIG_ATOMIC_T
-
-/* Define to 1 if sig_atomic_t is already defined as volatile. */
-#undef HAVE_SIG_ATOMIC_T_VOLATILE
-
 /* Define to 1 if struct sockaddr_in6 has the sin6_scope_id member */
 #undef HAVE_SOCKADDR_IN6_SIN6_SCOPE_ID
 
@@ -621,6 +615,9 @@
 /* Define to 1 if you have the <stdint.h> header file. */
 #undef HAVE_STDINT_H
 
+/* Define to 1 if you have the <stdio.h> header file. */
+#undef HAVE_STDIO_H
+
 /* Define to 1 if you have the <stdlib.h> header file. */
 #undef HAVE_STDLIB_H
 
@@ -765,9 +762,6 @@
 /* Define to 1 if you have the winsock2.h header file. */
 #undef HAVE_WINSOCK2_H
 
-/* Define to 1 if you have the winsock.h header file. */
-#undef HAVE_WINSOCK_H
-
 /* Define to 1 if you have the <wolfssh/ssh.h> header file. */
 #undef HAVE_WOLFSSH_SSH_H
 
@@ -924,7 +918,9 @@
 /* The number of bytes in type time_t */
 #undef SIZEOF_TIME_T
 
-/* Define to 1 if you have the ANSI C header files. */
+/* Define to 1 if all of the C90 standard headers exist (not just the ones
+   required in a freestanding environment). This macro is provided for
+   backward compatibility; new code need not use it. */
 #undef STDC_HEADERS
 
 /* Define to the type of arg 3 for strerror_r. */
@@ -1058,11 +1054,6 @@
 #  undef _ALL_SOURCE
 #endif
 
-/* Enable large inode numbers on Mac OS X 10.5.  */
-#ifndef _DARWIN_USE_64_BIT_INODE
-# define _DARWIN_USE_64_BIT_INODE 1
-#endif
-
 /* Number of bits in a file offset, on hosts where this is settable. */
 #undef _FILE_OFFSET_BITS
 
diff --git a/lib/curl_des.c b/lib/curl_des.c
index 8c5af19..76185cb 100644
--- a/lib/curl_des.c
+++ b/lib/curl_des.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 2015 - 2020, Steve Holme, <steve_holme@hotmail.com>.
+ * Copyright (C) 2015 - 2021, Steve Holme, <steve_holme@hotmail.com>.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -22,7 +22,7 @@
 
 #include "curl_setup.h"
 
-#if defined(USE_NTLM) && !defined(USE_OPENSSL)
+#if defined(USE_NTLM) && !defined(USE_OPENSSL) && !defined(USE_WOLFSSL)
 
 #include "curl_des.h"
 
diff --git a/lib/curl_gssapi.c b/lib/curl_gssapi.c
index 5810dad..8f34056 100644
--- a/lib/curl_gssapi.c
+++ b/lib/curl_gssapi.c
@@ -32,10 +32,12 @@
 #include "curl_memory.h"
 #include "memdebug.h"
 
-static char spnego_oid_bytes[] = "\x2b\x06\x01\x05\x05\x02";
-gss_OID_desc Curl_spnego_mech_oid = { 6, &spnego_oid_bytes };
-static char krb5_oid_bytes[] = "\x2a\x86\x48\x86\xf7\x12\x01\x02\x02";
-gss_OID_desc Curl_krb5_mech_oid = { 9, &krb5_oid_bytes };
+gss_OID_desc Curl_spnego_mech_oid = {
+  6, (char *)"\x2b\x06\x01\x05\x05\x02"
+};
+gss_OID_desc Curl_krb5_mech_oid = {
+  9, (char *)"\x2a\x86\x48\x86\xf7\x12\x01\x02\x02"
+};
 
 OM_uint32 Curl_gss_init_sec_context(
     struct Curl_easy *data,
diff --git a/lib/curl_ntlm_core.c b/lib/curl_ntlm_core.c
index 749b44e..ed123d0 100644
--- a/lib/curl_ntlm_core.c
+++ b/lib/curl_ntlm_core.c
@@ -49,7 +49,14 @@
      in NTLM type-3 messages.
  */
 
-#if defined(USE_OPENSSL) || defined(USE_WOLFSSL)
+#if defined(USE_OPENSSL)
+  #include <openssl/opensslconf.h>
+  #if !defined(OPENSSL_NO_DES) && !defined(OPENSSL_NO_DEPRECATED_3_0)
+    #define USE_OPENSSL_DES
+  #endif
+#endif
+
+#if defined(USE_OPENSSL_DES) || defined(USE_WOLFSSL)
 
 #ifdef USE_WOLFSSL
 #include <wolfssl/options.h>
@@ -97,7 +104,7 @@
 #elif defined(USE_WIN32_CRYPTO)
 #  include <wincrypt.h>
 #else
-#  error "Can't compile NTLM support without a crypto library."
+#  error "Can't compile NTLM support without a crypto library with DES."
 #endif
 
 #include "urldata.h"
@@ -133,7 +140,7 @@
   key[7] = (unsigned char) ((key_56[6] << 1) & 0xFF);
 }
 
-#if defined(USE_OPENSSL) || defined(USE_WOLFSSL)
+#if defined(USE_OPENSSL_DES) || defined(USE_WOLFSSL)
 /*
  * Turns a 56 bit key into the 64 bit, odd parity key and sets the key.  The
  * key schedule ks is also set.
@@ -150,7 +157,7 @@
   DES_set_odd_parity(&key);
 
   /* Set the key */
-  DES_set_key(&key, ks);
+  DES_set_key_unchecked(&key, ks);
 }
 
 #elif defined(USE_GNUTLS)
@@ -362,7 +369,7 @@
                             const unsigned char *plaintext,
                             unsigned char *results)
 {
-#if defined(USE_OPENSSL) || defined(USE_WOLFSSL)
+#if defined(USE_OPENSSL_DES) || defined(USE_WOLFSSL)
   DES_key_schedule ks;
 
   setup_des_key(keys, DESKEY(ks));
@@ -420,7 +427,7 @@
   {
     /* Create LanManager hashed password. */
 
-#if defined(USE_OPENSSL) || defined(USE_WOLFSSL)
+#if defined(USE_OPENSSL_DES) || defined(USE_WOLFSSL)
     DES_key_schedule ks;
 
     setup_des_key(pw, DESKEY(ks));
diff --git a/lib/curl_ntlm_wb.c b/lib/curl_ntlm_wb.c
index ca9e287..5a3bc3c 100644
--- a/lib/curl_ntlm_wb.c
+++ b/lib/curl_ntlm_wb.c
@@ -426,7 +426,8 @@
     /* Use Samba's 'winbind' daemon to support NTLM authentication,
      * by delegating the NTLM challenge/response protocol to a helper
      * in ntlm_auth.
-     * http://devel.squid-cache.org/ntlm/squid_helper_protocol.html
+     * https://web.archive.org/web/20190925164737
+     * /devel.squid-cache.org/ntlm/squid_helper_protocol.html
      * https://www.samba.org/samba/docs/man/manpages-3/winbindd.8.html
      * https://www.samba.org/samba/docs/man/manpages-3/ntlm_auth.1.html
      * Preprocessor symbol 'NTLM_WB_ENABLED' is defined when this
diff --git a/lib/curl_sasl.c b/lib/curl_sasl.c
index f5ac99a..8d39e4f 100644
--- a/lib/curl_sasl.c
+++ b/lib/curl_sasl.c
@@ -56,8 +56,8 @@
 
 /* Supported mechanisms */
 static const struct {
-  const char   *name;  /* Name */
-  size_t        len;   /* Name length */
+  const char    *name;  /* Name */
+  size_t         len;   /* Name length */
   unsigned short bit;   /* Flag bit */
 } mechtable[] = {
   { "LOGIN",        5,  SASL_MECH_LOGIN },
@@ -85,8 +85,11 @@
  * conn     [in]     - The connection data.
  * authused [in]     - The authentication mechanism used.
  */
-void Curl_sasl_cleanup(struct connectdata *conn, unsigned int authused)
+void Curl_sasl_cleanup(struct connectdata *conn, unsigned short authused)
 {
+  (void)conn;
+  (void)authused;
+
 #if defined(USE_KERBEROS5)
   /* Cleanup the gssapi structure */
   if(authused == SASL_MECH_GSSAPI) {
@@ -107,12 +110,6 @@
     Curl_auth_cleanup_ntlm(&conn->ntlm);
   }
 #endif
-
-#if !defined(USE_KERBEROS5) && !defined(USE_NTLM)
-  /* Reserved for future use */
-  (void)conn;
-  (void)authused;
-#endif
 }
 
 /*
@@ -189,16 +186,35 @@
  *
  * Initializes the SASL structure.
  */
-void Curl_sasl_init(struct SASL *sasl, const struct SASLproto *params)
+void Curl_sasl_init(struct SASL *sasl, struct Curl_easy *data,
+                    const struct SASLproto *params)
 {
+  unsigned long auth = data->set.httpauth;
+
   sasl->params = params;           /* Set protocol dependent parameters */
   sasl->state = SASL_STOP;         /* Not yet running */
+  sasl->curmech = NULL;            /* No mechanism yet. */
   sasl->authmechs = SASL_AUTH_NONE; /* No known authentication mechanism yet */
-  sasl->prefmech = SASL_AUTH_DEFAULT; /* Prefer all mechanisms */
-  sasl->authused = SASL_AUTH_NONE; /* No the authentication mechanism used */
+  sasl->prefmech = params->defmechs; /* Default preferred mechanisms */
+  sasl->authused = SASL_AUTH_NONE; /* The authentication mechanism used */
   sasl->resetprefs = TRUE;         /* Reset prefmech upon AUTH parsing. */
   sasl->mutual_auth = FALSE;       /* No mutual authentication (GSSAPI only) */
   sasl->force_ir = FALSE;          /* Respect external option */
+
+  if(auth != CURLAUTH_BASIC) {
+    sasl->resetprefs = FALSE;
+    sasl->prefmech = SASL_AUTH_NONE;
+    if(auth & CURLAUTH_BASIC)
+      sasl->prefmech |= SASL_MECH_PLAIN | SASL_MECH_LOGIN;
+    if(auth & CURLAUTH_DIGEST)
+      sasl->prefmech |= SASL_MECH_DIGEST_MD5;
+    if(auth & CURLAUTH_NTLM)
+      sasl->prefmech |= SASL_MECH_NTLM;
+    if(auth & CURLAUTH_BEARER)
+      sasl->prefmech |= SASL_MECH_OAUTHBEARER | SASL_MECH_XOAUTH2;
+    if(auth & CURLAUTH_GSSAPI)
+      sasl->prefmech |= SASL_MECH_GSSAPI;
+  }
 }
 
 /*
@@ -247,40 +263,45 @@
 static CURLcode get_server_message(struct SASL *sasl, struct Curl_easy *data,
                                    struct bufref *out)
 {
-  unsigned char *msg;
-  size_t msglen;
-  char *serverdata = NULL;
   CURLcode result = CURLE_OK;
 
-  sasl->params->getmessage(data->state.buffer, &serverdata);
-  if(!serverdata)
-    result = CURLE_BAD_CONTENT_ENCODING;
-  else if(!*serverdata || *serverdata == '=')
-    Curl_bufref_set(out, NULL, 0, NULL);
-  else {
-    result = Curl_base64_decode(serverdata, &msg, &msglen);
-    if(!result)
-      Curl_bufref_set(out, msg, msglen, curl_free);
+  result = sasl->params->getmessage(data, out);
+  if(!result && (sasl->params->flags & SASL_FLAG_BASE64)) {
+    unsigned char *msg;
+    size_t msglen;
+    const char *serverdata = (const char *) Curl_bufref_ptr(out);
+
+    if(!*serverdata || *serverdata == '=')
+      Curl_bufref_set(out, NULL, 0, NULL);
+    else {
+      result = Curl_base64_decode(serverdata, &msg, &msglen);
+      if(!result)
+        Curl_bufref_set(out, msg, msglen, curl_free);
+    }
   }
   return result;
 }
 
 /* Encode the outgoing SASL message. */
-static CURLcode build_message(struct Curl_easy *data, struct bufref *msg)
+static CURLcode build_message(struct SASL *sasl, struct Curl_easy *data,
+                              struct bufref *msg)
 {
   CURLcode result = CURLE_OK;
-  char *base64;
-  size_t base64len;
 
-  if(!Curl_bufref_ptr(msg))             /* Empty mesage. */
-    Curl_bufref_set(msg, "", 0, NULL);
-  else if(!Curl_bufref_len(msg))        /* Explicit empty response. */
-    Curl_bufref_set(msg, "=", 1, NULL);
-  else {
-    result = Curl_base64_encode(data, (const char *) Curl_bufref_ptr(msg),
-                                Curl_bufref_len(msg), &base64, &base64len);
-    if(!result)
-      Curl_bufref_set(msg, base64, base64len, curl_free);
+  if(sasl->params->flags & SASL_FLAG_BASE64) {
+    if(!Curl_bufref_ptr(msg))                   /* Empty message. */
+      Curl_bufref_set(msg, "", 0, NULL);
+    else if(!Curl_bufref_len(msg))              /* Explicit empty response. */
+      Curl_bufref_set(msg, "=", 1, NULL);
+    else {
+      char *base64;
+      size_t base64len;
+
+      result = Curl_base64_encode(data, (const char *) Curl_bufref_ptr(msg),
+                                  Curl_bufref_len(msg), &base64, &base64len);
+      if(!result)
+        Curl_bufref_set(msg, base64, base64len, curl_free);
+    }
   }
 
   return result;
@@ -310,11 +331,11 @@
  * Calculate the required login details for SASL authentication.
  */
 CURLcode Curl_sasl_start(struct SASL *sasl, struct Curl_easy *data,
-                         struct connectdata *conn,
                          bool force_ir, saslprogress *progress)
 {
   CURLcode result = CURLE_OK;
-  unsigned int enabledmechs;
+  struct connectdata *conn = data->conn;
+  unsigned short enabledmechs;
   const char *mech = NULL;
   struct bufref resp;
   saslstate state1 = SASL_STOP;
@@ -471,16 +492,16 @@
   }
 
   if(!result && mech) {
+    sasl->curmech = mech;
     if(Curl_bufref_ptr(&resp))
-      result = build_message(data, &resp);
+      result = build_message(sasl, data, &resp);
 
     if(sasl->params->maxirlen &&
        strlen(mech) + Curl_bufref_len(&resp) > sasl->params->maxirlen)
       Curl_bufref_free(&resp);
 
     if(!result)
-      result = sasl->params->sendauth(data, conn, mech,
-                                      (const char *) Curl_bufref_ptr(&resp));
+      result = sasl->params->sendauth(data, mech, &resp);
 
     if(!result) {
       *progress = SASL_INPROGRESS;
@@ -498,10 +519,10 @@
  * Continue the authentication.
  */
 CURLcode Curl_sasl_continue(struct SASL *sasl, struct Curl_easy *data,
-                            struct connectdata *conn,
                             int code, saslprogress *progress)
 {
   CURLcode result = CURLE_OK;
+  struct connectdata *conn = data->conn;
   saslstate newstate = SASL_FINAL;
   struct bufref resp;
   const char * const hostname = SSL_HOST_NAME();
@@ -574,7 +595,8 @@
       result = Curl_auth_create_digest_md5_message(data, &serverdata,
                                                    conn->user, conn->passwd,
                                                    service, &resp);
-    newstate = SASL_DIGESTMD5_RESP;
+    if(!result && (sasl->params->flags & SASL_FLAG_BASE64))
+      newstate = SASL_DIGESTMD5_RESP;
     break;
   case SASL_DIGESTMD5_RESP:
     /* Keep response NULL to output an empty line. */
@@ -630,7 +652,9 @@
       }
       else
         /* Decode the security challenge and create the response message */
-        result = Curl_auth_create_gssapi_security_message(data, &serverdata,
+        result = Curl_auth_create_gssapi_security_message(data,
+                                                          conn->sasl_authzid,
+                                                          &serverdata,
                                                           &conn->krb5,
                                                           &resp);
     }
@@ -639,7 +663,9 @@
     /* Decode the security challenge and create the response message */
     result = get_server_message(sasl, data, &serverdata);
     if(!result)
-      result = Curl_auth_create_gssapi_security_message(data, &serverdata,
+      result = Curl_auth_create_gssapi_security_message(data,
+                                                        conn->sasl_authzid,
+                                                        &serverdata,
                                                         &conn->krb5,
                                                         &resp);
     break;
@@ -687,7 +713,7 @@
     sasl->authmechs ^= sasl->authused;
 
     /* Start an alternative SASL authentication */
-    return Curl_sasl_start(sasl, data, conn, sasl->force_ir, progress);
+    return Curl_sasl_start(sasl, data, sasl->force_ir, progress);
   default:
     failf(data, "Unsupported SASL authentication mechanism");
     result = CURLE_UNSUPPORTED_PROTOCOL;  /* Should not happen */
@@ -699,14 +725,13 @@
   switch(result) {
   case CURLE_BAD_CONTENT_ENCODING:
     /* Cancel dialog */
-    result = sasl->params->sendcont(data, conn, "*");
+    result = sasl->params->cancelauth(data, sasl->curmech);
     newstate = SASL_CANCEL;
     break;
   case CURLE_OK:
-    result = build_message(data, &resp);
+    result = build_message(sasl, data, &resp);
     if(!result)
-      result = sasl->params->sendcont(data, conn,
-                                      (const char *) Curl_bufref_ptr(&resp));
+      result = sasl->params->contauth(data, sasl->curmech, &resp);
     break;
   default:
     newstate = SASL_STOP;    /* Stop on error */
diff --git a/lib/curl_sasl.h b/lib/curl_sasl.h
index e17d323..91458c7 100644
--- a/lib/curl_sasl.h
+++ b/lib/curl_sasl.h
@@ -24,6 +24,8 @@
 
 #include <curl/curl.h>
 
+#include "bufref.h"
+
 struct Curl_easy;
 struct connectdata;
 
@@ -46,17 +48,20 @@
 #define SASL_AUTH_DEFAULT       (SASL_AUTH_ANY & ~SASL_MECH_EXTERNAL)
 
 /* Authentication mechanism strings */
-#define SASL_MECH_STRING_LOGIN        "LOGIN"
-#define SASL_MECH_STRING_PLAIN        "PLAIN"
-#define SASL_MECH_STRING_CRAM_MD5     "CRAM-MD5"
-#define SASL_MECH_STRING_DIGEST_MD5   "DIGEST-MD5"
-#define SASL_MECH_STRING_GSSAPI       "GSSAPI"
-#define SASL_MECH_STRING_EXTERNAL     "EXTERNAL"
-#define SASL_MECH_STRING_NTLM         "NTLM"
-#define SASL_MECH_STRING_XOAUTH2      "XOAUTH2"
-#define SASL_MECH_STRING_OAUTHBEARER  "OAUTHBEARER"
-#define SASL_MECH_STRING_SCRAM_SHA_1  "SCRAM-SHA-1"
-#define SASL_MECH_STRING_SCRAM_SHA_256 "SCRAM-SHA-256"
+#define SASL_MECH_STRING_LOGIN          "LOGIN"
+#define SASL_MECH_STRING_PLAIN          "PLAIN"
+#define SASL_MECH_STRING_CRAM_MD5       "CRAM-MD5"
+#define SASL_MECH_STRING_DIGEST_MD5     "DIGEST-MD5"
+#define SASL_MECH_STRING_GSSAPI         "GSSAPI"
+#define SASL_MECH_STRING_EXTERNAL       "EXTERNAL"
+#define SASL_MECH_STRING_NTLM           "NTLM"
+#define SASL_MECH_STRING_XOAUTH2        "XOAUTH2"
+#define SASL_MECH_STRING_OAUTHBEARER    "OAUTHBEARER"
+#define SASL_MECH_STRING_SCRAM_SHA_1    "SCRAM-SHA-1"
+#define SASL_MECH_STRING_SCRAM_SHA_256  "SCRAM-SHA-256"
+
+/* SASL flags */
+#define SASL_FLAG_BASE64        0x0001  /* Messages are base64-encoded */
 
 /* SASL machine states */
 typedef enum {
@@ -90,30 +95,37 @@
 /* Protocol dependent SASL parameters */
 struct SASLproto {
   const char *service;     /* The service name */
+  CURLcode (*sendauth)(struct Curl_easy *data, const char *mech,
+                       const struct bufref *ir);
+                           /* Send authentication command */
+  CURLcode (*contauth)(struct Curl_easy *data, const char *mech,
+                       const struct bufref *contauth);
+                           /* Send authentication continuation */
+  CURLcode (*cancelauth)(struct Curl_easy *data, const char *mech);
+                           /* Cancel authentication. */
+  CURLcode (*getmessage)(struct Curl_easy *data, struct bufref *out);
+                           /* Get SASL response message */
+  size_t maxirlen;         /* Maximum initial response + mechanism length,
+                              or zero if no max. This is normally the max
+                              command length - other characters count.
+                              This has to be zero for non-base64 protocols. */
   int contcode;            /* Code to receive when continuation is expected */
   int finalcode;           /* Code to receive upon authentication success */
-  size_t maxirlen;         /* Maximum initial response length */
-  CURLcode (*sendauth)(struct Curl_easy *data,
-                       struct connectdata *conn,
-                       const char *mech, const char *ir);
-                           /* Send authentication command */
-  CURLcode (*sendcont)(struct Curl_easy *data,
-                       struct connectdata *conn, const char *contauth);
-                           /* Send authentication continuation */
-  void (*getmessage)(char *buffer, char **outptr);
-                           /* Get SASL response message */
+  unsigned short defmechs; /* Mechanisms enabled by default */
+  unsigned short flags;    /* Configuration flags. */
 };
 
 /* Per-connection parameters */
 struct SASL {
   const struct SASLproto *params; /* Protocol dependent parameters */
-  saslstate state;         /* Current machine state */
+  saslstate state;           /* Current machine state */
+  const char *curmech;       /* Current mechanism id. */
   unsigned short authmechs;  /* Accepted authentication mechanisms */
   unsigned short prefmech;   /* Preferred authentication mechanism */
   unsigned short authused;   /* Auth mechanism used for the connection */
-  bool resetprefs;         /* For URL auth option parsing. */
-  bool mutual_auth;        /* Mutual authentication enabled (GSSAPI only) */
-  bool force_ir;           /* Protocol always supports initial response */
+  bool resetprefs;           /* For URL auth option parsing. */
+  bool mutual_auth;          /* Mutual authentication enabled (GSSAPI only) */
+  bool force_ir;             /* Protocol always supports initial response */
 };
 
 /* This is used to test whether the line starts with the given mechanism */
@@ -123,7 +135,7 @@
 
 /* This is used to cleanup any libraries or curl modules used by the sasl
    functions */
-void Curl_sasl_cleanup(struct connectdata *conn, unsigned int authused);
+void Curl_sasl_cleanup(struct connectdata *conn, unsigned short authused);
 
 /* Convert a mechanism name to a token */
 unsigned short Curl_sasl_decode_mech(const char *ptr,
@@ -134,19 +146,18 @@
                                          const char *value, size_t len);
 
 /* Initializes an SASL structure */
-void Curl_sasl_init(struct SASL *sasl, const struct SASLproto *params);
+void Curl_sasl_init(struct SASL *sasl, struct Curl_easy *data,
+                    const struct SASLproto *params);
 
 /* Check if we have enough auth data and capabilities to authenticate */
 bool Curl_sasl_can_authenticate(struct SASL *sasl, struct connectdata *conn);
 
 /* Calculate the required login details for SASL authentication  */
 CURLcode Curl_sasl_start(struct SASL *sasl, struct Curl_easy *data,
-                         struct connectdata *conn,
                          bool force_ir, saslprogress *progress);
 
 /* Continue an SASL authentication  */
 CURLcode Curl_sasl_continue(struct SASL *sasl, struct Curl_easy *data,
-                            struct connectdata *conn,
                             int code, saslprogress *progress);
 
 #endif /* HEADER_CURL_SASL_H */
diff --git a/lib/curl_setup.h b/lib/curl_setup.h
index c0861d7..61384cd 100644
--- a/lib/curl_setup.h
+++ b/lib/curl_setup.h
@@ -166,42 +166,48 @@
  */
 
 #ifdef HTTP_ONLY
-#  ifndef CURL_DISABLE_TFTP
-#    define CURL_DISABLE_TFTP
-#  endif
-#  ifndef CURL_DISABLE_FTP
-#    define CURL_DISABLE_FTP
-#  endif
-#  ifndef CURL_DISABLE_LDAP
-#    define CURL_DISABLE_LDAP
-#  endif
-#  ifndef CURL_DISABLE_TELNET
-#    define CURL_DISABLE_TELNET
-#  endif
 #  ifndef CURL_DISABLE_DICT
 #    define CURL_DISABLE_DICT
 #  endif
 #  ifndef CURL_DISABLE_FILE
 #    define CURL_DISABLE_FILE
 #  endif
-#  ifndef CURL_DISABLE_RTSP
-#    define CURL_DISABLE_RTSP
-#  endif
-#  ifndef CURL_DISABLE_POP3
-#    define CURL_DISABLE_POP3
-#  endif
-#  ifndef CURL_DISABLE_IMAP
-#    define CURL_DISABLE_IMAP
-#  endif
-#  ifndef CURL_DISABLE_SMTP
-#    define CURL_DISABLE_SMTP
+#  ifndef CURL_DISABLE_FTP
+#    define CURL_DISABLE_FTP
 #  endif
 #  ifndef CURL_DISABLE_GOPHER
 #    define CURL_DISABLE_GOPHER
 #  endif
+#  ifndef CURL_DISABLE_IMAP
+#    define CURL_DISABLE_IMAP
+#  endif
+#  ifndef CURL_DISABLE_LDAP
+#    define CURL_DISABLE_LDAP
+#  endif
+#  ifndef CURL_DISABLE_LDAPS
+#    define CURL_DISABLE_LDAPS
+#  endif
+#  ifndef CURL_DISABLE_MQTT
+#    define CURL_DISABLE_MQTT
+#  endif
+#  ifndef CURL_DISABLE_POP3
+#    define CURL_DISABLE_POP3
+#  endif
+#  ifndef CURL_DISABLE_RTSP
+#    define CURL_DISABLE_RTSP
+#  endif
 #  ifndef CURL_DISABLE_SMB
 #    define CURL_DISABLE_SMB
 #  endif
+#  ifndef CURL_DISABLE_SMTP
+#    define CURL_DISABLE_SMTP
+#  endif
+#  ifndef CURL_DISABLE_TELNET
+#    define CURL_DISABLE_TELNET
+#  endif
+#  ifndef CURL_DISABLE_TFTP
+#    define CURL_DISABLE_TFTP
+#  endif
 #endif
 
 /*
@@ -711,7 +717,6 @@
 #if defined(__LWIP_OPT_H__) || defined(LWIP_HDR_OPT_H)
 #  if defined(SOCKET) || \
      defined(USE_WINSOCK) || \
-     defined(HAVE_WINSOCK_H) || \
      defined(HAVE_WINSOCK2_H) || \
      defined(HAVE_WS2TCPIP_H)
 #    error "WinSock and lwIP TCP/IP stack definitions shall not coexist!"
@@ -833,6 +838,7 @@
        ADDRESS_FAMILY sun_family;
        char sun_path[UNIX_PATH_MAX];
      } SOCKADDR_UN, *PSOCKADDR_UN;
+#    define WIN32_SOCKADDR_UN
 #  endif
 #endif
 
diff --git a/lib/curl_setup_once.h b/lib/curl_setup_once.h
index 22d0a06..38018d2 100644
--- a/lib/curl_setup_once.h
+++ b/lib/curl_setup_once.h
@@ -323,26 +323,6 @@
 
 #include "curl_ctype.h"
 
-/*
- * Typedef to 'int' if sig_atomic_t is not an available 'typedefed' type.
- */
-
-#ifndef HAVE_SIG_ATOMIC_T
-typedef int sig_atomic_t;
-#define HAVE_SIG_ATOMIC_T
-#endif
-
-
-/*
- * Convenience SIG_ATOMIC_T definition
- */
-
-#ifdef HAVE_SIG_ATOMIC_T_VOLATILE
-#define SIG_ATOMIC_T static sig_atomic_t
-#else
-#define SIG_ATOMIC_T static volatile sig_atomic_t
-#endif
-
 
 /*
  * Macro used to include code only in debug builds.
diff --git a/lib/curl_sha256.h b/lib/curl_sha256.h
index b4579d7..b14c475 100644
--- a/lib/curl_sha256.h
+++ b/lib/curl_sha256.h
@@ -8,7 +8,7 @@
  *                             \___|\___/|_| \_\_____|
  *
  * Copyright (C) 2017, Florin Petriuc, <petriuc.florin@gmail.com>
- * Copyright (C) 2018 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2018 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -28,7 +28,14 @@
 
 extern const struct HMAC_params Curl_HMAC_SHA256[1];
 
+#ifdef USE_WOLFSSL
+/* SHA256_DIGEST_LENGTH is an enum value in wolfSSL. Need to import it from
+ * sha.h*/
+#include <wolfssl/options.h>
+#include <openssl/sha.h>
+#else
 #define SHA256_DIGEST_LENGTH 32
+#endif
 
 void Curl_sha256it(unsigned char *outbuffer, const unsigned char *input,
                    const size_t len);
diff --git a/lib/doh.c b/lib/doh.c
index de0c902..d6a2167 100644
--- a/lib/doh.c
+++ b/lib/doh.c
@@ -235,25 +235,6 @@
   p->dnstype = dnstype;
   Curl_dyn_init(&p->serverdoh, DYN_DOH_RESPONSE);
 
-  /* Note: this is code for sending the DoH request with GET but there's still
-     no logic that actually enables this. We should either add that ability or
-     yank out the GET code. Discuss! */
-  if(data->set.doh_get) {
-    char *b64;
-    size_t b64len;
-    result = Curl_base64url_encode(data, (char *)p->dohbuffer, p->dohlen,
-                                   &b64, &b64len);
-    if(result)
-      goto error;
-    nurl = aprintf("%s?dns=%s", url, b64);
-    free(b64);
-    if(!nurl) {
-      result = CURLE_OUT_OF_MEMORY;
-      goto error;
-    }
-    url = nurl;
-  }
-
   timeout_ms = Curl_timeleft(data, NULL, TRUE);
   if(timeout_ms <= 0) {
     result = CURLE_OPERATION_TIMEDOUT;
@@ -268,10 +249,8 @@
     ERROR_CHECK_SETOPT(CURLOPT_URL, url);
     ERROR_CHECK_SETOPT(CURLOPT_WRITEFUNCTION, doh_write_cb);
     ERROR_CHECK_SETOPT(CURLOPT_WRITEDATA, resp);
-    if(!data->set.doh_get) {
-      ERROR_CHECK_SETOPT(CURLOPT_POSTFIELDS, p->dohbuffer);
-      ERROR_CHECK_SETOPT(CURLOPT_POSTFIELDSIZE, (long)p->dohlen);
-    }
+    ERROR_CHECK_SETOPT(CURLOPT_POSTFIELDS, p->dohbuffer);
+    ERROR_CHECK_SETOPT(CURLOPT_POSTFIELDSIZE, (long)p->dohlen);
     ERROR_CHECK_SETOPT(CURLOPT_HTTPHEADER, headers);
 #ifdef USE_NGHTTP2
     ERROR_CHECK_SETOPT(CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_2TLS);
diff --git a/lib/easy.c b/lib/easy.c
index 588b1fb..2aca938 100644
--- a/lib/easy.c
+++ b/lib/easy.c
@@ -117,7 +117,7 @@
 curl_strdup_callback Curl_cstrdup = (curl_strdup_callback)system_strdup;
 curl_calloc_callback Curl_ccalloc = (curl_calloc_callback)calloc;
 #if defined(WIN32) && defined(UNICODE)
-curl_wcsdup_callback Curl_cwcsdup = (curl_wcsdup_callback)_wcsdup;
+curl_wcsdup_callback Curl_cwcsdup = Curl_wcsdup;
 #endif
 
 #if defined(_MSC_VER) && defined(_DLL) && !defined(__POCC__)
diff --git a/lib/easyoptions.c b/lib/easyoptions.c
index 4e65e35..b6131d4 100644
--- a/lib/easyoptions.c
+++ b/lib/easyoptions.c
@@ -165,6 +165,7 @@
   {"MAXCONNECTS", CURLOPT_MAXCONNECTS, CURLOT_LONG, 0},
   {"MAXFILESIZE", CURLOPT_MAXFILESIZE, CURLOT_LONG, 0},
   {"MAXFILESIZE_LARGE", CURLOPT_MAXFILESIZE_LARGE, CURLOT_OFF_T, 0},
+  {"MAXLIFETIME_CONN", CURLOPT_MAXLIFETIME_CONN, CURLOT_LONG, 0},
   {"MAXREDIRS", CURLOPT_MAXREDIRS, CURLOT_LONG, 0},
   {"MAX_RECV_SPEED_LARGE", CURLOPT_MAX_RECV_SPEED_LARGE, CURLOT_OFF_T, 0},
   {"MAX_SEND_SPEED_LARGE", CURLOPT_MAX_SEND_SPEED_LARGE, CURLOT_OFF_T, 0},
@@ -192,6 +193,8 @@
   {"POSTQUOTE", CURLOPT_POSTQUOTE, CURLOT_SLIST, 0},
   {"POSTREDIR", CURLOPT_POSTREDIR, CURLOT_VALUES, 0},
   {"PREQUOTE", CURLOPT_PREQUOTE, CURLOT_SLIST, 0},
+  {"PREREQDATA", CURLOPT_PREREQDATA, CURLOT_CBPTR, 0},
+  {"PREREQFUNCTION", CURLOPT_PREREQFUNCTION, CURLOT_FUNCTION, 0},
   {"PRE_PROXY", CURLOPT_PRE_PROXY, CURLOT_STRING, 0},
   {"PRIVATE", CURLOPT_PRIVATE, CURLOT_OBJECT, 0},
   {"PROGRESSDATA", CURLOPT_XFERINFODATA, CURLOT_CBPTR, CURLOT_FLAG_ALIAS},
@@ -271,6 +274,8 @@
   {"SSH_COMPRESSION", CURLOPT_SSH_COMPRESSION, CURLOT_LONG, 0},
   {"SSH_HOST_PUBLIC_KEY_MD5", CURLOPT_SSH_HOST_PUBLIC_KEY_MD5,
    CURLOT_STRING, 0},
+  {"SSH_HOST_PUBLIC_KEY_SHA256", CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256,
+   CURLOT_STRING, 0},
   {"SSH_KEYDATA", CURLOPT_SSH_KEYDATA, CURLOT_CBPTR, 0},
   {"SSH_KEYFUNCTION", CURLOPT_SSH_KEYFUNCTION, CURLOT_FUNCTION, 0},
   {"SSH_KNOWNHOSTS", CURLOPT_SSH_KNOWNHOSTS, CURLOT_STRING, 0},
@@ -354,6 +359,6 @@
  */
 int Curl_easyopts_check(void)
 {
-  return ((CURLOPT_LASTENTRY%10000) != (310 + 1));
+  return ((CURLOPT_LASTENTRY%10000) != (314 + 1));
 }
 #endif
diff --git a/lib/ftp.c b/lib/ftp.c
index 1a699de..a8d209e 100644
--- a/lib/ftp.c
+++ b/lib/ftp.c
@@ -876,11 +876,6 @@
 
     ftpc->count2 = 0; /* count2 counts failed CWDs */
 
-    /* count3 is set to allow a MKD to fail once. In the case when first CWD
-       fails and then MKD fails (due to another session raced it to create the
-       dir) this then allows for a second try to CWD to it */
-    ftpc->count3 = (data->set.ftp_create_missing_dirs == 2)?1:0;
-
     if(conn->bits.reuse && ftpc->entrypath &&
        /* no need to go to entrypath when we have an absolute path */
        !(ftpc->dirdepth && ftpc->dirs[0][0] == '/')) {
@@ -2681,9 +2676,12 @@
     /* we have now received a full FTP server response */
     switch(ftpc->state) {
     case FTP_WAIT220:
-      if(ftpcode == 230)
-        /* 230 User logged in - already! */
-        return ftp_state_user_resp(data, ftpcode, ftpc->state);
+      if(ftpcode == 230) {
+        /* 230 User logged in - already! Take as 220 if TLS required. */
+        if(data->set.use_ssl <= CURLUSESSL_TRY ||
+           conn->bits.ftp_use_control_ssl)
+          return ftp_state_user_resp(data, ftpcode, ftpc->state);
+      }
       else if(ftpcode != 220) {
         failf(data, "Got a %03d ftp-server response when 220 was expected",
               ftpcode);
@@ -2740,6 +2738,9 @@
     case FTP_AUTH:
       /* we have gotten the response to a previous AUTH command */
 
+      if(pp->cache_size)
+        return CURLE_WEIRD_SERVER_REPLY; /* Forbid pipelining in response. */
+
       /* RFC2228 (page 5) says:
        *
        * If the server is willing to accept the named security mechanism,
@@ -2996,6 +2997,12 @@
            ftpc->cwdcount && !ftpc->count2) {
           /* try making it */
           ftpc->count2++; /* counter to prevent CWD-MKD loops */
+
+          /* count3 is set to allow MKD to fail once per dir. In the case when
+          CWD fails and then MKD fails (due to another session raced it to
+          create the dir) this then allows for a second try to CWD to it. */
+          ftpc->count3 = (data->set.ftp_create_missing_dirs == 2) ? 1 : 0;
+
           result = Curl_pp_sendf(data, &ftpc->pp, "MKD %s",
                                  ftpc->dirs[ftpc->cwdcount - 1]);
           if(!result)
diff --git a/lib/hostasyn.c b/lib/hostasyn.c
index b25de1d..f7d99ce 100644
--- a/lib/hostasyn.c
+++ b/lib/hostasyn.c
@@ -50,7 +50,6 @@
 #include "hostip.h"
 #include "hash.h"
 #include "share.h"
-#include "strerror.h"
 #include "url.h"
 #include "curl_memory.h"
 /* The last #include file should be: */
diff --git a/lib/hostip.c b/lib/hostip.c
index 30ce509..c33c9af 100644
--- a/lib/hostip.c
+++ b/lib/hostip.c
@@ -56,7 +56,6 @@
 #include "hash.h"
 #include "rand.h"
 #include "share.h"
-#include "strerror.h"
 #include "url.h"
 #include "inet_ntop.h"
 #include "inet_pton.h"
@@ -508,9 +507,6 @@
   struct sockaddr_in sa;
   unsigned int ipv4;
   unsigned short port16 = (unsigned short)(port & 0xffff);
-  ca = calloc(sizeof(struct Curl_addrinfo) + ss_size + hostlen + 1, 1);
-  if(!ca)
-    return NULL;
 
   /* memset to clear the sa.sin_zero field */
   memset(&sa, 0, sizeof(sa));
@@ -520,6 +516,9 @@
     return NULL;
   memcpy(&sa.sin_addr, &ipv4, sizeof(ipv4));
 
+  ca = calloc(sizeof(struct Curl_addrinfo) + ss_size + hostlen + 1, 1);
+  if(!ca)
+    return NULL;
   ca->ai_flags     = 0;
   ca->ai_family    = AF_INET;
   ca->ai_socktype  = SOCK_STREAM;
@@ -533,6 +532,36 @@
   return ca;
 }
 
+#ifdef ENABLE_IPV6
+/*
+ * Curl_ipv6works() returns TRUE if IPv6 seems to work.
+ */
+bool Curl_ipv6works(struct Curl_easy *data)
+{
+  if(data) {
+    /* the nature of most system is that IPv6 status doesn't come and go
+       during a program's lifetime so we only probe the first time and then we
+       have the info kept for fast re-use */
+    DEBUGASSERT(data);
+    DEBUGASSERT(data->multi);
+    return data->multi->ipv6_works;
+  }
+  else {
+    int ipv6_works = -1;
+    /* probe to see if we have a working IPv6 stack */
+    curl_socket_t s = socket(PF_INET6, SOCK_DGRAM, 0);
+    if(s == CURL_SOCKET_BAD)
+      /* an IPv6 address was requested but we can't get/use one */
+      ipv6_works = 0;
+    else {
+      ipv6_works = 1;
+      sclose(s);
+    }
+    return (ipv6_works>0)?TRUE:FALSE;
+  }
+}
+#endif /* ENABLE_IPV6 */
+
 /*
  * Curl_host_is_ipnum() returns TRUE if the given string is a numerical IPv4
  * (or IPv6 if supported) address.
@@ -674,9 +703,7 @@
 #endif /* !USE_RESOLVE_ON_IPS */
 
     if(!addr) {
-      /* Check what IP specifics the app has requested and if we can provide
-       * it. If not, bail out. */
-      if(!Curl_ipvalid(data, conn))
+      if(conn->ip_version == CURL_IPRESOLVE_V6 && !Curl_ipv6works(data))
         return CURLRESOLV_ERROR;
 
       if(strcasecompare(hostname, "localhost"))
@@ -684,6 +711,10 @@
       else if(allowDOH && data->set.doh && !ipnum)
         addr = Curl_doh(data, hostname, port, &respwait);
       else {
+        /* Check what IP specifics the app has requested and if we can provide
+         * it. If not, bail out. */
+        if(!Curl_ipvalid(data, conn))
+          return CURLRESOLV_ERROR;
         /* If Curl_getaddrinfo() returns NULL, 'respwait' might be set to a
            non-zero value indicating that we need to wait for the response to
            the resolve call */
diff --git a/lib/hostip.h b/lib/hostip.h
index 28f3b84..67a688a 100644
--- a/lib/hostip.h
+++ b/lib/hostip.h
@@ -97,7 +97,7 @@
                                    struct Curl_dns_entry **dnsentry,
                                    timediff_t timeoutms);
 
-#ifdef CURLRES_IPV6
+#ifdef ENABLE_IPV6
 /*
  * Curl_ipv6works() returns TRUE if IPv6 seems to work.
  */
diff --git a/lib/hostip4.c b/lib/hostip4.c
index ac92126..1fd7910 100644
--- a/lib/hostip4.c
+++ b/lib/hostip4.c
@@ -50,7 +50,6 @@
 #include "hostip.h"
 #include "hash.h"
 #include "share.h"
-#include "strerror.h"
 #include "url.h"
 /* The last 3 #include files should be in this order */
 #include "curl_printf.h"
diff --git a/lib/hostip6.c b/lib/hostip6.c
index 943cdd2..c2d5f08 100644
--- a/lib/hostip6.c
+++ b/lib/hostip6.c
@@ -50,7 +50,6 @@
 #include "hostip.h"
 #include "hash.h"
 #include "share.h"
-#include "strerror.h"
 #include "url.h"
 #include "inet_pton.h"
 #include "connect.h"
@@ -60,34 +59,6 @@
 #include "memdebug.h"
 
 /*
- * Curl_ipv6works() returns TRUE if IPv6 seems to work.
- */
-bool Curl_ipv6works(struct Curl_easy *data)
-{
-  if(data) {
-    /* the nature of most system is that IPv6 status doesn't come and go
-       during a program's lifetime so we only probe the first time and then we
-       have the info kept for fast re-use */
-    DEBUGASSERT(data);
-    DEBUGASSERT(data->multi);
-    return data->multi->ipv6_works;
-  }
-  else {
-    int ipv6_works = -1;
-    /* probe to see if we have a working IPv6 stack */
-    curl_socket_t s = socket(PF_INET6, SOCK_DGRAM, 0);
-    if(s == CURL_SOCKET_BAD)
-      /* an IPv6 address was requested but we can't get/use one */
-      ipv6_works = 0;
-    else {
-      ipv6_works = 1;
-      sclose(s);
-    }
-    return (ipv6_works>0)?TRUE:FALSE;
-  }
-}
-
-/*
  * Curl_ipvalid() checks what CURL_IPRESOLVE_* requirements that might've
  * been set and returns TRUE if they are OK.
  */
diff --git a/lib/hostsyn.c b/lib/hostsyn.c
index 550b43a..c00c274 100644
--- a/lib/hostsyn.c
+++ b/lib/hostsyn.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -50,7 +50,6 @@
 #include "hostip.h"
 #include "hash.h"
 #include "share.h"
-#include "strerror.h"
 #include "url.h"
 #include "curl_memory.h"
 /* The last #include file should be: */
diff --git a/lib/hsts.c b/lib/hsts.c
index 0d5a584..052dc11 100644
--- a/lib/hsts.c
+++ b/lib/hsts.c
@@ -49,6 +49,7 @@
 #define MAX_HSTS_HOSTLENSTR "256"
 #define MAX_HSTS_DATELEN 64
 #define MAX_HSTS_DATELENSTR "64"
+#define UNLIMITED "unlimited"
 
 #ifdef DEBUGBUILD
 /* to play well with debug builds, we can *set* a fixed time this will
@@ -283,13 +284,17 @@
   e.namelen = strlen(sts->host);
   e.includeSubDomains = sts->includeSubDomains;
 
-  result = Curl_gmtime((time_t)sts->expires, &stamp);
-  if(result)
-    return result;
+  if(sts->expires != TIME_T_MAX) {
+    result = Curl_gmtime((time_t)sts->expires, &stamp);
+    if(result)
+      return result;
 
-  msnprintf(e.expire, sizeof(e.expire), "%d%02d%02d %02d:%02d:%02d",
-            stamp.tm_year + 1900, stamp.tm_mon + 1, stamp.tm_mday,
-            stamp.tm_hour, stamp.tm_min, stamp.tm_sec);
+    msnprintf(e.expire, sizeof(e.expire), "%d%02d%02d %02d:%02d:%02d",
+              stamp.tm_year + 1900, stamp.tm_mon + 1, stamp.tm_mday,
+              stamp.tm_hour, stamp.tm_min, stamp.tm_sec);
+  }
+  else
+    strcpy(e.expire, UNLIMITED);
 
   sc = data->set.hsts_write(data, &e, i,
                             data->set.hsts_write_userp);
@@ -303,14 +308,18 @@
 static CURLcode hsts_out(struct stsentry *sts, FILE *fp)
 {
   struct tm stamp;
-  CURLcode result = Curl_gmtime((time_t)sts->expires, &stamp);
-  if(result)
-    return result;
-
-  fprintf(fp, "%s%s \"%d%02d%02d %02d:%02d:%02d\"\n",
-          sts->includeSubDomains ? ".": "", sts->host,
-          stamp.tm_year + 1900, stamp.tm_mon + 1, stamp.tm_mday,
-          stamp.tm_hour, stamp.tm_min, stamp.tm_sec);
+  if(sts->expires != TIME_T_MAX) {
+    CURLcode result = Curl_gmtime((time_t)sts->expires, &stamp);
+    if(result)
+      return result;
+    fprintf(fp, "%s%s \"%d%02d%02d %02d:%02d:%02d\"\n",
+            sts->includeSubDomains ? ".": "", sts->host,
+            stamp.tm_year + 1900, stamp.tm_mon + 1, stamp.tm_mday,
+            stamp.tm_hour, stamp.tm_min, stamp.tm_sec);
+  }
+  else
+    fprintf(fp, "%s%s \"%s\"\n",
+            sts->includeSubDomains ? ".": "", sts->host, UNLIMITED);
   return CURLE_OK;
 }
 
@@ -403,7 +412,8 @@
               "%" MAX_HSTS_HOSTLENSTR "s \"%" MAX_HSTS_DATELENSTR "[^\"]\"",
               host, date);
   if(2 == rc) {
-    time_t expires = Curl_getdate_capped(date);
+    time_t expires = strcmp(date, UNLIMITED) ? Curl_getdate_capped(date) :
+      TIME_T_MAX;
     CURLcode result;
     char *p = host;
     bool subdomain = FALSE;
@@ -456,7 +466,7 @@
           return result;
       }
       else if(sc == CURLSTS_FAIL)
-        return CURLE_BAD_FUNCTION_ARGUMENT;
+        return CURLE_ABORTED_BY_CALLBACK;
     } while(sc == CURLSTS_OK);
   }
   return CURLE_OK;
@@ -526,7 +536,9 @@
  */
 CURLcode Curl_hsts_loadcb(struct Curl_easy *data, struct hsts *h)
 {
-  return hsts_pull(data, h);
+  if(h)
+    return hsts_pull(data, h);
+  return CURLE_OK;
 }
 
 #endif /* CURL_DISABLE_HTTP || CURL_DISABLE_HSTS */
diff --git a/lib/hsts.h b/lib/hsts.h
index baa5828..653c053 100644
--- a/lib/hsts.h
+++ b/lib/hsts.h
@@ -59,7 +59,7 @@
                           struct hsts *h);
 #else
 #define Curl_hsts_cleanup(x)
-#define Curl_hsts_loadcb(x,y)
+#define Curl_hsts_loadcb(x,y) CURLE_OK
 #define Curl_hsts_save(x,y,z)
 #endif /* CURL_DISABLE_HTTP || CURL_DISABLE_HSTS */
 #endif /* HEADER_CURL_HSTS_H */
diff --git a/lib/http.c b/lib/http.c
index 05b971b..78ad10e 100644
--- a/lib/http.c
+++ b/lib/http.c
@@ -323,7 +323,7 @@
     pwd = data->state.aptr.passwd;
   }
 
-  out = aprintf("%s:%s", user, pwd ? pwd : "");
+  out = aprintf("%s:%s", user ? user : "", pwd ? pwd : "");
   if(!out)
     return CURLE_OUT_OF_MEMORY;
 
@@ -1669,8 +1669,8 @@
  * - if any server previously contacted to handle this request only supports
  * 1.0.
  */
-static bool use_http_1_1plus(const struct Curl_easy *data,
-                             const struct connectdata *conn)
+bool Curl_use_http_1_1plus(const struct Curl_easy *data,
+                           const struct connectdata *conn)
 {
   if((data->state.httpversion == 10) || (conn->httpversion == 10))
     return FALSE;
@@ -1696,7 +1696,7 @@
     return "2";
 #endif
 
-  if(use_http_1_1plus(data, conn))
+  if(Curl_use_http_1_1plus(data, conn))
     return "1.1";
 
   return "1.0";
@@ -1711,7 +1711,7 @@
   CURLcode result = CURLE_OK;
   data->state.expect100header = FALSE; /* default to false unless it is set
                                           to TRUE below */
-  if(!data->state.disableexpect && use_http_1_1plus(data, conn) &&
+  if(!data->state.disableexpect && Curl_use_http_1_1plus(data, conn) &&
      (conn->httpversion < 20)) {
     /* if not doing HTTP 1.0 or version 2, or disabled explicitly, we add an
        Expect: 100-continue to the headers which actually speeds up post
@@ -2348,7 +2348,7 @@
       if(conn->bits.authneg)
         /* don't enable chunked during auth neg */
         ;
-      else if(use_http_1_1plus(data, conn)) {
+      else if(Curl_use_http_1_1plus(data, conn)) {
         if(conn->httpversion < 20)
           /* HTTP, upload, unknown file size and not HTTP 1.0 */
           data->req.upload_chunky = TRUE;
@@ -2711,14 +2711,16 @@
     int count = 0;
 
     if(data->cookies && data->state.cookie_engine) {
+      const char *host = data->state.aptr.cookiehost ?
+        data->state.aptr.cookiehost : conn->host.name;
+      const bool secure_context =
+        conn->handler->protocol&CURLPROTO_HTTPS ||
+        strcasecompare("localhost", host) ||
+        !strcmp(host, "127.0.0.1") ||
+        !strcmp(host, "[::1]") ? TRUE : FALSE;
       Curl_share_lock(data, CURL_LOCK_DATA_COOKIE, CURL_LOCK_ACCESS_SINGLE);
-      co = Curl_cookie_getlist(data->cookies,
-                               data->state.aptr.cookiehost?
-                               data->state.aptr.cookiehost:
-                               conn->host.name,
-                               data->state.up.path,
-                               (conn->handler->protocol&CURLPROTO_HTTPS)?
-                               TRUE:FALSE);
+      co = Curl_cookie_getlist(data->cookies, host, data->state.up.path,
+                               secure_context);
       Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
     }
     if(co) {
@@ -2900,7 +2902,7 @@
                               bool *done)
 {
   struct SingleRequest *k = &data->req;
-  DEBUGASSERT(conn->handler->protocol&(PROTO_FAMILY_HTTP|CURLPROTO_RTSP));
+
   if(data->req.newurl) {
     if(conn->bits.close) {
       /* Abort after the headers if "follow Location" is set
@@ -3401,17 +3403,8 @@
                                     NULL, 10, &contentlength);
 
     if(offt == CURL_OFFT_OK) {
-      if(data->set.max_filesize &&
-         contentlength > data->set.max_filesize) {
-        failf(data, "Maximum file size exceeded");
-        return CURLE_FILESIZE_EXCEEDED;
-      }
       k->size = contentlength;
       k->maxdownload = k->size;
-      /* we set the progress download size already at this point
-         just to make it easier for apps/callbacks to extract this
-         info as soon as possible */
-      Curl_pgrsSetDownloadSize(data, k->size);
     }
     else if(offt == CURL_OFFT_FLOW) {
       /* out of range */
@@ -3502,6 +3495,12 @@
                                          TRUE);
     if(result)
       return result;
+    if(!k->chunk) {
+      /* if this isn't chunked, only close can signal the end of this transfer
+         as Content-Length is said not to be trusted for transfer-encoding! */
+      connclose(conn, "HTTP/1.1 transfer-encoding without chunks");
+      k->ignore_cl = TRUE;
+    }
   }
   else if(!k->http_bodyless && checkprefix("Content-Encoding:", headp) &&
           data->set.str[STRING_ENCODING]) {
@@ -3564,18 +3563,21 @@
 #if !defined(CURL_DISABLE_COOKIES)
   else if(data->cookies && data->state.cookie_engine &&
           checkprefix("Set-Cookie:", headp)) {
+    /* If there is a custom-set Host: name, use it here, or else use real peer
+       host name. */
+    const char *host = data->state.aptr.cookiehost?
+      data->state.aptr.cookiehost:conn->host.name;
+    const bool secure_context =
+      conn->handler->protocol&CURLPROTO_HTTPS ||
+      strcasecompare("localhost", host) ||
+      !strcmp(host, "127.0.0.1") ||
+      !strcmp(host, "[::1]") ? TRUE : FALSE;
+
     Curl_share_lock(data, CURL_LOCK_DATA_COOKIE,
                     CURL_LOCK_ACCESS_SINGLE);
-    Curl_cookie_add(data,
-                    data->cookies, TRUE, FALSE,
-                    headp + strlen("Set-Cookie:"),
-                    /* If there is a custom-set Host: name, use it
-                       here, or else use real peer host name. */
-                    data->state.aptr.cookiehost?
-                    data->state.aptr.cookiehost:conn->host.name,
-                    data->state.up.path,
-                    (conn->handler->protocol&CURLPROTO_HTTPS)?
-                    TRUE:FALSE);
+    Curl_cookie_add(data, data->cookies, TRUE, FALSE,
+                    headp + strlen("Set-Cookie:"), host,
+                    data->state.up.path, secure_context);
     Curl_share_unlock(data, CURL_LOCK_DATA_COOKIE);
   }
 #endif
@@ -3771,6 +3773,29 @@
   return CURLE_OK;
 }
 
+/* Content-Length must be ignored if any Transfer-Encoding is present in the
+   response. Refer to RFC 7230 section 3.3.3 and RFC2616 section 4.4.  This is
+   figured out here after all headers have been received but before the final
+   call to the user's header callback, so that a valid content length can be
+   retrieved by the user in the final call. */
+CURLcode Curl_http_size(struct Curl_easy *data)
+{
+  struct SingleRequest *k = &data->req;
+  if(data->req.ignore_cl || k->chunk) {
+    k->size = k->maxdownload = -1;
+  }
+  else if(k->size != -1) {
+    if(data->set.max_filesize &&
+       k->size > data->set.max_filesize) {
+      failf(data, "Maximum file size exceeded");
+      return CURLE_FILESIZE_EXCEEDED;
+    }
+    Curl_pgrsSetDownloadSize(data, k->size);
+    k->maxdownload = k->size;
+  }
+  return CURLE_OK;
+}
+
 /*
  * Read any HTTP header lines from the server and pass them to the client app.
  */
@@ -3965,6 +3990,12 @@
         }
       }
 
+      if(!k->header) {
+        result = Curl_http_size(data);
+        if(result)
+          return result;
+      }
+
       /* At this point we have some idea about the fate of the connection.
          If we are closing the connection it may result auth failure. */
 #if defined(USE_NTLM)
@@ -4121,31 +4152,6 @@
              reason */
           *stop_reading = TRUE;
 #endif
-        else {
-          /* If we know the expected size of this document, we set the
-             maximum download size to the size of the expected
-             document or else, we won't know when to stop reading!
-
-             Note that we set the download maximum even if we read a
-             "Connection: close" header, to make sure that
-             "Content-Length: 0" still prevents us from attempting to
-             read the (missing) response-body.
-          */
-          /* According to RFC2616 section 4.4, we MUST ignore
-             Content-Length: headers if we are now receiving data
-             using chunked Transfer-Encoding.
-          */
-          if(k->chunk)
-            k->maxdownload = k->size = -1;
-        }
-        if(-1 != k->size) {
-          /* We do this operation even if no_body is true, since this
-             data might be retrieved later with curl_easy_getinfo()
-             and its CURLINFO_CONTENT_LENGTH_DOWNLOAD option. */
-
-          Curl_pgrsSetDownloadSize(data, k->size);
-          k->maxdownload = k->size;
-        }
 
         /* If max download size is *zero* (nothing) we already have
            nothing and can safely return ok now!  But for HTTP/2, we'd
@@ -4210,18 +4216,20 @@
          * https://tools.ietf.org/html/rfc7230#section-3.1.2
          *
          * The response code is always a three-digit number in HTTP as the spec
-         * says. We try to allow any number here, but we cannot make
+         * says. We allow any three-digit number here, but we cannot make
          * guarantees on future behaviors since it isn't within the protocol.
          */
         char separator;
         char twoorthree[2];
         int httpversion = 0;
+        char digit4 = 0;
         nc = sscanf(HEADER1,
-                    " HTTP/%1d.%1d%c%3d",
+                    " HTTP/%1d.%1d%c%3d%c",
                     &httpversion_major,
                     &httpversion,
                     &separator,
-                    &k->httpcode);
+                    &k->httpcode,
+                    &digit4);
 
         if(nc == 1 && httpversion_major >= 2 &&
            2 == sscanf(HEADER1, " HTTP/%1[23] %d", twoorthree, &k->httpcode)) {
@@ -4230,7 +4238,19 @@
           separator = ' ';
         }
 
-        if((nc == 4) && (' ' == separator)) {
+        /* There can only be a 4th response code digit stored in 'digit4' if
+           all the other fields were parsed and stored first, so nc is 5 when
+           digit4 a digit.
+
+           The sscanf() line above will also allow zero-prefixed and negative
+           numbers, so we check for that too here.
+        */
+        else if(ISDIGIT(digit4) || (k->httpcode < 100)) {
+          failf(data, "Unsupported response code in HTTP response");
+          return CURLE_UNSUPPORTED_PROTOCOL;
+        }
+
+        if((nc >= 4) && (' ' == separator)) {
           httpversion += 10 * httpversion_major;
           switch(httpversion) {
           case 10:
diff --git a/lib/http.h b/lib/http.h
index bce1715..cb5b56f 100644
--- a/lib/http.h
+++ b/lib/http.h
@@ -99,6 +99,8 @@
                         const char **teep);
 CURLcode Curl_http_bodysend(struct Curl_easy *data, struct connectdata *conn,
                             struct dynbuf *r, Curl_HttpReq httpreq);
+bool Curl_use_http_1_1plus(const struct Curl_easy *data,
+                           const struct connectdata *conn);
 #ifndef CURL_DISABLE_COOKIES
 CURLcode Curl_http_cookies(struct Curl_easy *data,
                            struct connectdata *conn,
@@ -287,6 +289,8 @@
 #endif
 };
 
+CURLcode Curl_http_size(struct Curl_easy *data);
+
 CURLcode Curl_http_readwrite_headers(struct Curl_easy *data,
                                      struct connectdata *conn,
                                      ssize_t *nread,
diff --git a/lib/http2.c b/lib/http2.c
index 60e0143..992fbbb 100644
--- a/lib/http2.c
+++ b/lib/http2.c
@@ -100,6 +100,7 @@
   const struct http_conn *c = &conn->proto.httpc;
   struct SingleRequest *k = &data->req;
   int bitmap = GETSOCK_BLANK;
+  struct HTTP *stream = data->req.p.http;
 
   sock[0] = conn->sock[FIRSTSOCKET];
 
@@ -108,9 +109,13 @@
        frame so we should always be ready for one */
     bitmap |= GETSOCK_READSOCK(FIRSTSOCKET);
 
-  /* we're still uploading or the HTTP/2 layer wants to send data */
-  if(((k->keepon & (KEEP_SEND|KEEP_SEND_PAUSE)) == KEEP_SEND) ||
-     nghttp2_session_want_write(c->h2))
+  /* we're (still uploading OR the HTTP/2 layer wants to send data) AND
+     there's a window to send data in */
+  if((((k->keepon & (KEEP_SEND|KEEP_SEND_PAUSE)) == KEEP_SEND) ||
+      nghttp2_session_want_write(c->h2)) &&
+     (nghttp2_session_get_remote_window_size(c->h2) &&
+      nghttp2_session_get_stream_remote_window_size(c->h2,
+                                                    stream->stream_id)))
     bitmap |= GETSOCK_WRITESOCK(FIRSTSOCKET);
 
   return bitmap;
@@ -763,6 +768,7 @@
            ncopy);
     stream->nread_header_recvbuf += ncopy;
 
+    DEBUGASSERT(stream->mem);
     H2BUGF(infof(data_s, "Store %zu bytes headers from stream %u at %p",
                  ncopy, stream_id, stream->mem));
 
@@ -1624,10 +1630,6 @@
     return -1;
   }
 
-  if(stream->closed)
-    /* closed overrides paused */
-    return http2_handle_stream_close(conn, data, stream, err);
-
   /* Nullify here because we call nghttp2_session_send() and they
      might refer to the old buffer. */
   stream->upload_mem = NULL;
@@ -1956,8 +1958,19 @@
       nghttp2_session_resume_data(h2, stream->stream_id);
     }
 
-    H2BUGF(infof(data, "http2_send returns %zu for stream %u", len,
-                 stream->stream_id));
+#ifdef DEBUG_HTTP2
+    if(!len) {
+      infof(data, "http2_send: easy %p (stream %u) win %u/%u",
+            data, stream->stream_id,
+            nghttp2_session_get_remote_window_size(httpc->h2),
+            nghttp2_session_get_stream_remote_window_size(httpc->h2,
+                                                          stream->stream_id)
+        );
+
+    }
+    infof(data, "http2_send returns %zu for stream %u", len,
+          stream->stream_id);
+#endif
     return len;
   }
 
@@ -2218,6 +2231,16 @@
   Curl_dyn_init(&stream->header_recvbuf, DYN_H2_HEADERS);
   Curl_dyn_init(&stream->trailer_recvbuf, DYN_H2_TRAILERS);
 
+  stream->upload_left = 0;
+  stream->upload_mem = NULL;
+  stream->upload_len = 0;
+  stream->mem = data->state.buffer;
+  stream->len = data->set.buffer_size;
+
+  multi_connchanged(data->multi);
+  /* below this point only connection related inits are done, which only needs
+     to be done once per connection */
+
   if((conn->handler == &Curl_handler_http2_ssl) ||
      (conn->handler == &Curl_handler_http2))
     return CURLE_OK; /* already done */
@@ -2234,11 +2257,10 @@
   }
 
   infof(data, "Using HTTP2, server supports multiplexing");
-  stream->upload_left = 0;
-  stream->upload_mem = NULL;
-  stream->upload_len = 0;
-  stream->mem = data->state.buffer;
-  stream->len = data->set.buffer_size;
+
+  conn->bits.multiplex = TRUE; /* at least potentially multiplexed */
+  conn->httpversion = 20;
+  conn->bundle->multiuse = BUNDLE_MULTIPLEX;
 
   httpc->inbuflen = 0;
   httpc->nread_inbuf = 0;
@@ -2246,12 +2268,7 @@
   httpc->pause_stream_id = 0;
   httpc->drain_total = 0;
 
-  conn->bits.multiplex = TRUE; /* at least potentially multiplexed */
-  conn->httpversion = 20;
-  conn->bundle->multiuse = BUNDLE_MULTIPLEX;
-
   infof(data, "Connection state changed (HTTP/2 confirmed)");
-  multi_connchanged(data->multi);
 
   return CURLE_OK;
 }
@@ -2340,15 +2357,8 @@
 
   DEBUGASSERT(httpc->nread_inbuf == 0);
 
-  /* Good enough to call it an end once the remaining payload is copied to the
-   * connection buffer.
-   * Some servers (e.g. nghttpx v1.43.0) may fulfill stream 1 immediately
-   * following the protocol switch other than waiting for the client-side
-   * connection preface. If h2_process_pending_input is invoked here to parse
-   * the remaining payload, stream 1 would be marked as closed too early and
-   * thus ignored in http2_recv (following 252790c53).
-   * The logic in lib/http.c and lib/transfer.c guarantees a following
-   * http2_recv would be invoked very soon. */
+  if(-1 == h2_process_pending_input(data, httpc, &result))
+    return CURLE_HTTP2;
 
   return CURLE_OK;
 }
diff --git a/lib/http_aws_sigv4.c b/lib/http_aws_sigv4.c
index 02663ab..cbbecb7 100644
--- a/lib/http_aws_sigv4.c
+++ b/lib/http_aws_sigv4.c
@@ -92,6 +92,7 @@
   char *signed_headers = NULL;
   Curl_HttpReq httpreq;
   const char *method;
+  size_t post_data_len;
   const char *post_data = data->set.postfields ? data->set.postfields : "";
   unsigned char sha_hash[32];
   char sha_hex[65];
@@ -281,8 +282,12 @@
     goto fail;
   }
 
+  if(data->set.postfieldsize < 0)
+    post_data_len = strlen(post_data);
+  else
+    post_data_len = (size_t)data->set.postfieldsize;
   Curl_sha256it(sha_hash,
-                (const unsigned char *) post_data, strlen(post_data));
+                (const unsigned char *) post_data, post_data_len);
   sha256_to_hex(sha_hex, sha_hash, sizeof(sha_hex));
 
   Curl_http_method(data, conn, &method, &httpreq);
@@ -321,7 +326,7 @@
 
   /*
    * Google allow to use rsa key instead of HMAC, so this code might change
-   * In the furure, but for now we support only HMAC version
+   * In the future, but for now we support only HMAC version
    */
   str_to_sign = curl_maprintf("%s4-HMAC-SHA256\n" /* Algorithm */
                               "%s\n" /* RequestDateTime */
diff --git a/lib/http_ntlm.c b/lib/http_ntlm.c
index 627a11c..a6526db 100644
--- a/lib/http_ntlm.c
+++ b/lib/http_ntlm.c
@@ -198,6 +198,12 @@
 #endif
 
   Curl_bufref_init(&ntlmmsg);
+
+  /* connection is already authenticated, don't send a header in future
+   * requests so go directly to NTLMSTATE_LAST */
+  if(*state == NTLMSTATE_TYPE3)
+    *state = NTLMSTATE_LAST;
+
   switch(*state) {
   case NTLMSTATE_TYPE1:
   default: /* for the weird cases we (re)start here */
@@ -246,11 +252,6 @@
     }
     break;
 
-  case NTLMSTATE_TYPE3:
-    /* connection is already authenticated,
-     * don't send a header in future requests */
-    *state = NTLMSTATE_LAST;
-    /* FALLTHROUGH */
   case NTLMSTATE_LAST:
     Curl_safefree(*allocuserpwd);
     authp->done = TRUE;
diff --git a/lib/http_proxy.c b/lib/http_proxy.c
index a7f7aa3..fc050a0 100644
--- a/lib/http_proxy.c
+++ b/lib/http_proxy.c
@@ -148,7 +148,7 @@
   DEBUGASSERT(conn->connect_state);
   http = &conn->connect_state->http_proxy;
 
-  if(http->sending)
+  if(http->sending == HTTPSEND_REQUEST)
     return GETSOCK_WRITESOCK(0);
 
   return GETSOCK_READSOCK(0);
@@ -207,9 +207,15 @@
     Curl_dyn_free(&s->rcvbuf);
     Curl_dyn_free(&s->req);
 
-    /* retore the protocol pointer */
+    /* restore the protocol pointer */
     data->req.p.http = s->prot_save;
     s->prot_save = NULL;
+    data->info.httpcode = 0; /* clear it as it might've been used for the
+                                proxy */
+    data->req.ignorebody = FALSE;
+#ifdef USE_HYPER
+    data->state.hconnect = FALSE;
+#endif
     infof(data, "CONNECT phase completed!");
   }
 }
@@ -284,8 +290,7 @@
         /* This only happens if we've looped here due to authentication
            reasons, and we don't really use the newly cloned URL here
            then. Just free() it. */
-      free(data->req.newurl);
-      data->req.newurl = NULL;
+      Curl_safefree(data->req.newurl);
 
       /* initialize send-buffer */
       Curl_dyn_init(req, DYN_HTTP_REQUEST);
@@ -300,32 +305,27 @@
                                      hostheader, TRUE);
 
       if(!result) {
-        const char *proxyconn = "";
-        const char *useragent = "";
         const char *httpv =
           (conn->http_proxy.proxytype == CURLPROXY_HTTP_1_0) ? "1.0" : "1.1";
 
-        if(!Curl_checkProxyheaders(data, conn, "Proxy-Connection"))
-          proxyconn = "Proxy-Connection: Keep-Alive\r\n";
-
-        if(!Curl_checkProxyheaders(data, conn, "User-Agent") &&
-           data->set.str[STRING_USERAGENT])
-          useragent = data->state.aptr.uagent;
-
         result =
           Curl_dyn_addf(req,
                         "CONNECT %s HTTP/%s\r\n"
                         "%s"  /* Host: */
-                        "%s"  /* Proxy-Authorization */
-                        "%s"  /* User-Agent */
-                        "%s", /* Proxy-Connection */
+                        "%s", /* Proxy-Authorization */
                         hostheader,
                         httpv,
                         host?host:"",
                         data->state.aptr.proxyuserpwd?
-                        data->state.aptr.proxyuserpwd:"",
-                        useragent,
-                        proxyconn);
+                        data->state.aptr.proxyuserpwd:"");
+
+        if(!result && !Curl_checkProxyheaders(data, conn, "User-Agent") &&
+           data->set.str[STRING_USERAGENT])
+          result = Curl_dyn_addf(req, "User-Agent: %s\r\n",
+                                 data->set.str[STRING_USERAGENT]);
+
+        if(!result && !Curl_checkProxyheaders(data, conn, "Proxy-Connection"))
+          result = Curl_dyn_add(req, "Proxy-Connection: Keep-Alive\r\n");
 
         if(!result)
           result = Curl_add_custom_headers(data, TRUE, req);
@@ -390,6 +390,7 @@
         k->upload_fromhere += bytes_written;
         return result;
       }
+      http->sending = HTTPSEND_NADA;
       /* if nothing left to send, continue */
     }
     { /* READING RESPONSE PHASE */
@@ -739,6 +740,7 @@
       io = hyper_io_new();
       if(!io) {
         failf(data, "Couldn't create hyper IO");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
       /* tell Hyper how to read/write network data */
@@ -754,6 +756,7 @@
         h->exec = hyper_executor_new();
         if(!h->exec) {
           failf(data, "Couldn't create hyper executor");
+          result = CURLE_OUT_OF_MEMORY;
           goto error;
         }
       }
@@ -761,6 +764,7 @@
       options = hyper_clientconn_options_new();
       if(!options) {
         failf(data, "Couldn't create hyper client options");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
 
@@ -771,6 +775,7 @@
       handshake = hyper_clientconn_handshake(io, options);
       if(!handshake) {
         failf(data, "Couldn't create hyper client handshake");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
       io = NULL;
@@ -778,6 +783,7 @@
 
       if(HYPERE_OK != hyper_executor_push(h->exec, handshake)) {
         failf(data, "Couldn't hyper_executor_push the handshake");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
       handshake = NULL; /* ownership passed on */
@@ -785,6 +791,7 @@
       task = hyper_executor_poll(h->exec);
       if(!task) {
         failf(data, "Couldn't hyper_executor_poll the handshake");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
 
@@ -793,14 +800,24 @@
       req = hyper_request_new();
       if(!req) {
         failf(data, "Couldn't hyper_request_new");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
       if(hyper_request_set_method(req, (uint8_t *)"CONNECT",
                                   strlen("CONNECT"))) {
         failf(data, "error setting method");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
 
+      infof(data, "Establish HTTP proxy tunnel to %s:%d",
+            hostname, remote_port);
+
+        /* This only happens if we've looped here due to authentication
+           reasons, and we don't really use the newly cloned URL here
+           then. Just free() it. */
+      Curl_safefree(data->req.newurl);
+
       result = CONNECT_host(data, conn, hostname, remote_port,
                             &hostheader, &host);
       if(result)
@@ -810,6 +827,16 @@
                                strlen(hostheader))) {
         failf(data, "error setting path");
         result = CURLE_OUT_OF_MEMORY;
+        goto error;
+      }
+      if(data->set.verbose) {
+        char *se = aprintf("CONNECT %s HTTP/1.1\r\n", hostheader);
+        if(!se) {
+          result = CURLE_OUT_OF_MEMORY;
+          goto error;
+        }
+        Curl_debug(data, CURLINFO_HEADER_OUT, se, strlen(se));
+        free(se);
       }
       /* Setup the proxy-authorization header, if any */
       result = Curl_http_output_auth(data, conn, "CONNECT", HTTPREQ_GET,
@@ -823,40 +850,65 @@
          (HYPERE_OK != hyper_request_set_version(req,
                                                  HYPER_HTTP_VERSION_1_0))) {
         failf(data, "error setting HTTP version");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
 
       headers = hyper_request_headers(req);
       if(!headers) {
         failf(data, "hyper_request_headers");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
-      if(host && Curl_hyper_header(data, headers, host))
-        goto error;
-      Curl_safefree(host);
+      if(host) {
+        result = Curl_hyper_header(data, headers, host);
+        if(result)
+          goto error;
+        Curl_safefree(host);
+      }
 
-      if(data->state.aptr.proxyuserpwd &&
-         Curl_hyper_header(data, headers, data->state.aptr.proxyuserpwd))
-        goto error;
+      if(data->state.aptr.proxyuserpwd) {
+        result = Curl_hyper_header(data, headers,
+                                   data->state.aptr.proxyuserpwd);
+        if(result)
+          goto error;
+      }
 
-      if(data->set.str[STRING_USERAGENT] &&
-         *data->set.str[STRING_USERAGENT] &&
-         data->state.aptr.uagent &&
-         Curl_hyper_header(data, headers, data->state.aptr.uagent))
-        goto error;
+      if(!Curl_checkProxyheaders(data, conn, "User-Agent") &&
+         data->set.str[STRING_USERAGENT]) {
+        struct dynbuf ua;
+        Curl_dyn_init(&ua, DYN_HTTP_REQUEST);
+        result = Curl_dyn_addf(&ua, "User-Agent: %s\r\n",
+                               data->set.str[STRING_USERAGENT]);
+        if(result)
+          goto error;
+        result = Curl_hyper_header(data, headers, Curl_dyn_ptr(&ua));
+        if(result)
+          goto error;
+        Curl_dyn_free(&ua);
+      }
 
-      if(!Curl_checkProxyheaders(data, conn, "Proxy-Connection") &&
-         Curl_hyper_header(data, headers, "Proxy-Connection: Keep-Alive"))
+      if(!Curl_checkProxyheaders(data, conn, "Proxy-Connection")) {
+        result = Curl_hyper_header(data, headers,
+                                   "Proxy-Connection: Keep-Alive");
+        if(result)
+          goto error;
+      }
+
+      result = Curl_add_custom_headers(data, TRUE, headers);
+      if(result)
         goto error;
 
       sendtask = hyper_clientconn_send(client, req);
       if(!sendtask) {
         failf(data, "hyper_clientconn_send");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
 
       if(HYPERE_OK != hyper_executor_push(h->exec, sendtask)) {
         failf(data, "Couldn't hyper_executor_push the send");
+        result = CURLE_OUT_OF_MEMORY;
         goto error;
       }
 
@@ -869,8 +921,11 @@
           if(error)
             hypererr = hyper_task_value(task);
           hyper_task_free(task);
-          if(error)
+          if(error) {
+            /* this could probably use a better error code? */
+            result = CURLE_OUT_OF_MEMORY;
             goto error;
+          }
         }
       } while(task);
       s->tunnel_state = TUNNEL_CONNECT;
@@ -898,15 +953,23 @@
         h->write_waker = NULL;
       }
     }
-      /* FALLTHROUGH */
+    break;
+
     default:
       break;
     }
+
+    /* If we are supposed to continue and request a new URL, which basically
+     * means the HTTP authentication is still going on so if the tunnel
+     * is complete we start over in INIT state */
+    if(data->req.newurl && (TUNNEL_COMPLETE == s->tunnel_state)) {
+      infof(data, "CONNECT request done, loop to make another");
+      connect_init(data, TRUE); /* reinit */
+    }
   } while(data->req.newurl);
 
   result = CURLE_OK;
   if(s->tunnel_state == TUNNEL_COMPLETE) {
-    data->info.httpproxycode = data->req.httpcode;
     if(data->info.httpproxycode/100 != 2) {
       if(conn->bits.close && data->req.newurl) {
         conn->bits.proxy_connect_closed = TRUE;
diff --git a/lib/imap.c b/lib/imap.c
index ab4d412..bea964f 100644
--- a/lib/imap.c
+++ b/lib/imap.c
@@ -74,11 +74,11 @@
 #include "strcase.h"
 #include "vtls/vtls.h"
 #include "connect.h"
-#include "strerror.h"
 #include "select.h"
 #include "multiif.h"
 #include "url.h"
 #include "strcase.h"
+#include "bufref.h"
 #include "curl_sasl.h"
 #include "warnless.h"
 
@@ -102,19 +102,19 @@
 static CURLcode imap_setup_connection(struct Curl_easy *data,
                                       struct connectdata *conn);
 static char *imap_atom(const char *str, bool escape_only);
-static CURLcode imap_sendf(struct Curl_easy *data,
-                           struct connectdata *conn, const char *fmt, ...);
+static CURLcode imap_sendf(struct Curl_easy *data, const char *fmt, ...);
 static CURLcode imap_parse_url_options(struct connectdata *conn);
 static CURLcode imap_parse_url_path(struct Curl_easy *data);
 static CURLcode imap_parse_custom_request(struct Curl_easy *data);
 static CURLcode imap_perform_authenticate(struct Curl_easy *data,
-                                          struct connectdata *conn,
                                           const char *mech,
-                                          const char *initresp);
+                                          const struct bufref *initresp);
 static CURLcode imap_continue_authenticate(struct Curl_easy *data,
-                                           struct connectdata *conn,
-                                           const char *resp);
-static void imap_get_message(char *buffer, char **outptr);
+                                           const char *mech,
+                                           const struct bufref *resp);
+static CURLcode imap_cancel_authenticate(struct Curl_easy *data,
+                                         const char *mech);
+static CURLcode imap_get_message(struct Curl_easy *data, struct bufref *out);
 
 /*
  * IMAP protocol handler.
@@ -181,12 +181,15 @@
 /* SASL parameters for the imap protocol */
 static const struct SASLproto saslimap = {
   "imap",                     /* The service name */
-  '+',                        /* Code received when continuation is expected */
-  IMAP_RESP_OK,               /* Code to receive upon authentication success */
-  0,                          /* Maximum initial response length (no max) */
   imap_perform_authenticate,  /* Send authentication command */
   imap_continue_authenticate, /* Send authentication continuation */
-  imap_get_message            /* Get SASL response message */
+  imap_cancel_authenticate,   /* Send authentication cancellation */
+  imap_get_message,           /* Get SASL response message */
+  0,                          /* No maximum initial response length */
+  '+',                        /* Code received when continuation is expected */
+  IMAP_RESP_OK,               /* Code to receive upon authentication success */
+  SASL_AUTH_DEFAULT,          /* Default mechanisms */
+  SASL_FLAG_BASE64            /* Configuration flags */
 };
 
 
@@ -294,6 +297,7 @@
            !strcasecompare(imap->custom, "EXPUNGE") &&
            !strcasecompare(imap->custom, "LSUB") &&
            !strcasecompare(imap->custom, "UID") &&
+           !strcasecompare(imap->custom, "GETQUOTAROOT") &&
            !strcasecompare(imap->custom, "NOOP")))
           return FALSE;
         break;
@@ -353,34 +357,32 @@
  *
  * Gets the authentication message from the response buffer.
  */
-static void imap_get_message(char *buffer, char **outptr)
+static CURLcode imap_get_message(struct Curl_easy *data, struct bufref *out)
 {
-  size_t len = strlen(buffer);
-  char *message = NULL;
+  char *message = data->state.buffer;
+  size_t len = strlen(message);
 
   if(len > 2) {
     /* Find the start of the message */
     len -= 2;
-    for(message = buffer + 2; *message == ' ' || *message == '\t';
-        message++, len--)
+    for(message += 2; *message == ' ' || *message == '\t'; message++, len--)
       ;
 
     /* Find the end of the message */
-    for(; len--;)
+    while(len--)
       if(message[len] != '\r' && message[len] != '\n' && message[len] != ' ' &&
          message[len] != '\t')
         break;
 
     /* Terminate the message */
-    if(++len) {
-      message[len] = '\0';
-    }
+    message[++len] = '\0';
+    Curl_bufref_set(out, message, len, NULL);
   }
   else
     /* junk input => zero length output */
-    message = &buffer[len];
+    Curl_bufref_set(out, "", 0, NULL);
 
-  *outptr = message;
+  return CURLE_OK;
 }
 
 /***********************************************************************
@@ -438,7 +440,7 @@
   imapc->tls_supported = FALSE;           /* Clear the TLS capability */
 
   /* Send the CAPABILITY command */
-  result = imap_sendf(data, conn, "CAPABILITY");
+  result = imap_sendf(data, "CAPABILITY");
 
   if(!result)
     state(data, IMAP_CAPABILITY);
@@ -452,11 +454,10 @@
  *
  * Sends the STARTTLS command to start the upgrade to TLS.
  */
-static CURLcode imap_perform_starttls(struct Curl_easy *data,
-                                      struct connectdata *conn)
+static CURLcode imap_perform_starttls(struct Curl_easy *data)
 {
   /* Send the STARTTLS command */
-  CURLcode result = imap_sendf(data, conn, "STARTTLS");
+  CURLcode result = imap_sendf(data, "STARTTLS");
 
   if(!result)
     state(data, IMAP_STARTTLS);
@@ -517,7 +518,7 @@
   passwd = imap_atom(conn->passwd, false);
 
   /* Send the LOGIN command */
-  result = imap_sendf(data, conn, "LOGIN %s %s", user ? user : "",
+  result = imap_sendf(data, "LOGIN %s %s", user ? user : "",
                       passwd ? passwd : "");
 
   free(user);
@@ -537,20 +538,19 @@
  * SASL authentication mechanism.
  */
 static CURLcode imap_perform_authenticate(struct Curl_easy *data,
-                                          struct connectdata *conn,
                                           const char *mech,
-                                          const char *initresp)
+                                          const struct bufref *initresp)
 {
   CURLcode result = CURLE_OK;
-  (void)data;
+  const char *ir = (const char *) Curl_bufref_ptr(initresp);
 
-  if(initresp) {
+  if(ir) {
     /* Send the AUTHENTICATE command with the initial response */
-    result = imap_sendf(data, conn, "AUTHENTICATE %s %s", mech, initresp);
+    result = imap_sendf(data, "AUTHENTICATE %s %s", mech, ir);
   }
   else {
     /* Send the AUTHENTICATE command */
-    result = imap_sendf(data, conn, "AUTHENTICATE %s", mech);
+    result = imap_sendf(data, "AUTHENTICATE %s", mech);
   }
 
   return result;
@@ -560,15 +560,34 @@
  *
  * imap_continue_authenticate()
  *
- * Sends SASL continuation data or cancellation.
+ * Sends SASL continuation data.
  */
 static CURLcode imap_continue_authenticate(struct Curl_easy *data,
-                                           struct connectdata *conn,
-                                           const char *resp)
+                                           const char *mech,
+                                           const struct bufref *resp)
 {
-  struct imap_conn *imapc = &conn->proto.imapc;
+  struct imap_conn *imapc = &data->conn->proto.imapc;
 
-  return Curl_pp_sendf(data, &imapc->pp, "%s", resp);
+  (void)mech;
+
+  return Curl_pp_sendf(data, &imapc->pp,
+                       "%s", (const char *) Curl_bufref_ptr(resp));
+}
+
+/***********************************************************************
+ *
+ * imap_cancel_authenticate()
+ *
+ * Sends SASL cancellation.
+ */
+static CURLcode imap_cancel_authenticate(struct Curl_easy *data,
+                                         const char *mech)
+{
+  struct imap_conn *imapc = &data->conn->proto.imapc;
+
+  (void)mech;
+
+  return Curl_pp_sendf(data, &imapc->pp, "*");
 }
 
 /***********************************************************************
@@ -595,8 +614,7 @@
   }
 
   /* Calculate the SASL login details */
-  result = Curl_sasl_start(&imapc->sasl, data, conn,
-                           imapc->ir_supported, &progress);
+  result = Curl_sasl_start(&imapc->sasl, data, imapc->ir_supported, &progress);
 
   if(!result) {
     if(progress == SASL_INPROGRESS)
@@ -623,12 +641,11 @@
 static CURLcode imap_perform_list(struct Curl_easy *data)
 {
   CURLcode result = CURLE_OK;
-  struct connectdata *conn = data->conn;
   struct IMAP *imap = data->req.p.imap;
 
   if(imap->custom)
     /* Send the custom request */
-    result = imap_sendf(data, conn, "%s%s", imap->custom,
+    result = imap_sendf(data, "%s%s", imap->custom,
                         imap->custom_params ? imap->custom_params : "");
   else {
     /* Make sure the mailbox is in the correct atom format if necessary */
@@ -638,7 +655,7 @@
       return CURLE_OUT_OF_MEMORY;
 
     /* Send the LIST command */
-    result = imap_sendf(data, conn, "LIST \"%s\" *", mailbox);
+    result = imap_sendf(data, "LIST \"%s\" *", mailbox);
 
     free(mailbox);
   }
@@ -679,7 +696,7 @@
     return CURLE_OUT_OF_MEMORY;
 
   /* Send the SELECT command */
-  result = imap_sendf(data, conn, "SELECT %s", mailbox);
+  result = imap_sendf(data, "SELECT %s", mailbox);
 
   free(mailbox);
 
@@ -695,8 +712,7 @@
  *
  * Sends a FETCH command to initiate the download of a message.
  */
-static CURLcode imap_perform_fetch(struct Curl_easy *data,
-                                   struct connectdata *conn)
+static CURLcode imap_perform_fetch(struct Curl_easy *data)
 {
   CURLcode result = CURLE_OK;
   struct IMAP *imap = data->req.p.imap;
@@ -705,21 +721,21 @@
 
     /* Send the FETCH command */
     if(imap->partial)
-      result = imap_sendf(data, conn, "UID FETCH %s BODY[%s]<%s>",
+      result = imap_sendf(data, "UID FETCH %s BODY[%s]<%s>",
                           imap->uid, imap->section ? imap->section : "",
                           imap->partial);
     else
-      result = imap_sendf(data, conn, "UID FETCH %s BODY[%s]",
+      result = imap_sendf(data, "UID FETCH %s BODY[%s]",
                           imap->uid, imap->section ? imap->section : "");
   }
   else if(imap->mindex) {
     /* Send the FETCH command */
     if(imap->partial)
-      result = imap_sendf(data, conn, "FETCH %s BODY[%s]<%s>",
+      result = imap_sendf(data, "FETCH %s BODY[%s]<%s>",
                           imap->mindex, imap->section ? imap->section : "",
                           imap->partial);
     else
-      result = imap_sendf(data, conn, "FETCH %s BODY[%s]",
+      result = imap_sendf(data, "FETCH %s BODY[%s]",
                           imap->mindex, imap->section ? imap->section : "");
   }
   else {
@@ -741,7 +757,6 @@
 static CURLcode imap_perform_append(struct Curl_easy *data)
 {
   CURLcode result = CURLE_OK;
-  struct connectdata *conn = data->conn;
   struct IMAP *imap = data->req.p.imap;
   char *mailbox;
 
@@ -792,7 +807,7 @@
     return CURLE_OUT_OF_MEMORY;
 
   /* Send the APPEND command */
-  result = imap_sendf(data, conn,
+  result = imap_sendf(data,
                       "APPEND %s (\\Seen) {%" CURL_FORMAT_CURL_OFF_T "}",
                       mailbox, data->state.infilesize);
 
@@ -810,8 +825,7 @@
  *
  * Sends a SEARCH command.
  */
-static CURLcode imap_perform_search(struct Curl_easy *data,
-                                    struct connectdata *conn)
+static CURLcode imap_perform_search(struct Curl_easy *data)
 {
   CURLcode result = CURLE_OK;
   struct IMAP *imap = data->req.p.imap;
@@ -823,7 +837,7 @@
   }
 
   /* Send the SEARCH command */
-  result = imap_sendf(data, conn, "SEARCH %s", imap->query);
+  result = imap_sendf(data, "SEARCH %s", imap->query);
 
   if(!result)
     state(data, IMAP_SEARCH);
@@ -837,11 +851,10 @@
  *
  * Performs the logout action prior to sclose() being called.
  */
-static CURLcode imap_perform_logout(struct Curl_easy *data,
-                                    struct connectdata *conn)
+static CURLcode imap_perform_logout(struct Curl_easy *data)
 {
   /* Send the LOGOUT command */
-  CURLcode result = imap_sendf(data, conn, "LOGOUT");
+  CURLcode result = imap_sendf(data, "LOGOUT");
 
   if(!result)
     state(data, IMAP_LOGOUT);
@@ -935,22 +948,18 @@
       line += wordlen;
     }
   }
-  else if(imapcode == IMAP_RESP_OK) {
-    if(data->set.use_ssl && !conn->ssl[FIRSTSOCKET].use) {
-      /* We don't have a SSL/TLS connection yet, but SSL is requested */
-      if(imapc->tls_supported)
-        /* Switch to TLS connection now */
-        result = imap_perform_starttls(data, conn);
-      else if(data->set.use_ssl == CURLUSESSL_TRY)
-        /* Fallback and carry on with authentication */
-        result = imap_perform_authentication(data, conn);
-      else {
-        failf(data, "STARTTLS not supported.");
-        result = CURLE_USE_SSL_FAILED;
-      }
+  else if(data->set.use_ssl && !conn->ssl[FIRSTSOCKET].use) {
+    /* PREAUTH is not compatible with STARTTLS. */
+    if(imapcode == IMAP_RESP_OK && imapc->tls_supported && !imapc->preauth) {
+      /* Switch to TLS connection now */
+      result = imap_perform_starttls(data);
     }
-    else
+    else if(data->set.use_ssl <= CURLUSESSL_TRY)
       result = imap_perform_authentication(data, conn);
+    else {
+      failf(data, "STARTTLS not available.");
+      result = CURLE_USE_SSL_FAILED;
+    }
   }
   else
     result = imap_perform_authentication(data, conn);
@@ -968,6 +977,10 @@
 
   (void)instate; /* no use for this yet */
 
+  /* Pipelining in response is forbidden. */
+  if(data->conn->proto.imapc.pp.cache_size)
+    return CURLE_WEIRD_SERVER_REPLY;
+
   if(imapcode != IMAP_RESP_OK) {
     if(data->set.use_ssl != CURLUSESSL_TRY) {
       failf(data, "STARTTLS denied");
@@ -994,7 +1007,7 @@
 
   (void)instate; /* no use for this yet */
 
-  result = Curl_sasl_continue(&imapc->sasl, data, conn, imapcode, &progress);
+  result = Curl_sasl_continue(&imapc->sasl, data, imapcode, &progress);
   if(!result)
     switch(progress) {
     case SASL_DONE:
@@ -1095,9 +1108,9 @@
       if(imap->custom)
         result = imap_perform_list(data);
       else if(imap->query)
-        result = imap_perform_search(data, conn);
+        result = imap_perform_search(data);
       else
-        result = imap_perform_fetch(data, conn);
+        result = imap_perform_fetch(data);
     }
   }
   else {
@@ -1442,7 +1455,7 @@
 
   /* Set the default preferred authentication type and mechanism */
   imapc->preftype = IMAP_TYPE_ANY;
-  Curl_sasl_init(&imapc->sasl, &saslimap);
+  Curl_sasl_init(&imapc->sasl, data, &saslimap);
 
   Curl_dyn_init(&imapc->dyn, DYN_IMAP_CMD);
   /* Initialise the pingpong layer */
@@ -1569,10 +1582,10 @@
     result = imap_perform_list(data);
   else if(!imap->custom && selected && (imap->uid || imap->mindex))
     /* FETCH from the same mailbox */
-    result = imap_perform_fetch(data, conn);
+    result = imap_perform_fetch(data);
   else if(!imap->custom && selected && imap->query)
     /* SEARCH the current mailbox */
-    result = imap_perform_search(data, conn);
+    result = imap_perform_search(data);
   else if(imap->mailbox && !selected &&
          (imap->custom || imap->uid || imap->mindex || imap->query))
     /* SELECT the mailbox */
@@ -1644,7 +1657,7 @@
   /* The IMAP session may or may not have been allocated/setup at this
      point! */
   if(!dead_connection && conn->bits.protoconnstart) {
-    if(!imap_perform_logout(data, conn))
+    if(!imap_perform_logout(data))
       (void)imap_block_statemach(data, conn, TRUE); /* ignore errors */
   }
 
@@ -1748,17 +1761,16 @@
  *
  * Designed to never block.
  */
-static CURLcode imap_sendf(struct Curl_easy *data,
-                           struct connectdata *conn, const char *fmt, ...)
+static CURLcode imap_sendf(struct Curl_easy *data, const char *fmt, ...)
 {
   CURLcode result = CURLE_OK;
-  struct imap_conn *imapc = &conn->proto.imapc;
+  struct imap_conn *imapc = &data->conn->proto.imapc;
 
   DEBUGASSERT(fmt);
 
   /* Calculate the tag based on the connection ID and command ID */
   msnprintf(imapc->resptag, sizeof(imapc->resptag), "%c%03d",
-            'A' + curlx_sltosi(conn->connection_id % 26),
+            'A' + curlx_sltosi(data->conn->connection_id % 26),
             (++imapc->cmdid)%1000);
 
   /* start with a blank buffer */
@@ -1912,8 +1924,6 @@
   struct imap_conn *imapc = &conn->proto.imapc;
   const char *ptr = conn->options;
 
-  imapc->sasl.resetprefs = TRUE;
-
   while(!result && ptr && *ptr) {
     const char *key = ptr;
     const char *value;
diff --git a/lib/krb5.c b/lib/krb5.c
index e25f526..afe425b 100644
--- a/lib/krb5.c
+++ b/lib/krb5.c
@@ -374,7 +374,7 @@
     }
 }
 
-static struct Curl_sec_client_mech Curl_krb5_client_mech = {
+static const struct Curl_sec_client_mech Curl_krb5_client_mech = {
   "GSSAPI",
   sizeof(gss_ctx_id_t),
   krb5_init,
@@ -684,7 +684,7 @@
   (void) data;
 
   if(!conn->mech)
-    /* not inititalized, return error */
+    /* not initialized, return error */
     return -1;
 
   DEBUGASSERT(level > PROT_NONE && level < PROT_LAST);
@@ -768,7 +768,7 @@
     }
   }
 
-  /* Now try to negiociate the protection level. */
+  /* Now try to negotiate the protection level. */
   code = ftp_send_command(data, "PROT %c", level_to_char(level));
 
   if(code < 0)
diff --git a/lib/libcurl.plist b/lib/libcurl.plist
index 575e28d..daf4856 100644
--- a/lib/libcurl.plist
+++ b/lib/libcurl.plist
@@ -15,7 +15,7 @@
 	<string>se.curl.libcurl</string>
 
 	<key>CFBundleVersion</key>
-	<string>7.78.0</string>
+	<string>7.80.0</string>
 
 	<key>CFBundleName</key>
 	<string>libcurl</string>
@@ -27,9 +27,9 @@
 	<string>????</string>
 
 	<key>CFBundleShortVersionString</key>
-	<string>libcurl 7.78.0</string>
+	<string>libcurl 7.80.0</string>
 
 	<key>CFBundleGetInfoString</key>
-	<string>libcurl.plist 7.78.0</string>
+	<string>libcurl.plist 7.80.0</string>
 </dict>
 </plist>
diff --git a/lib/libcurl.rc b/lib/libcurl.rc
index 3f7ae16..fde6c8c 100644
--- a/lib/libcurl.rc
+++ b/lib/libcurl.rc
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -51,7 +51,7 @@
       VALUE "OriginalFilename", "libcurl.dll\0"
       VALUE "ProductName",      "The curl library\0"
       VALUE "ProductVersion",   LIBCURL_VERSION "\0"
-      VALUE "LegalCopyright",   "\xa9 " LIBCURL_COPYRIGHT "\0"  /* a9: Copyright symbol */
+      VALUE "LegalCopyright",   "Copyright (C) " LIBCURL_COPYRIGHT "\0"
       VALUE "License",          "https://curl.se/docs/copyright.html\0"
     END
   END
diff --git a/lib/llist.c b/lib/llist.c
index e0ec739..e78da7d 100644
--- a/lib/llist.c
+++ b/lib/llist.c
@@ -106,9 +106,7 @@
       e->next->prev = NULL;
   }
   else {
-    if(!e->prev)
-      list->head = e->next;
-    else
+    if(e->prev)
       e->prev->next = e->next;
 
     if(!e->next)
diff --git a/lib/md4.c b/lib/md4.c
index c651ddf..d90e454 100644
--- a/lib/md4.c
+++ b/lib/md4.c
@@ -27,6 +27,7 @@
 #include "curl_md4.h"
 #include "warnless.h"
 
+
 #ifdef USE_OPENSSL
 #include <openssl/opensslconf.h>
 #if defined(OPENSSL_VERSION_MAJOR) && (OPENSSL_VERSION_MAJOR >= 3)
@@ -35,9 +36,20 @@
 #endif
 #endif /* USE_OPENSSL */
 
+#ifdef USE_WOLFSSL
+#include <wolfssl/options.h>
+#ifdef NO_MD4
+#define OPENSSL_NO_MD4
+#endif
+#endif
+
 #ifdef USE_MBEDTLS
-#include <mbedtls/config.h>
 #include <mbedtls/version.h>
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+#include <mbedtls/mbedtls_config.h>
+#else
+#include <mbedtls/config.h>
+#endif
 
 #if(MBEDTLS_VERSION_NUMBER >= 0x02070000)
   #define HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS
@@ -70,8 +82,9 @@
   md4_digest(ctx, MD4_DIGEST_SIZE, result);
 }
 
-#elif defined(USE_OPENSSL) && !defined(OPENSSL_NO_MD4)
-/* When OpenSSL is available we use the MD4-functions from OpenSSL */
+#elif (defined(USE_OPENSSL) || defined(USE_WOLFSSL)) && \
+      !defined(OPENSSL_NO_MD4)
+/* When OpenSSL or wolfSSL is available, we use their MD4 functions. */
 #include <openssl/md4.h>
 
 #elif (defined(__MAC_OS_X_VERSION_MAX_ALLOWED) && \
diff --git a/lib/md5.c b/lib/md5.c
index 7a24fd8..810c5fb 100644
--- a/lib/md5.c
+++ b/lib/md5.c
@@ -33,11 +33,26 @@
 #ifdef USE_MBEDTLS
 #include <mbedtls/version.h>
 
-#if(MBEDTLS_VERSION_NUMBER >= 0x02070000)
+#if(MBEDTLS_VERSION_NUMBER >= 0x02070000) && \
+   (MBEDTLS_VERSION_NUMBER < 0x03000000)
   #define HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS
 #endif
 #endif /* USE_MBEDTLS */
 
+#if defined(USE_OPENSSL) && !defined(USE_AMISSL)
+  #include <openssl/opensslconf.h>
+  #if !defined(OPENSSL_NO_MD5) && !defined(OPENSSL_NO_DEPRECATED_3_0)
+    #define USE_OPENSSL_MD5
+  #endif
+#endif
+
+#ifdef USE_WOLFSSL
+  #include <wolfssl/options.h>
+  #ifndef NO_MD5
+    #define USE_WOLFSSL_MD5
+  #endif
+#endif
+
 #if defined(USE_GNUTLS)
 
 #include <nettle/md5.h>
@@ -64,8 +79,9 @@
   md5_digest(ctx, 16, digest);
 }
 
-#elif defined(USE_OPENSSL) && !defined(USE_AMISSL)
-/* When OpenSSL is available we use the MD5-function from OpenSSL */
+#elif defined(USE_OPENSSL_MD5) || defined(USE_WOLFSSL_MD5)
+
+/* When OpenSSL or wolfSSL is available, we use their MD5 functions. */
 #include <openssl/md5.h>
 #include "curl_memory.h"
 /* The last #include file should be: */
@@ -85,7 +101,7 @@
 static void MD5_Init(MD5_CTX *ctx)
 {
 #if !defined(HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS)
-  mbedtls_md5_starts(ctx);
+  (void) mbedtls_md5_starts(ctx);
 #else
   (void) mbedtls_md5_starts_ret(ctx);
 #endif
@@ -96,7 +112,7 @@
                        unsigned int length)
 {
 #if !defined(HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS)
-  mbedtls_md5_update(ctx, data, length);
+  (void) mbedtls_md5_update(ctx, data, length);
 #else
   (void) mbedtls_md5_update_ret(ctx, data, length);
 #endif
@@ -105,7 +121,7 @@
 static void MD5_Final(unsigned char *digest, MD5_CTX *ctx)
 {
 #if !defined(HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS)
-  mbedtls_md5_finish(ctx, digest);
+  (void) mbedtls_md5_finish(ctx, digest);
 #else
   (void) mbedtls_md5_finish_ret(ctx, digest);
 #endif
diff --git a/lib/mime.c b/lib/mime.c
index 0bf1b46..f40cc1a 100644
--- a/lib/mime.c
+++ b/lib/mime.c
@@ -462,11 +462,13 @@
       /* Buffered data size can only be 0, 1 or 2. */
       ptr[2] = ptr[3] = '=';
       i = 0;
-      switch(st->bufend - st->bufbeg) {
-      case 2:
-        i = (st->buf[st->bufbeg + 1] & 0xFF) << 8;
-        /* FALLTHROUGH */
-      case 1:
+
+      /* If there is buffered data */
+      if(st->bufend != st->bufbeg) {
+
+        if(st->bufend - st->bufbeg == 2)
+          i = (st->buf[st->bufbeg + 1] & 0xFF) << 8;
+
         i |= (st->buf[st->bufbeg] & 0xFF) << 16;
         ptr[0] = base64[(i >> 18) & 0x3F];
         ptr[1] = base64[(i >> 12) & 0x3F];
@@ -476,7 +478,6 @@
         }
         cursize += 4;
         st->pos += 4;
-        break;
       }
     }
   }
@@ -1954,7 +1955,8 @@
 }
 
 
-#else /* !CURL_DISABLE_HTTP || !CURL_DISABLE_SMTP || !CURL_DISABLE_IMAP */
+#else /* !CURL_DISABLE_HTTP && !CURL_DISABLE_MIME ||
+         !CURL_DISABLE_SMTP || !CURL_DISABLE_IMAP */
 
 /* Mime not compiled in: define stubs for externally-referenced functions. */
 curl_mime *curl_mime_init(CURL *easy)
diff --git a/lib/mk-ca-bundle.pl b/lib/mk-ca-bundle.pl
index 910fedb..e5a7420 100755
--- a/lib/mk-ca-bundle.pl
+++ b/lib/mk-ca-bundle.pl
@@ -436,9 +436,25 @@
       last if (/\*\*\*\*\* END LICENSE BLOCK \*\*\*\*\*/);
     }
   }
-  elsif(/^# (Issuer|Serial Number|Subject|Not Valid Before|Not Valid After |Fingerprint \(MD5\)|Fingerprint \(SHA1\)):/) {
+# Not Valid After : Thu Sep 30 14:01:15 2021
+  elsif(/^# Not Valid After : (.*)/) {
+      my $stamp = $1;
+      use Time::Piece;
+      my $t = Time::Piece->strptime
+          ($stamp, "%a %b %d %H:%M:%S %Y");
+      my $delta = ($t->epoch - time()); # negative means no longer valid
+      if($delta < 0) {
+          $skipnum++;
+          report "Skipping: $caname is not valid anymore" if ($opt_v);
+          $valid = 0;
+      }
+      else {
+          $valid = 1;
+      }
+      next;
+  }
+  elsif(/^# (Issuer|Serial Number|Subject|Not Valid Before|Fingerprint \(MD5\)|Fingerprint \(SHA1\)):/) {
       push @precert, $_;
-      $valid = 1;
       next;
   }
   elsif(/^#|^\s*$/) {
diff --git a/lib/mqtt.c b/lib/mqtt.c
index f077e6c..fcd40b4 100644
--- a/lib/mqtt.c
+++ b/lib/mqtt.c
@@ -128,6 +128,10 @@
     mq->sendleftovers = sendleftovers;
     mq->nsend = nsend;
   }
+  else {
+    mq->sendleftovers = NULL;
+    mq->nsend = 0;
+  }
   return result;
 }
 
diff --git a/lib/multi.c b/lib/multi.c
index 82d538d..f307d63 100644
--- a/lib/multi.c
+++ b/lib/multi.c
@@ -1052,11 +1052,17 @@
     for(i = 0; i< MAX_SOCKSPEREASYHANDLE; i++) {
       curl_socket_t s = CURL_SOCKET_BAD;
 
-      if((bitmap & GETSOCK_READSOCK(i)) && VALID_SOCK((sockbunch[i]))) {
+      if((bitmap & GETSOCK_READSOCK(i)) && VALID_SOCK(sockbunch[i])) {
+        if(!FDSET_SOCK(sockbunch[i]))
+          /* pretend it doesn't exist */
+          continue;
         FD_SET(sockbunch[i], read_fd_set);
         s = sockbunch[i];
       }
-      if((bitmap & GETSOCK_WRITESOCK(i)) && VALID_SOCK((sockbunch[i]))) {
+      if((bitmap & GETSOCK_WRITESOCK(i)) && VALID_SOCK(sockbunch[i])) {
+        if(!FDSET_SOCK(sockbunch[i]))
+          /* pretend it doesn't exist */
+          continue;
         FD_SET(sockbunch[i], write_fd_set);
         s = sockbunch[i];
       }
@@ -1100,6 +1106,9 @@
   WSANETWORKEVENTS wsa_events;
   DEBUGASSERT(multi->wsa_event != WSA_INVALID_EVENT);
 #endif
+#ifndef ENABLE_WAKEUP
+  (void)use_wakeup;
+#endif
 
   if(!GOOD_MULTI_HANDLE(multi))
     return CURLM_BAD_HANDLE;
@@ -2019,6 +2028,28 @@
       break;
 
     case MSTATE_DO:
+      if(data->set.fprereq) {
+        int prereq_rc;
+
+        /* call the prerequest callback function */
+        Curl_set_in_callback(data, true);
+        prereq_rc = data->set.fprereq(data->set.prereq_userp,
+                                      data->info.conn_primary_ip,
+                                      data->info.conn_local_ip,
+                                      data->info.conn_primary_port,
+                                      data->info.conn_local_port);
+        Curl_set_in_callback(data, false);
+        if(prereq_rc != CURL_PREREQFUNC_OK) {
+          failf(data, "operation aborted by pre-request callback");
+          /* failure in pre-request callback - don't do any other processing */
+          result = CURLE_ABORTED_BY_CALLBACK;
+          Curl_posttransfer(data);
+          multi_done(data, result, FALSE);
+          stream_error = TRUE;
+          break;
+        }
+      }
+
       if(data->set.connect_only) {
         /* keep connection open for application to use the socket */
         connkeep(data->conn, "CONNECT_ONLY");
@@ -2602,7 +2633,7 @@
 
     multi->magic = 0; /* not good anymore */
 
-    /* Firsrt remove all remaining easy handles */
+    /* First remove all remaining easy handles */
     data = multi->easyp;
     while(data) {
       nextdata = data->next;
@@ -3171,7 +3202,7 @@
 static CURLMcode multi_timeout(struct Curl_multi *multi,
                                long *timeout_ms)
 {
-  static struct curltime tv_zero = {0, 0};
+  static const struct curltime tv_zero = {0, 0};
 
   if(multi->timetree) {
     /* we have a tree of expire times */
diff --git a/lib/non-ascii.c b/lib/non-ascii.c
index 932cf89..3b77ae9 100644
--- a/lib/non-ascii.c
+++ b/lib/non-ascii.c
@@ -31,6 +31,7 @@
 #include "sendf.h"
 #include "urldata.h"
 #include "multiif.h"
+#include "strerror.h"
 
 #include "curl_memory.h"
 /* The last #include file should be: */
@@ -104,6 +105,7 @@
     iconv_t *cd = &tmpcd;
     char *input_ptr, *output_ptr;
     size_t in_bytes, out_bytes, rc;
+    char ebuffer[STRERROR_LEN];
 
     /* open an iconv conversion descriptor if necessary */
     if(data)
@@ -116,7 +118,7 @@
               "The iconv_open(\"%s\", \"%s\") call failed with errno %i: %s",
               CURL_ICONV_CODESET_OF_NETWORK,
               CURL_ICONV_CODESET_OF_HOST,
-              errno, strerror(errno));
+              errno, Curl_strerror(errno, ebuffer, sizeof(ebuffer)));
         return CURLE_CONV_FAILED;
       }
     }
@@ -130,7 +132,7 @@
     if((rc == ICONV_ERROR) || (in_bytes)) {
       failf(data,
             "The Curl_convert_to_network iconv call failed with errno %i: %s",
-            errno, strerror(errno));
+            errno, Curl_strerror(errno, ebuffer, sizeof(ebuffer)));
       return CURLE_CONV_FAILED;
     }
 #else
@@ -170,6 +172,7 @@
     iconv_t *cd = &tmpcd;
     char *input_ptr, *output_ptr;
     size_t in_bytes, out_bytes, rc;
+    char ebuffer[STRERROR_LEN];
 
     /* open an iconv conversion descriptor if necessary */
     if(data)
@@ -182,7 +185,7 @@
               "The iconv_open(\"%s\", \"%s\") call failed with errno %i: %s",
               CURL_ICONV_CODESET_OF_HOST,
               CURL_ICONV_CODESET_OF_NETWORK,
-              errno, strerror(errno));
+              errno, Curl_strerror(errno, ebuffer, sizeof(ebuffer)));
         return CURLE_CONV_FAILED;
       }
     }
@@ -196,7 +199,7 @@
     if((rc == ICONV_ERROR) || (in_bytes)) {
       failf(data,
             "Curl_convert_from_network iconv call failed with errno %i: %s",
-            errno, strerror(errno));
+            errno, Curl_strerror(errno, ebuffer, sizeof(ebuffer)));
       return CURLE_CONV_FAILED;
     }
 #else
@@ -237,6 +240,7 @@
     char *input_ptr;
     char *output_ptr;
     size_t in_bytes, out_bytes, rc;
+    char ebuffer[STRERROR_LEN];
 
     /* open an iconv conversion descriptor if necessary */
     if(data)
@@ -249,7 +253,7 @@
               "The iconv_open(\"%s\", \"%s\") call failed with errno %i: %s",
               CURL_ICONV_CODESET_OF_HOST,
               CURL_ICONV_CODESET_FOR_UTF8,
-              errno, strerror(errno));
+              errno, Curl_strerror(errno, ebuffer, sizeof(ebuffer)));
         return CURLE_CONV_FAILED;
       }
     }
@@ -263,7 +267,7 @@
     if((rc == ICONV_ERROR) || (in_bytes)) {
       failf(data,
             "The Curl_convert_from_utf8 iconv call failed with errno %i: %s",
-            errno, strerror(errno));
+            errno, Curl_strerror(errno, ebuffer, sizeof(ebuffer)));
       return CURLE_CONV_FAILED;
     }
     if(output_ptr < input_ptr) {
diff --git a/lib/pop3.c b/lib/pop3.c
index 5fdd6f3..d4ca678 100644
--- a/lib/pop3.c
+++ b/lib/pop3.c
@@ -75,10 +75,10 @@
 #include "strcase.h"
 #include "vtls/vtls.h"
 #include "connect.h"
-#include "strerror.h"
 #include "select.h"
 #include "multiif.h"
 #include "url.h"
+#include "bufref.h"
 #include "curl_sasl.h"
 #include "curl_md5.h"
 #include "warnless.h"
@@ -104,12 +104,12 @@
 static CURLcode pop3_parse_url_options(struct connectdata *conn);
 static CURLcode pop3_parse_url_path(struct Curl_easy *data);
 static CURLcode pop3_parse_custom_request(struct Curl_easy *data);
-static CURLcode pop3_perform_auth(struct Curl_easy *data,
-                                  struct connectdata *conn, const char *mech,
-                                  const char *initresp);
-static CURLcode pop3_continue_auth(struct Curl_easy *data,
-                                   struct connectdata *conn, const char *resp);
-static void pop3_get_message(char *buffer, char **outptr);
+static CURLcode pop3_perform_auth(struct Curl_easy *data, const char *mech,
+                                  const struct bufref *initresp);
+static CURLcode pop3_continue_auth(struct Curl_easy *data, const char *mech,
+                                   const struct bufref *resp);
+static CURLcode pop3_cancel_auth(struct Curl_easy *data, const char *mech);
+static CURLcode pop3_get_message(struct Curl_easy *data, struct bufref *out);
 
 /*
  * POP3 protocol handler.
@@ -171,13 +171,16 @@
 
 /* SASL parameters for the pop3 protocol */
 static const struct SASLproto saslpop3 = {
-  "pop",                      /* The service name */
-  '*',                        /* Code received when continuation is expected */
-  '+',                        /* Code to receive upon authentication success */
-  255 - 8,                    /* Maximum initial response length (no max) */
-  pop3_perform_auth,          /* Send authentication command */
-  pop3_continue_auth,         /* Send authentication continuation */
-  pop3_get_message            /* Get SASL response message */
+  "pop",                /* The service name */
+  pop3_perform_auth,    /* Send authentication command */
+  pop3_continue_auth,   /* Send authentication continuation */
+  pop3_cancel_auth,     /* Send authentication cancellation */
+  pop3_get_message,     /* Get SASL response message */
+  255 - 8,              /* Max line len - strlen("AUTH ") - 1 space - crlf */
+  '*',                  /* Code received when continuation is expected */
+  '+',                  /* Code to receive upon authentication success */
+  SASL_AUTH_DEFAULT,    /* Default mechanisms */
+  SASL_FLAG_BASE64      /* Configuration flags */
 };
 
 #ifdef USE_SSL
@@ -251,34 +254,32 @@
  *
  * Gets the authentication message from the response buffer.
  */
-static void pop3_get_message(char *buffer, char **outptr)
+static CURLcode pop3_get_message(struct Curl_easy *data, struct bufref *out)
 {
-  size_t len = strlen(buffer);
-  char *message = NULL;
+  char *message = data->state.buffer;
+  size_t len = strlen(message);
 
   if(len > 2) {
     /* Find the start of the message */
     len -= 2;
-    for(message = buffer + 2; *message == ' ' || *message == '\t';
-        message++, len--)
+    for(message += 2; *message == ' ' || *message == '\t'; message++, len--)
       ;
 
     /* Find the end of the message */
-    for(; len--;)
+    while(len--)
       if(message[len] != '\r' && message[len] != '\n' && message[len] != ' ' &&
          message[len] != '\t')
         break;
 
     /* Terminate the message */
-    if(++len) {
-      message[len] = '\0';
-    }
+    message[++len] = '\0';
+    Curl_bufref_set(out, message, len, NULL);
   }
   else
     /* junk input => zero length output */
-    message = &buffer[len];
+    Curl_bufref_set(out, "", 0, NULL);
 
-  *outptr = message;
+  return CURLE_OK;
 }
 
 /***********************************************************************
@@ -475,16 +476,16 @@
  * authentication mechanism.
  */
 static CURLcode pop3_perform_auth(struct Curl_easy *data,
-                                  struct connectdata *conn,
                                   const char *mech,
-                                  const char *initresp)
+                                  const struct bufref *initresp)
 {
   CURLcode result = CURLE_OK;
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
+  struct pop3_conn *pop3c = &data->conn->proto.pop3c;
+  const char *ir = (const char *) Curl_bufref_ptr(initresp);
 
-  if(initresp) {                                  /* AUTH <mech> ...<crlf> */
+  if(ir) {                                  /* AUTH <mech> ...<crlf> */
     /* Send the AUTH command with the initial response */
-    result = Curl_pp_sendf(data, &pop3c->pp, "AUTH %s %s", mech, initresp);
+    result = Curl_pp_sendf(data, &pop3c->pp, "AUTH %s %s", mech, ir);
   }
   else {
     /* Send the AUTH command */
@@ -498,15 +499,33 @@
  *
  * pop3_continue_auth()
  *
- * Sends SASL continuation data or cancellation.
+ * Sends SASL continuation data.
  */
 static CURLcode pop3_continue_auth(struct Curl_easy *data,
-                                   struct connectdata *conn,
-                                   const char *resp)
+                                   const char *mech,
+                                   const struct bufref *resp)
 {
-  struct pop3_conn *pop3c = &conn->proto.pop3c;
+  struct pop3_conn *pop3c = &data->conn->proto.pop3c;
 
-  return Curl_pp_sendf(data, &pop3c->pp, "%s", resp);
+  (void)mech;
+
+  return Curl_pp_sendf(data, &pop3c->pp,
+                       "%s", (const char *) Curl_bufref_ptr(resp));
+}
+
+/***********************************************************************
+ *
+ * pop3_cancel_auth()
+ *
+ * Sends SASL cancellation.
+ */
+static CURLcode pop3_cancel_auth(struct Curl_easy *data, const char *mech)
+{
+  struct pop3_conn *pop3c = &data->conn->proto.pop3c;
+
+  (void)mech;
+
+  return Curl_pp_sendf(data, &pop3c->pp, "*");
 }
 
 /***********************************************************************
@@ -533,7 +552,7 @@
 
   if(pop3c->authtypes & pop3c->preftype & POP3_TYPE_SASL) {
     /* Calculate the SASL login details */
-    result = Curl_sasl_start(&pop3c->sasl, data, conn, FALSE, &progress);
+    result = Curl_sasl_start(&pop3c->sasl, data, FALSE, &progress);
 
     if(!result)
       if(progress == SASL_INPROGRESS)
@@ -741,28 +760,23 @@
       }
     }
   }
-  else if(pop3code == '+') {
-    if(data->set.use_ssl && !conn->ssl[FIRSTSOCKET].use) {
-      /* We don't have a SSL/TLS connection yet, but SSL is requested */
-      if(pop3c->tls_supported)
-        /* Switch to TLS connection now */
-        result = pop3_perform_starttls(data, conn);
-      else if(data->set.use_ssl == CURLUSESSL_TRY)
-        /* Fallback and carry on with authentication */
-        result = pop3_perform_authentication(data, conn);
-      else {
-        failf(data, "STLS not supported.");
-        result = CURLE_USE_SSL_FAILED;
-      }
-    }
-    else
-      result = pop3_perform_authentication(data, conn);
-  }
   else {
     /* Clear text is supported when CAPA isn't recognised */
-    pop3c->authtypes |= POP3_TYPE_CLEARTEXT;
+    if(pop3code != '+')
+      pop3c->authtypes |= POP3_TYPE_CLEARTEXT;
 
-    result = pop3_perform_authentication(data, conn);
+    if(!data->set.use_ssl || conn->ssl[FIRSTSOCKET].use)
+      result = pop3_perform_authentication(data, conn);
+    else if(pop3code == '+' && pop3c->tls_supported)
+      /* Switch to TLS connection now */
+      result = pop3_perform_starttls(data, conn);
+    else if(data->set.use_ssl <= CURLUSESSL_TRY)
+      /* Fallback and carry on with authentication */
+      result = pop3_perform_authentication(data, conn);
+    else {
+      failf(data, "STLS not supported.");
+      result = CURLE_USE_SSL_FAILED;
+    }
   }
 
   return result;
@@ -777,6 +791,10 @@
   CURLcode result = CURLE_OK;
   (void)instate; /* no use for this yet */
 
+  /* Pipelining in response is forbidden. */
+  if(data->conn->proto.pop3c.pp.cache_size)
+    return CURLE_WEIRD_SERVER_REPLY;
+
   if(pop3code != '+') {
     if(data->set.use_ssl != CURLUSESSL_TRY) {
       failf(data, "STARTTLS denied");
@@ -803,7 +821,7 @@
 
   (void)instate; /* no use for this yet */
 
-  result = Curl_sasl_continue(&pop3c->sasl, data, conn, pop3code, &progress);
+  result = Curl_sasl_continue(&pop3c->sasl, data, pop3code, &progress);
   if(!result)
     switch(progress) {
     case SASL_DONE:
@@ -1013,7 +1031,9 @@
       break;
 
     case POP3_QUIT:
-      /* fallthrough, just stop! */
+      state(data, POP3_STOP);
+      break;
+
     default:
       /* internal error */
       state(data, POP3_STOP);
@@ -1104,7 +1124,7 @@
 
   /* Set the default preferred authentication type and mechanism */
   pop3c->preftype = POP3_TYPE_ANY;
-  Curl_sasl_init(&pop3c->sasl, &saslpop3);
+  Curl_sasl_init(&pop3c->sasl, data, &saslpop3);
 
   /* Initialise the pingpong layer */
   Curl_pp_setup(pp);
@@ -1345,8 +1365,6 @@
   struct pop3_conn *pop3c = &conn->proto.pop3c;
   const char *ptr = conn->options;
 
-  pop3c->sasl.resetprefs = TRUE;
-
   while(!result && ptr && *ptr) {
     const char *key = ptr;
     const char *value;
diff --git a/lib/progress.c b/lib/progress.c
index 4bcd615..f5ef6bd 100644
--- a/lib/progress.c
+++ b/lib/progress.c
@@ -377,7 +377,12 @@
 {
   if(us < 1)
     return size * 1000000;
-  return (curl_off_t)((long double)size/us * 1000000);
+  else if(size < CURL_OFF_T_MAX/1000000)
+    return (size * 1000000) / us;
+  else if(us >= 1000000)
+    return size / (us / 1000000);
+  else
+    return CURL_OFF_T_MAX;
 }
 
 /* returns TRUE if it's time to show the progress meter */
diff --git a/lib/select.c b/lib/select.c
index 52dca5a..70d7ee5 100644
--- a/lib/select.c
+++ b/lib/select.c
@@ -64,7 +64,7 @@
  * Waiting indefinitely with this function is not allowed, a
  * zero or negative timeout value will return immediately.
  * Timeout resolution, accuracy, as well as maximum supported
- * value is system dependent, neither factor is a citical issue
+ * value is system dependent, neither factor is a critical issue
  * for the intended use of this function in the library.
  *
  * Return values:
diff --git a/lib/select.h b/lib/select.h
index 19da1e7..59a571d 100644
--- a/lib/select.h
+++ b/lib/select.h
@@ -97,8 +97,10 @@
 #if defined(TPF)
 #define VALID_SOCK(x) 1
 #define VERIFY_SOCK(x) Curl_nop_stmt
+#define FDSET_SOCK(x) 1
 #elif defined(USE_WINSOCK)
 #define VALID_SOCK(s) ((s) < INVALID_SOCKET)
+#define FDSET_SOCK(x) 1
 #define VERIFY_SOCK(x) do { \
   if(!VALID_SOCK(x)) { \
     SET_SOCKERRNO(WSAEINVAL); \
@@ -106,17 +108,17 @@
   } \
 } while(0)
 #else
-#ifdef HAVE_POLL_FINE
-#define VALID_SOCK(s) ((s) >= 0)  /* FD_SETSIZE is irrelevant for poll */
-#else
-#define VALID_SOCK(s) (((s) >= 0) && ((s) < FD_SETSIZE))
-#endif
-#define VERIFY_SOCK(x) do { \
-  if(!VALID_SOCK(x)) { \
-    SET_SOCKERRNO(EINVAL); \
-    return -1; \
-  } \
-} while(0)
+#define VALID_SOCK(s) ((s) >= 0)
+
+/* If the socket is small enough to get set or read from an fdset */
+#define FDSET_SOCK(s) ((s) < FD_SETSIZE)
+
+#define VERIFY_SOCK(x) do {                     \
+    if(!VALID_SOCK(x) || !FDSET_SOCK(x)) {      \
+      SET_SOCKERRNO(EINVAL);                    \
+      return -1;                                \
+    }                                           \
+  } while(0)
 #endif
 
 #endif /* HEADER_CURL_SELECT_H */
diff --git a/lib/sendf.c b/lib/sendf.c
index 14ca84b..bcfa27a 100644
--- a/lib/sendf.c
+++ b/lib/sendf.c
@@ -608,7 +608,7 @@
 /* Curl_client_write() sends data to the write callback(s)
 
    The bit pattern defines to what "streams" to write to. Body and/or header.
-   The defines are in sendf.h of course. "len" is not allowed to be 0.
+   The defines are in sendf.h of course.
 
    If CURL_DO_LINEEND_CONV is enabled, data is converted IN PLACE to the
    local character encoding.  This is a problem and should be changed in
@@ -621,8 +621,10 @@
 {
   struct connectdata *conn = data->conn;
 
-  DEBUGASSERT(len);
-  DEBUGASSERT(type <= 3);
+  DEBUGASSERT(!(type & ~CLIENTWRITE_BOTH));
+
+  if(!len)
+    return CURLE_OK;
 
   /* FTP data may need conversion. */
   if((type & CLIENTWRITE_BODY) &&
diff --git a/lib/setopt.c b/lib/setopt.c
index 076fe5f..56d9c49 100644
--- a/lib/setopt.c
+++ b/lib/setopt.c
@@ -2370,12 +2370,8 @@
     break;
 
   case CURLOPT_IGNORE_CONTENT_LENGTH:
-#ifndef USE_HYPER
     data->set.ignorecl = (0 != va_arg(param, long)) ? TRUE : FALSE;
     break;
-#else
-    return CURLE_NOT_BUILT_IN;
-#endif
 
   case CURLOPT_CONNECT_ONLY:
     /*
@@ -2481,6 +2477,15 @@
                             va_arg(param, char *));
     break;
 
+  case CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256:
+    /*
+     * Option to allow for the SHA256 of the host public key to be checked
+     * for validation purposes.
+     */
+    result = Curl_setstropt(&data->set.str[STRING_SSH_HOST_PUBLIC_KEY_SHA256],
+                            va_arg(param, char *));
+    break;
+
   case CURLOPT_SSH_KNOWNHOSTS:
     /*
      * Store the file name to read known hosts from.
@@ -2511,8 +2516,12 @@
     /*
      * disable libcurl transfer encoding is used
      */
+#ifndef USE_HYPER
     data->set.http_te_skip = (0 == va_arg(param, long)) ? TRUE : FALSE;
     break;
+#else
+    return CURLE_NOT_BUILT_IN; /* hyper doesn't support */
+#endif
 
   case CURLOPT_HTTP_CONTENT_DECODING:
     /*
@@ -2933,6 +2942,12 @@
       return CURLE_BAD_FUNCTION_ARGUMENT;
     data->set.maxage_conn = arg;
     break;
+  case CURLOPT_MAXLIFETIME_CONN:
+    arg = va_arg(param, long);
+    if(arg < 0)
+      return CURLE_BAD_FUNCTION_ARGUMENT;
+    data->set.maxlifetime_conn = arg;
+    break;
   case CURLOPT_TRAILERFUNCTION:
 #ifndef CURL_DISABLE_HTTP
     data->set.trailer_callback = va_arg(param, curl_trailer_callback);
@@ -3008,6 +3023,12 @@
       return result;
     break;
 #endif
+  case CURLOPT_PREREQFUNCTION:
+    data->set.fprereq = va_arg(param, curl_prereq_callback);
+    break;
+  case CURLOPT_PREREQDATA:
+    data->set.prereq_userp = va_arg(param, void *);
+    break;
   default:
     /* unknown tag and its companion, just ignore: */
     result = CURLE_UNKNOWN_OPTION;
diff --git a/lib/setup-win32.h b/lib/setup-win32.h
index c35dec8..fa8742f 100644
--- a/lib/setup-win32.h
+++ b/lib/setup-win32.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -25,11 +25,11 @@
 /*
  * Include header files for windows builds before redefining anything.
  * Use this preprocessor block only to include or exclude windows.h,
- * winsock2.h, ws2tcpip.h or winsock.h. Any other windows thing belongs
+ * winsock2.h or ws2tcpip.h. Any other windows thing belongs
  * to any other further and independent block.  Under Cygwin things work
  * just as under linux (e.g. <sys/socket.h>) and the winsock headers should
  * never be included when __CYGWIN__ is defined.  configure script takes
- * care of this, not defining HAVE_WINDOWS_H, HAVE_WINSOCK_H, HAVE_WINSOCK2_H,
+ * care of this, not defining HAVE_WINDOWS_H, HAVE_WINSOCK2_H,
  * neither HAVE_WS2TCPIP_H when __CYGWIN__ is defined.
  */
 
@@ -47,10 +47,6 @@
 #    ifdef HAVE_WS2TCPIP_H
 #      include <ws2tcpip.h>
 #    endif
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #  include <tchar.h>
 #  ifdef UNICODE
@@ -67,10 +63,6 @@
 
 #ifdef HAVE_WINSOCK2_H
 #  define USE_WINSOCK 2
-#else
-#  ifdef HAVE_WINSOCK_H
-#    error "WinSock version 1 is no longer supported, version 2 is required!"
-#  endif
 #endif
 
 /*
diff --git a/lib/sha256.c b/lib/sha256.c
index c34f97e..1391412 100644
--- a/lib/sha256.c
+++ b/lib/sha256.c
@@ -29,11 +29,18 @@
 #include "curl_sha256.h"
 #include "curl_hmac.h"
 
+#ifdef USE_WOLFSSL
+#include <wolfssl/options.h>
+#ifndef NO_SHA256
+#define USE_OPENSSL_SHA256
+#endif
+#endif
+
 #if defined(USE_OPENSSL)
 
 #include <openssl/opensslv.h>
 
-#if (OPENSSL_VERSION_NUMBER >= 0x0090800fL)
+#if (OPENSSL_VERSION_NUMBER >= 0x0090700fL)
 #define USE_OPENSSL_SHA256
 #endif
 
@@ -42,8 +49,9 @@
 #ifdef USE_MBEDTLS
 #include <mbedtls/version.h>
 
-#if(MBEDTLS_VERSION_NUMBER >= 0x02070000)
-  #define HAS_RESULT_CODE_BASED_FUNCTIONS
+#if(MBEDTLS_VERSION_NUMBER >= 0x02070000) && \
+   (MBEDTLS_VERSION_NUMBER < 0x03000000)
+  #define HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS
 #endif
 #endif /* USE_MBEDTLS */
 
@@ -62,7 +70,36 @@
 #if defined(USE_OPENSSL_SHA256)
 
 /* When OpenSSL is available we use the SHA256-function from OpenSSL */
-#include <openssl/sha.h>
+#include <openssl/evp.h>
+
+#include "curl_memory.h"
+
+/* The last #include file should be: */
+#include "memdebug.h"
+
+struct sha256_ctx {
+  EVP_MD_CTX *openssl_ctx;
+};
+typedef struct sha256_ctx my_sha256_ctx;
+
+static void my_sha256_init(my_sha256_ctx *ctx)
+{
+  ctx->openssl_ctx = EVP_MD_CTX_create();
+  EVP_DigestInit_ex(ctx->openssl_ctx, EVP_sha256(), NULL);
+}
+
+static void my_sha256_update(my_sha256_ctx *ctx,
+                             const unsigned char *data,
+                             unsigned int length)
+{
+  EVP_DigestUpdate(ctx->openssl_ctx, data, length);
+}
+
+static void my_sha256_final(unsigned char *digest, my_sha256_ctx *ctx)
+{
+  EVP_DigestFinal_ex(ctx->openssl_ctx, digest, NULL);
+  EVP_MD_CTX_destroy(ctx->openssl_ctx);
+}
 
 #elif defined(USE_GNUTLS)
 
@@ -73,21 +110,21 @@
 /* The last #include file should be: */
 #include "memdebug.h"
 
-typedef struct sha256_ctx SHA256_CTX;
+typedef struct sha256_ctx my_sha256_ctx;
 
-static void SHA256_Init(SHA256_CTX *ctx)
+static void my_sha256_init(my_sha256_ctx *ctx)
 {
   sha256_init(ctx);
 }
 
-static void SHA256_Update(SHA256_CTX *ctx,
-                          const unsigned char *data,
-                          unsigned int length)
+static void my_sha256_update(my_sha256_ctx *ctx,
+                             const unsigned char *data,
+                             unsigned int length)
 {
   sha256_update(ctx, length, data);
 }
 
-static void SHA256_Final(unsigned char *digest, SHA256_CTX *ctx)
+static void my_sha256_final(unsigned char *digest, my_sha256_ctx *ctx)
 {
   sha256_digest(ctx, SHA256_DIGEST_SIZE, digest);
 }
@@ -101,32 +138,32 @@
 /* The last #include file should be: */
 #include "memdebug.h"
 
-typedef mbedtls_sha256_context SHA256_CTX;
+typedef mbedtls_sha256_context my_sha256_ctx;
 
-static void SHA256_Init(SHA256_CTX *ctx)
+static void my_sha256_init(my_sha256_ctx *ctx)
 {
-#if !defined(HAS_RESULT_CODE_BASED_FUNCTIONS)
-  mbedtls_sha256_starts(ctx, 0);
+#if !defined(HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS)
+  (void) mbedtls_sha256_starts(ctx, 0);
 #else
   (void) mbedtls_sha256_starts_ret(ctx, 0);
 #endif
 }
 
-static void SHA256_Update(SHA256_CTX *ctx,
-                          const unsigned char *data,
-                          unsigned int length)
+static void my_sha256_update(my_sha256_ctx *ctx,
+                             const unsigned char *data,
+                             unsigned int length)
 {
-#if !defined(HAS_RESULT_CODE_BASED_FUNCTIONS)
-  mbedtls_sha256_update(ctx, data, length);
+#if !defined(HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS)
+  (void) mbedtls_sha256_update(ctx, data, length);
 #else
   (void) mbedtls_sha256_update_ret(ctx, data, length);
 #endif
 }
 
-static void SHA256_Final(unsigned char *digest, SHA256_CTX *ctx)
+static void my_sha256_final(unsigned char *digest, my_sha256_ctx *ctx)
 {
-#if !defined(HAS_RESULT_CODE_BASED_FUNCTIONS)
-  mbedtls_sha256_finish(ctx, digest);
+#if !defined(HAS_MBEDTLS_RESULT_CODE_BASED_FUNCTIONS)
+  (void) mbedtls_sha256_finish(ctx, digest);
 #else
   (void) mbedtls_sha256_finish_ret(ctx, digest);
 #endif
@@ -144,21 +181,21 @@
 /* The last #include file should be: */
 #include "memdebug.h"
 
-typedef CC_SHA256_CTX SHA256_CTX;
+typedef CC_SHA256_CTX my_sha256_ctx;
 
-static void SHA256_Init(SHA256_CTX *ctx)
+static void my_sha256_init(my_sha256_ctx *ctx)
 {
   (void) CC_SHA256_Init(ctx);
 }
 
-static void SHA256_Update(SHA256_CTX *ctx,
-                          const unsigned char *data,
-                          unsigned int length)
+static void my_sha256_update(my_sha256_ctx *ctx,
+                             const unsigned char *data,
+                             unsigned int length)
 {
   (void) CC_SHA256_Update(ctx, data, length);
 }
 
-static void SHA256_Final(unsigned char *digest, SHA256_CTX *ctx)
+static void my_sha256_final(unsigned char *digest, my_sha256_ctx *ctx)
 {
   (void) CC_SHA256_Final(digest, ctx);
 }
@@ -171,13 +208,13 @@
   HCRYPTPROV hCryptProv;
   HCRYPTHASH hHash;
 };
-typedef struct sha256_ctx SHA256_CTX;
+typedef struct sha256_ctx my_sha256_ctx;
 
 #if !defined(CALG_SHA_256)
 #define CALG_SHA_256 0x0000800c
 #endif
 
-static void SHA256_Init(SHA256_CTX *ctx)
+static void my_sha256_init(my_sha256_ctx *ctx)
 {
   if(CryptAcquireContext(&ctx->hCryptProv, NULL, NULL, PROV_RSA_AES,
                          CRYPT_VERIFYCONTEXT | CRYPT_SILENT)) {
@@ -185,14 +222,14 @@
   }
 }
 
-static void SHA256_Update(SHA256_CTX *ctx,
-                          const unsigned char *data,
-                          unsigned int length)
+static void my_sha256_update(my_sha256_ctx *ctx,
+                             const unsigned char *data,
+                             unsigned int length)
 {
   CryptHashData(ctx->hHash, (unsigned char *) data, length, 0);
 }
 
-static void SHA256_Final(unsigned char *digest, SHA256_CTX *ctx)
+static void my_sha256_final(unsigned char *digest, my_sha256_ctx *ctx)
 {
   unsigned long length = 0;
 
@@ -261,7 +298,7 @@
   unsigned long state[8], curlen;
   unsigned char buf[64];
 };
-typedef struct sha256_state SHA256_CTX;
+typedef struct sha256_state my_sha256_ctx;
 
 /* The K array */
 static const unsigned long K[64] = {
@@ -338,7 +375,7 @@
 }
 
 /* Initialize the hash state */
-static void SHA256_Init(struct sha256_state *md)
+static void my_sha256_init(struct sha256_state *md)
 {
   md->curlen = 0;
   md->length = 0;
@@ -359,9 +396,9 @@
    @param inlen  The length of the data (octets)
    @return CRYPT_OK if successful
 */
-static int SHA256_Update(struct sha256_state *md,
-                         const unsigned char *in,
-                         unsigned long inlen)
+static int my_sha256_update(struct sha256_state *md,
+                            const unsigned char *in,
+                            unsigned long inlen)
 {
   unsigned long n;
 
@@ -400,8 +437,8 @@
    @param out [out] The destination of the hash (32 bytes)
    @return CRYPT_OK if successful
 */
-static int SHA256_Final(unsigned char *out,
-                        struct sha256_state *md)
+static int my_sha256_final(unsigned char *out,
+                           struct sha256_state *md)
 {
   int i;
 
@@ -458,24 +495,24 @@
 void Curl_sha256it(unsigned char *output, const unsigned char *input,
                    const size_t length)
 {
-  SHA256_CTX ctx;
+  my_sha256_ctx ctx;
 
-  SHA256_Init(&ctx);
-  SHA256_Update(&ctx, input, curlx_uztoui(length));
-  SHA256_Final(output, &ctx);
+  my_sha256_init(&ctx);
+  my_sha256_update(&ctx, input, curlx_uztoui(length));
+  my_sha256_final(output, &ctx);
 }
 
 
 const struct HMAC_params Curl_HMAC_SHA256[] = {
   {
     /* Hash initialization function. */
-    CURLX_FUNCTION_CAST(HMAC_hinit_func, SHA256_Init),
+    CURLX_FUNCTION_CAST(HMAC_hinit_func, my_sha256_init),
     /* Hash update function. */
-    CURLX_FUNCTION_CAST(HMAC_hupdate_func, SHA256_Update),
+    CURLX_FUNCTION_CAST(HMAC_hupdate_func, my_sha256_update),
     /* Hash computation end function. */
-    CURLX_FUNCTION_CAST(HMAC_hfinal_func, SHA256_Final),
+    CURLX_FUNCTION_CAST(HMAC_hfinal_func, my_sha256_final),
     /* Size of hash context structure. */
-    sizeof(SHA256_CTX),
+    sizeof(my_sha256_ctx),
     /* Maximum key length. */
     64,
     /* Result size. */
diff --git a/lib/smtp.c b/lib/smtp.c
index 1a3da15..8e0b046 100644
--- a/lib/smtp.c
+++ b/lib/smtp.c
@@ -78,11 +78,11 @@
 #include "strcase.h"
 #include "vtls/vtls.h"
 #include "connect.h"
-#include "strerror.h"
 #include "select.h"
 #include "multiif.h"
 #include "url.h"
 #include "curl_gethostname.h"
+#include "bufref.h"
 #include "curl_sasl.h"
 #include "warnless.h"
 /* The last 3 #include files should be in this order */
@@ -109,12 +109,12 @@
 static CURLcode smtp_parse_custom_request(struct Curl_easy *data);
 static CURLcode smtp_parse_address(struct Curl_easy *data, const char *fqma,
                                    char **address, struct hostname *host);
-static CURLcode smtp_perform_auth(struct Curl_easy *data,
-                                  struct connectdata *conn, const char *mech,
-                                  const char *initresp);
-static CURLcode smtp_continue_auth(struct Curl_easy *data,
-                                   struct connectdata *conn, const char *resp);
-static void smtp_get_message(char *buffer, char **outptr);
+static CURLcode smtp_perform_auth(struct Curl_easy *data, const char *mech,
+                                  const struct bufref *initresp);
+static CURLcode smtp_continue_auth(struct Curl_easy *data, const char *mech,
+                                   const struct bufref *resp);
+static CURLcode smtp_cancel_auth(struct Curl_easy *data, const char *mech);
+static CURLcode smtp_get_message(struct Curl_easy *data, struct bufref *out);
 
 /*
  * SMTP protocol handler.
@@ -176,13 +176,16 @@
 
 /* SASL parameters for the smtp protocol */
 static const struct SASLproto saslsmtp = {
-  "smtp",                     /* The service name */
-  334,                        /* Code received when continuation is expected */
-  235,                        /* Code to receive upon authentication success */
-  512 - 8,                    /* Maximum initial response length (no max) */
-  smtp_perform_auth,          /* Send authentication command */
-  smtp_continue_auth,         /* Send authentication continuation */
-  smtp_get_message            /* Get SASL response message */
+  "smtp",               /* The service name */
+  smtp_perform_auth,    /* Send authentication command */
+  smtp_continue_auth,   /* Send authentication continuation */
+  smtp_cancel_auth,     /* Cancel authentication */
+  smtp_get_message,     /* Get SASL response message */
+  512 - 8,              /* Max line len - strlen("AUTH ") - 1 space - crlf */
+  334,                  /* Code received when continuation is expected */
+  235,                  /* Code to receive upon authentication success */
+  SASL_AUTH_DEFAULT,    /* Default mechanisms */
+  SASL_FLAG_BASE64      /* Configuration flags */
 };
 
 #ifdef USE_SSL
@@ -249,34 +252,32 @@
  *
  * Gets the authentication message from the response buffer.
  */
-static void smtp_get_message(char *buffer, char **outptr)
+static CURLcode smtp_get_message(struct Curl_easy *data, struct bufref *out)
 {
-  size_t len = strlen(buffer);
-  char *message = NULL;
+  char *message = data->state.buffer;
+  size_t len = strlen(message);
 
   if(len > 4) {
     /* Find the start of the message */
     len -= 4;
-    for(message = buffer + 4; *message == ' ' || *message == '\t';
-        message++, len--)
+    for(message += 4; *message == ' ' || *message == '\t'; message++, len--)
       ;
 
     /* Find the end of the message */
-    for(; len--;)
+    while(len--)
       if(message[len] != '\r' && message[len] != '\n' && message[len] != ' ' &&
          message[len] != '\t')
         break;
 
     /* Terminate the message */
-    if(++len) {
-      message[len] = '\0';
-    }
+    message[++len] = '\0';
+    Curl_bufref_set(out, message, len, NULL);
   }
   else
     /* junk input => zero length output */
-    message = &buffer[len];
+    Curl_bufref_set(out, "", 0, NULL);
 
-  *outptr = message;
+  return CURLE_OK;
 }
 
 /***********************************************************************
@@ -422,16 +423,16 @@
  * authentication mechanism.
  */
 static CURLcode smtp_perform_auth(struct Curl_easy *data,
-                                  struct connectdata *conn,
                                   const char *mech,
-                                  const char *initresp)
+                                  const struct bufref *initresp)
 {
   CURLcode result = CURLE_OK;
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
+  struct smtp_conn *smtpc = &data->conn->proto.smtpc;
+  const char *ir = (const char *) Curl_bufref_ptr(initresp);
 
-  if(initresp) {                                  /* AUTH <mech> ...<crlf> */
+  if(ir) {                                  /* AUTH <mech> ...<crlf> */
     /* Send the AUTH command with the initial response */
-    result = Curl_pp_sendf(data, &smtpc->pp, "AUTH %s %s", mech, initresp);
+    result = Curl_pp_sendf(data, &smtpc->pp, "AUTH %s %s", mech, ir);
   }
   else {
     /* Send the AUTH command */
@@ -445,14 +446,33 @@
  *
  * smtp_continue_auth()
  *
- * Sends SASL continuation data or cancellation.
+ * Sends SASL continuation data.
  */
 static CURLcode smtp_continue_auth(struct Curl_easy *data,
-                                   struct connectdata *conn, const char *resp)
+                                   const char *mech,
+                                   const struct bufref *resp)
 {
-  struct smtp_conn *smtpc = &conn->proto.smtpc;
+  struct smtp_conn *smtpc = &data->conn->proto.smtpc;
 
-  return Curl_pp_sendf(data, &smtpc->pp, "%s", resp);
+  (void)mech;
+
+  return Curl_pp_sendf(data, &smtpc->pp,
+                       "%s", (const char *) Curl_bufref_ptr(resp));
+}
+
+/***********************************************************************
+ *
+ * smtp_cancel_auth()
+ *
+ * Sends SASL cancellation.
+ */
+static CURLcode smtp_cancel_auth(struct Curl_easy *data, const char *mech)
+{
+  struct smtp_conn *smtpc = &data->conn->proto.smtpc;
+
+  (void)mech;
+
+  return Curl_pp_sendf(data, &smtpc->pp, "*");
 }
 
 /***********************************************************************
@@ -470,7 +490,7 @@
   saslprogress progress;
 
   /* Check we have enough data to authenticate with, and the
-     server supports authentiation, and end the connect phase if not */
+     server supports authentication, and end the connect phase if not */
   if(!smtpc->auth_supported ||
      !Curl_sasl_can_authenticate(&smtpc->sasl, conn)) {
     state(data, SMTP_STOP);
@@ -478,7 +498,7 @@
   }
 
   /* Calculate the SASL login details */
-  result = Curl_sasl_start(&smtpc->sasl, data, conn, FALSE, &progress);
+  result = Curl_sasl_start(&smtpc->sasl, data, FALSE, &progress);
 
   if(!result) {
     if(progress == SASL_INPROGRESS)
@@ -507,7 +527,7 @@
 
   if(smtp->rcpt) {
     /* We notify the server we are sending UTF-8 data if a) it supports the
-       SMTPUTF8 extension and b) The mailbox contains UTF-8 charaacters, in
+       SMTPUTF8 extension and b) The mailbox contains UTF-8 characters, in
        either the local address or host name parts. This is regardless of
        whether the host name is encoded using IDN ACE */
     bool utf8 = FALSE;
@@ -580,7 +600,7 @@
   struct connectdata *conn = data->conn;
 
   /* We notify the server we are sending UTF-8 data if a) it supports the
-     SMTPUTF8 extension and b) The mailbox contains UTF-8 charaacters, in
+     SMTPUTF8 extension and b) The mailbox contains UTF-8 characters, in
      either the local address or host name parts. This is regardless of
      whether the host name is encoded using IDN ACE */
   bool utf8 = FALSE;
@@ -835,6 +855,10 @@
   CURLcode result = CURLE_OK;
   (void)instate; /* no use for this yet */
 
+  /* Pipelining in response is forbidden. */
+  if(data->conn->proto.smtpc.pp.cache_size)
+    return CURLE_WEIRD_SERVER_REPLY;
+
   if(smtpcode != 220) {
     if(data->set.use_ssl != CURLUSESSL_TRY) {
       failf(data, "STARTTLS denied, code %d", smtpcode);
@@ -982,7 +1006,7 @@
 
   (void)instate; /* no use for this yet */
 
-  result = Curl_sasl_continue(&smtpc->sasl, data, conn, smtpcode, &progress);
+  result = Curl_sasl_continue(&smtpc->sasl, data, smtpcode, &progress);
   if(!result)
     switch(progress) {
     case SASL_DONE:
@@ -1330,7 +1354,7 @@
   PINGPONG_SETUP(pp, smtp_statemachine, smtp_endofresp);
 
   /* Initialize the SASL storage */
-  Curl_sasl_init(&smtpc->sasl, &saslsmtp);
+  Curl_sasl_init(&smtpc->sasl, data, &saslsmtp);
 
   /* Initialise the pingpong layer */
   Curl_pp_setup(pp);
@@ -1652,8 +1676,6 @@
   struct smtp_conn *smtpc = &conn->proto.smtpc;
   const char *ptr = conn->options;
 
-  smtpc->sasl.resetprefs = TRUE;
-
   while(!result && ptr && *ptr) {
     const char *key = ptr;
     const char *value;
diff --git a/lib/socks.c b/lib/socks.c
index 91c4223..db4c808 100644
--- a/lib/socks.c
+++ b/lib/socks.c
@@ -99,24 +99,24 @@
 }
 #endif
 
-#ifndef DEBUGBUILD
-#define sxstate(x,y) socksstate(x,y)
-#else
+#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
+#define DEBUG_AND_VERBOSE
 #define sxstate(x,y) socksstate(x,y, __LINE__)
+#else
+#define sxstate(x,y) socksstate(x,y)
 #endif
 
-
 /* always use this function to change state, to make debugging easier */
 static void socksstate(struct Curl_easy *data,
                        enum connect_t state
-#ifdef DEBUGBUILD
+#ifdef DEBUG_AND_VERBOSE
                        , int lineno
 #endif
 )
 {
   struct connectdata *conn = data->conn;
   enum connect_t oldstate = conn->cnnct.state;
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
+#ifdef DEBUG_AND_VERBOSE
   /* synced with the state list in urldata.h */
   static const char * const statename[] = {
     "INIT",
@@ -146,7 +146,7 @@
 
   conn->cnnct.state = state;
 
-#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
+#ifdef DEBUG_AND_VERBOSE
   infof(data,
         "SXSTATE: %s => %s conn %p; line %d",
         statename[oldstate], statename[conn->cnnct.state], conn,
diff --git a/lib/socks_gssapi.c b/lib/socks_gssapi.c
index 34bfa37..8ef2f8f 100644
--- a/lib/socks_gssapi.c
+++ b/lib/socks_gssapi.c
@@ -257,7 +257,7 @@
       return CURLE_COULDNT_CONNECT;
     }
 
-    if(socksreq[1] != 1) { /* status / messgae type */
+    if(socksreq[1] != 1) { /* status / message type */
       failf(data, "Invalid GSS-API authentication response type (%d %d).",
             socksreq[0], socksreq[1]);
       gss_release_name(&gss_status, &server);
@@ -452,7 +452,7 @@
     return CURLE_COULDNT_CONNECT;
   }
 
-  if(socksreq[1] != 2) { /* status / messgae type */
+  if(socksreq[1] != 2) { /* status / message type */
     failf(data, "Invalid GSS-API encryption response type (%d %d).",
           socksreq[0], socksreq[1]);
     gss_delete_sec_context(&gss_status, &gss_context, NULL);
diff --git a/lib/socks_sspi.c b/lib/socks_sspi.c
index cb225b9..ffc8703 100644
--- a/lib/socks_sspi.c
+++ b/lib/socks_sspi.c
@@ -277,7 +277,7 @@
       return CURLE_COULDNT_CONNECT;
     }
 
-    if(socksreq[1] != 1) { /* status / messgae type */
+    if(socksreq[1] != 1) { /* status / message type */
       failf(data, "Invalid SSPI authentication response type (%u %u).",
             (unsigned int)socksreq[0], (unsigned int)socksreq[1]);
       free(service_name);
diff --git a/lib/splay.c b/lib/splay.c
index a94e2c8..1c1dafb 100644
--- a/lib/splay.c
+++ b/lib/splay.c
@@ -154,7 +154,7 @@
                                     struct Curl_tree *t,
                                     struct Curl_tree **removed)
 {
-  static struct curltime tv_zero = {0, 0};
+  static const struct curltime tv_zero = {0, 0};
   struct Curl_tree *x;
 
   if(!t) {
diff --git a/lib/strdup.c b/lib/strdup.c
index 9af47ea..85cf33b 100644
--- a/lib/strdup.c
+++ b/lib/strdup.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -24,6 +24,10 @@
 
 #include <curl/curl.h>
 
+#ifdef WIN32
+#include <wchar.h>
+#endif
+
 #include "strdup.h"
 #include "curl_memory.h"
 
@@ -50,6 +54,28 @@
 }
 #endif
 
+#ifdef WIN32
+/***************************************************************************
+ *
+ * Curl_wcsdup(source)
+ *
+ * Copies the 'source' wchar string to a newly allocated buffer (that is
+ * returned).
+ *
+ * Returns the new pointer or NULL on failure.
+ *
+ ***************************************************************************/
+wchar_t *Curl_wcsdup(const wchar_t *src)
+{
+  size_t length = wcslen(src);
+
+  if(length > (SIZE_T_MAX / sizeof(wchar_t)) - 1)
+    return (wchar_t *)NULL; /* integer overflow */
+
+  return (wchar_t *)Curl_memdup(src, (length + 1) * sizeof(wchar_t));
+}
+#endif
+
 /***************************************************************************
  *
  * Curl_memdup(source, length)
diff --git a/lib/strdup.h b/lib/strdup.h
index 0936956..8c8a6f2 100644
--- a/lib/strdup.h
+++ b/lib/strdup.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -26,6 +26,9 @@
 #ifndef HAVE_STRDUP
 extern char *curlx_strdup(const char *str);
 #endif
+#ifdef WIN32
+wchar_t* Curl_wcsdup(const wchar_t* src);
+#endif
 void *Curl_memdup(const void *src, size_t buffer_length);
 void *Curl_saferealloc(void *ptr, size_t size);
 
diff --git a/lib/strerror.c b/lib/strerror.c
index a1ec539..31eb2bf 100644
--- a/lib/strerror.c
+++ b/lib/strerror.c
@@ -453,6 +453,78 @@
 #endif
 }
 
+const char *
+curl_url_strerror(CURLUcode error)
+{
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+  switch(error) {
+  case CURLUE_OK:
+    return "No error";
+
+  case CURLUE_BAD_HANDLE:
+    return "An invalid CURLU pointer was passed as argument";
+
+  case CURLUE_BAD_PARTPOINTER:
+    return "An invalid 'part' argument was passed as argument";
+
+  case CURLUE_MALFORMED_INPUT:
+    return "A malformed input was passed to a URL API function";
+
+  case CURLUE_BAD_PORT_NUMBER:
+    return "The port number was not a decimal number between 0 and 65535";
+
+  case CURLUE_UNSUPPORTED_SCHEME:
+    return "This libcurl build doesn't support the given URL scheme";
+
+  case CURLUE_URLDECODE:
+    return "URL decode error, most likely because of rubbish in the input";
+
+  case CURLUE_OUT_OF_MEMORY:
+    return "A memory function failed";
+
+  case CURLUE_USER_NOT_ALLOWED:
+    return "Credentials was passed in the URL when prohibited";
+
+  case CURLUE_UNKNOWN_PART:
+    return "An unknown part ID was passed to a URL API function";
+
+  case CURLUE_NO_SCHEME:
+    return "There is no scheme part in the URL";
+
+  case CURLUE_NO_USER:
+    return "There is no user part in the URL";
+
+  case CURLUE_NO_PASSWORD:
+    return "There is no password part in the URL";
+
+  case CURLUE_NO_OPTIONS:
+    return "There is no options part in the URL";
+
+  case CURLUE_NO_HOST:
+    return "There is no host part in the URL";
+
+  case CURLUE_NO_PORT:
+    return "There is no port part in the URL";
+
+  case CURLUE_NO_QUERY:
+    return "There is no query part in the URL";
+
+  case CURLUE_NO_FRAGMENT:
+    return "There is no fragment part in the URL";
+
+  case CURLUE_LAST:
+    break;
+  }
+
+  return "CURLUcode unknown";
+#else
+  if(error == CURLUE_OK)
+    return "No error";
+  else
+    return "Error";
+#endif
+}
+
 #ifdef USE_WINSOCK
 /* This is a helper function for Curl_strerror that converts Winsock error
  * codes (WSAGetLastError) to error messages.
@@ -735,7 +807,7 @@
 #if defined(WIN32)
   /* 'sys_nerr' is the maximum errno number, it is not widely portable */
   if(err >= 0 && err < sys_nerr)
-    strncpy(buf, strerror(err), max);
+    strncpy(buf, sys_errlist[err], max);
   else
 #endif
   {
@@ -786,6 +858,7 @@
   }
 #else
   {
+    /* !checksrc! disable STRERROR 1 */
     const char *msg = strerror(err);
     if(msg)
       strncpy(buf, msg, max);
diff --git a/lib/system_win32.c b/lib/system_win32.c
index 2939fd0..d4e1948 100644
--- a/lib/system_win32.c
+++ b/lib/system_win32.c
@@ -102,6 +102,8 @@
       Curl_if_nametoindex = pIfNameToIndex;
   }
 
+  /* curlx_verify_windows_version must be called during init at least once
+     because it has its own initialization routine. */
   if(curlx_verify_windows_version(6, 0, PLATFORM_WINNT,
                                   VERSION_GREATER_THAN_EQUAL)) {
     Curl_isVistaOrGreater = TRUE;
diff --git a/lib/tftp.c b/lib/tftp.c
index 8aeb14a..7e5246f 100644
--- a/lib/tftp.c
+++ b/lib/tftp.c
@@ -720,7 +720,7 @@
          /* There's a bug in tftpd-hpa that causes it to send us an ack for
           * 65535 when the block number wraps to 0. So when we're expecting
           * 0, also accept 65535. See
-          * http://syslinux.zytor.com/archives/2010-September/015253.html
+          * https://www.syslinux.org/archives/2010-September/015612.html
           * */
          !(state->block == 0 && rblock == 65535)) {
         /* This isn't the expected block.  Log it and up the retry counter */
@@ -1304,9 +1304,9 @@
 
 /**********************************************************
  *
- * tftp_peform
+ * tftp_perform
  *
- * Entry point for transfer from tftp_do, sarts state mach
+ * Entry point for transfer from tftp_do, starts state mach
  *
  **********************************************************/
 static CURLcode tftp_perform(struct Curl_easy *data, bool *dophase_done)
diff --git a/lib/transfer.c b/lib/transfer.c
index 3e650b5..05fec79 100644
--- a/lib/transfer.c
+++ b/lib/transfer.c
@@ -1503,7 +1503,7 @@
     }
 #endif
     Curl_http2_init_state(&data->state);
-    Curl_hsts_loadcb(data, data->hsts);
+    result = Curl_hsts_loadcb(data, data->hsts);
   }
 
   /*
diff --git a/lib/url.c b/lib/url.c
index 8a2845d..93b4397 100644
--- a/lib/url.c
+++ b/lib/url.c
@@ -622,6 +622,7 @@
   set->upkeep_interval_ms = CURL_UPKEEP_INTERVAL_DEFAULT;
   set->maxconnects = DEFAULT_CONNCACHE_SIZE; /* for easy handles */
   set->maxage_conn = 118;
+  set->maxlifetime_conn = 0;
   set->http09_allowed = FALSE;
   set->httpwant =
 #ifdef USE_NGHTTP2
@@ -962,21 +963,36 @@
 #define socks_proxy_info_matches(x,y) FALSE
 #endif
 
-/* A connection has to have been idle for a shorter time than 'maxage_conn' to
-   be subject for reuse. The success rate is just too low after this. */
+/* A connection has to have been idle for a shorter time than 'maxage_conn'
+   (the success rate is just too low after this), or created less than
+   'maxlifetime_conn' ago, to be subject for reuse. */
 
 static bool conn_maxage(struct Curl_easy *data,
                         struct connectdata *conn,
                         struct curltime now)
 {
-  timediff_t idletime = Curl_timediff(now, conn->lastused);
+  timediff_t idletime, lifetime;
+
+  idletime = Curl_timediff(now, conn->lastused);
   idletime /= 1000; /* integer seconds is fine */
 
   if(idletime > data->set.maxage_conn) {
-    infof(data, "Too old connection (%ld seconds), disconnect it",
+    infof(data, "Too old connection (%ld seconds idle), disconnect it",
           idletime);
     return TRUE;
   }
+
+  lifetime = Curl_timediff(now, conn->created);
+  lifetime /= 1000; /* integer seconds is fine */
+
+  if(data->set.maxlifetime_conn && lifetime > data->set.maxlifetime_conn) {
+    infof(data,
+          "Too old connection (%ld seconds since creation), disconnect it",
+          lifetime);
+    return TRUE;
+  }
+
+
   return FALSE;
 }
 
@@ -1892,9 +1908,13 @@
 #else
       scopeidx = if_nametoindex(zoneid);
 #endif
-      if(!scopeidx)
+      if(!scopeidx) {
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+        char buffer[STRERROR_LEN];
         infof(data, "Invalid zoneid: %s; %s", zoneid,
-              strerror(errno));
+              Curl_strerror(errno, buffer, sizeof(buffer)));
+#endif
+      }
       else
         conn->scope_id = scopeidx;
     }
@@ -1950,7 +1970,8 @@
                      CURLU_DISALLOW_USER : 0) |
                     (data->set.path_as_is ? CURLU_PATH_AS_IS : 0));
     if(uc) {
-      DEBUGF(infof(data, "curl_url_set rejected %s", data->state.url));
+      DEBUGF(infof(data, "curl_url_set rejected %s: %s", data->state.url,
+                   curl_url_strerror(uc)));
       return Curl_uc_to_curlcode(uc);
     }
 
@@ -2376,6 +2397,11 @@
   CURLcode result = CURLE_OK;
   char *scheme = NULL;
 
+  if(!uhp) {
+    result = CURLE_OUT_OF_MEMORY;
+    goto error;
+  }
+
   /* When parsing the proxy, allowing non-supported schemes since we have
      these made up ones for proxies. Guess scheme for URLs without it. */
   uc = curl_url_set(uhp, CURLUPART_URL, proxy,
@@ -2759,7 +2785,7 @@
   size_t plen;
   size_t olen;
 
-  /* the input length check is because this is called directcly from setopt
+  /* the input length check is because this is called directly from setopt
      and isn't going through the regular string length check */
   size_t llen = strlen(login);
   if(llen > CURL_MAX_INPUT_LENGTH)
@@ -4089,7 +4115,7 @@
   /* init the single-transfer specific data */
   Curl_free_request_state(data);
   memset(&data->req, 0, sizeof(struct SingleRequest));
-  data->req.maxdownload = -1;
+  data->req.size = data->req.maxdownload = -1;
 
   /* call the stuff that needs to be called */
   result = create_conn(data, &conn, asyncp);
diff --git a/lib/urlapi.c b/lib/urlapi.c
index 905c499..6d116b6 100644
--- a/lib/urlapi.c
+++ b/lib/urlapi.c
@@ -157,23 +157,23 @@
       continue;
     }
 
-    switch(*ptr) {
-    case '?':
-      left = FALSE;
-      /* FALLTHROUGH */
-    default:
-      if(urlchar_needs_escaping(*ptr))
-        newlen += 2;
-      newlen++;
-      break;
-    case ' ':
+    if(*ptr == ' ') {
       if(left)
         newlen += 3;
       else
         newlen++;
-      break;
+      continue;
     }
+
+    if (*ptr == '?')
+      left = FALSE;
+
+    if(urlchar_needs_escaping(*ptr))
+      newlen += 2;
+
+    newlen++;
   }
+
   return newlen;
 }
 
@@ -202,19 +202,7 @@
       continue;
     }
 
-    switch(*iptr) {
-    case '?':
-      left = FALSE;
-      /* FALLTHROUGH */
-    default:
-      if(urlchar_needs_escaping(*iptr)) {
-        msnprintf(optr, 4, "%%%02x", *iptr);
-        optr += 3;
-      }
-      else
-        *optr++=*iptr;
-      break;
-    case ' ':
+    if(*iptr == ' ') {
       if(left) {
         *optr++='%'; /* add a '%' */
         *optr++='2'; /* add a '2' */
@@ -222,8 +210,18 @@
       }
       else
         *optr++='+'; /* add a '+' here */
-      break;
+      continue;
     }
+
+    if(*iptr == '?')
+      left = FALSE;
+
+    if(urlchar_needs_escaping(*iptr)) {
+      msnprintf(optr, 4, "%%%02x", *iptr);
+      optr += 3;
+    }
+    else
+      *optr++ = *iptr;
   }
   *optr = 0; /* null-terminate output buffer */
 
@@ -656,7 +654,7 @@
   }
   else {
     /* letters from the second string is not ok */
-    len = strcspn(hostname, " ");
+    len = strcspn(hostname, " \r\n");
     if(hlen != len)
       /* hostname with bad content */
       return CURLUE_MALFORMED_INPUT;
@@ -756,10 +754,35 @@
   return TRUE;
 }
 
+/* return strdup'ed version in 'outp', possibly percent decoded */
+static CURLUcode decode_host(char *hostname, char **outp)
+{
+  char *per = NULL;
+  if(hostname[0] != '[')
+    /* only decode if not an ipv6 numerical */
+    per = strchr(hostname, '%');
+  if(!per) {
+    *outp = strdup(hostname);
+    if(!*outp)
+      return CURLUE_OUT_OF_MEMORY;
+  }
+  else {
+    /* might be encoded */
+    size_t dlen;
+    CURLcode result = Curl_urldecode(NULL, hostname, 0,
+                                     outp, &dlen, REJECT_CTRL);
+    if(result)
+      return CURLUE_MALFORMED_INPUT;
+  }
+
+  return CURLUE_OK;
+}
+
 static CURLUcode seturl(const char *url, CURLU *u, unsigned int flags)
 {
   char *path;
   bool path_alloced = FALSE;
+  bool uncpath = FALSE;
   char *hostname;
   char *query = NULL;
   char *fragment = NULL;
@@ -770,8 +793,7 @@
   size_t schemelen = 0;
   size_t urllen;
 
-  if(!url)
-    return CURLUE_MALFORMED_INPUT;
+  DEBUGASSERT(url);
 
   /*************************************************************
    * Parse the URL.
@@ -799,7 +821,6 @@
     /* path has been allocated large enough to hold this */
     strcpy(path, &url[5]);
 
-    hostname = NULL; /* no host for file: URLs */
     u->scheme = strdup("file");
     if(!u->scheme)
       return CURLUE_OUT_OF_MEMORY;
@@ -821,10 +842,13 @@
        *
        *  o the hostname matches "localhost" (case-insensitively), or
        *
-       *  o the hostname is a FQDN that resolves to this machine.
+       *  o the hostname is a FQDN that resolves to this machine, or
+       *
+       *  o it is an UNC String transformed to an URI (Windows only, RFC 8089
+       *    Appendix E.3).
        *
        * For brevity, we only consider URLs with empty, "localhost", or
-       * "127.0.0.1" hostnames as local.
+       * "127.0.0.1" hostnames as local, otherwise as an UNC String.
        *
        * Additionally, there is an exception for URLs with a Windows drive
        * letter in the authority (which was accidentally omitted from RFC 8089
@@ -833,18 +857,43 @@
       if(ptr[0] != '/' && !STARTS_WITH_URL_DRIVE_PREFIX(ptr)) {
         /* the URL includes a host name, it must match "localhost" or
            "127.0.0.1" to be valid */
-        if(!checkprefix("localhost/", ptr) &&
-           !checkprefix("127.0.0.1/", ptr)) {
+        if(checkprefix("localhost/", ptr) ||
+           checkprefix("127.0.0.1/", ptr)) {
+          ptr += 9; /* now points to the slash after the host */
+        }
+        else {
+#if defined(WIN32)
+          size_t len;
+
+          /* the host name, NetBIOS computer name, can not contain disallowed
+             chars, and the delimiting slash character must be appended to the
+             host name */
+          path = strpbrk(ptr, "/\\:*?\"<>|");
+          if(!path || *path != '/')
+            return CURLUE_MALFORMED_INPUT;
+
+          len = path - ptr;
+          if(len) {
+            memcpy(hostname, ptr, len);
+            hostname[len] = 0;
+            uncpath = TRUE;
+          }
+
+          ptr -= 2; /* now points to the // before the host in UNC */
+#else
           /* Invalid file://hostname/, expected localhost or 127.0.0.1 or
              none */
           return CURLUE_MALFORMED_INPUT;
+#endif
         }
-        ptr += 9; /* now points to the slash after the host */
       }
 
       path = ptr;
     }
 
+    if(!uncpath)
+        hostname = NULL; /* no host for file: URLs by default */
+
 #if !defined(MSDOS) && !defined(WIN32) && !defined(__CYGWIN__)
     /* Don't allow Windows drive letters when not in Windows.
      * This catches both "file:/c:" and "file:c:" */
@@ -1004,20 +1053,22 @@
 
     if(0 == strlen(hostname) && (flags & CURLU_NO_AUTHORITY)) {
       /* Skip hostname check, it's allowed to be empty. */
+      u->host = strdup("");
     }
     else {
-      result = hostname_check(u, hostname);
-      if(result)
-        return result;
+      if(ipv4_normalize(hostname, normalized_ipv4, sizeof(normalized_ipv4)))
+        u->host = strdup(normalized_ipv4);
+      else {
+        result = decode_host(hostname, &u->host);
+        if(result)
+          return result;
+        result = hostname_check(u, u->host);
+        if(result)
+          return result;
+      }
     }
-
-    if(ipv4_normalize(hostname, normalized_ipv4, sizeof(normalized_ipv4)))
-      u->host = strdup(normalized_ipv4);
-    else
-      u->host = strdup(hostname);
     if(!u->host)
       return CURLUE_OUT_OF_MEMORY;
-
     if((flags & CURLU_GUESS_SCHEME) && !schemep) {
       /* legacy curl-style guess based on host name */
       if(checkprefix("ftp.", hostname))
@@ -1112,6 +1163,7 @@
   CURLUcode ifmissing = CURLUE_UNKNOWN_PART;
   char portbuf[7];
   bool urldecode = (flags & CURLU_URLDECODE)?1:0;
+  bool urlencode = (flags & CURLU_URLENCODE)?1:0;
   bool plusdecode = FALSE;
   (void)flags;
   if(!u)
@@ -1229,16 +1281,54 @@
       if(h && !(h->flags & PROTOPT_URLOPTIONS))
         options = NULL;
 
-      if((u->host[0] == '[') && u->zoneid) {
-        /* make it '[ host %25 zoneid ]' */
-        size_t hostlen = strlen(u->host);
-        size_t alen = hostlen + 3 + strlen(u->zoneid) + 1;
-        allochost = malloc(alen);
+      if(u->host[0] == '[') {
+        if(u->zoneid) {
+          /* make it '[ host %25 zoneid ]' */
+          size_t hostlen = strlen(u->host);
+          size_t alen = hostlen + 3 + strlen(u->zoneid) + 1;
+          allochost = malloc(alen);
+          if(!allochost)
+            return CURLUE_OUT_OF_MEMORY;
+          memcpy(allochost, u->host, hostlen - 1);
+          msnprintf(&allochost[hostlen - 1], alen - hostlen + 1,
+                    "%%25%s]", u->zoneid);
+        }
+      }
+      else if(urlencode) {
+        allochost = curl_easy_escape(NULL, u->host, 0);
         if(!allochost)
           return CURLUE_OUT_OF_MEMORY;
-        memcpy(allochost, u->host, hostlen - 1);
-        msnprintf(&allochost[hostlen - 1], alen - hostlen + 1,
-                  "%%25%s]", u->zoneid);
+      }
+      else {
+        /* only encode '%' in output host name */
+        char *host = u->host;
+        size_t pcount = 0;
+        /* first, count number of percents present in the name */
+        while(*host) {
+          if(*host == '%')
+            pcount++;
+          host++;
+        }
+        /* if there were percents, encode the host name */
+        if(pcount) {
+          size_t hostlen = strlen(u->host);
+          size_t alen = hostlen + 2 * pcount + 1;
+          char *o = allochost = malloc(alen);
+          if(!allochost)
+            return CURLUE_OUT_OF_MEMORY;
+
+          host = u->host;
+          while(*host) {
+            if(*host == '%') {
+              memcpy(o, "%25", 3);
+              o += 3;
+              host++;
+              continue;
+            }
+            *o++ = *host++;
+          }
+          *o = '\0';
+        }
       }
 
       url = aprintf("%s://%s%s%s%s%s%s%s%s%s%s%s%s%s%s%s",
@@ -1380,10 +1470,15 @@
   case CURLUPART_OPTIONS:
     storep = &u->options;
     break;
-  case CURLUPART_HOST:
+  case CURLUPART_HOST: {
+    size_t len = strcspn(part, " \r\n");
+    if(strlen(part) != len)
+      /* hostname with bad content */
+      return CURLUE_MALFORMED_INPUT;
     storep = &u->host;
     Curl_safefree(u->zoneid);
     break;
+  }
   case CURLUPART_ZONEID:
     storep = &u->zoneid;
     break;
diff --git a/lib/urldata.h b/lib/urldata.h
index 1d99112..2206888 100644
--- a/lib/urldata.h
+++ b/lib/urldata.h
@@ -330,7 +330,7 @@
   char *opaque;
   char *qop;
   char *algorithm;
-  int nc; /* nounce count */
+  int nc; /* nonce count */
   BIT(stale); /* set true for re-negotiation */
   BIT(userhash);
 #endif
@@ -704,14 +704,15 @@
 #ifndef CURL_DISABLE_DOH
   struct dohdata *doh; /* DoH specific data for this request */
 #endif
-  BIT(header);       /* incoming data has HTTP header */
+  BIT(header);        /* incoming data has HTTP header */
   BIT(content_range); /* set TRUE if Content-Range: was found */
-  BIT(upload_done);  /* set to TRUE when doing chunked transfer-encoding
-                        upload and we're uploading the last chunk */
-  BIT(ignorebody);   /* we read a response-body but we ignore it! */
+  BIT(upload_done);   /* set to TRUE when doing chunked transfer-encoding
+                         upload and we're uploading the last chunk */
+  BIT(ignorebody);    /* we read a response-body but we ignore it! */
   BIT(http_bodyless); /* HTTP response status code is between 100 and 199,
                          204 or 304 */
-  BIT(chunk); /* if set, this is a chunked transfer-encoding */
+  BIT(chunk);         /* if set, this is a chunked transfer-encoding */
+  BIT(ignore_cl);     /* ignore content-length */
   BIT(upload_chunky); /* set TRUE if we are doing chunked transfer-encoding
                          on upload */
   BIT(getheader);    /* TRUE if header parsing is wanted */
@@ -1553,6 +1554,7 @@
   STRING_SSH_PRIVATE_KEY, /* path to the private key file for auth */
   STRING_SSH_PUBLIC_KEY,  /* path to the public key file for auth */
   STRING_SSH_HOST_PUBLIC_KEY_MD5, /* md5 of host public key in ascii hex */
+  STRING_SSH_HOST_PUBLIC_KEY_SHA256, /* sha256 of host public key in base64 */
   STRING_SSH_KNOWNHOSTS,  /* file name of knownhosts file */
   STRING_PROXY_SERVICE_NAME, /* Proxy service name */
   STRING_SERVICE_NAME,    /* Service name */
@@ -1650,6 +1652,8 @@
   curl_closesocket_callback fclosesocket; /* function for closing the
                                              socket */
   void *closesocket_client;
+  curl_prereq_callback fprereq; /* pre-initial request callback */
+  void *prereq_userp; /* pre-initial request user data */
 
   void *seek_client;    /* pointer to pass to the seek callback */
   /* the 3 curl_conv_callback functions below are used on non-ASCII hosts */
@@ -1674,6 +1678,8 @@
   long server_response_timeout; /* in milliseconds, 0 means no timeout */
   long maxage_conn;     /* in seconds, max idle time to allow a connection that
                            is to be reused */
+  long maxlifetime_conn; /* in seconds, max time since creation to allow a
+                            connection that is to be reused */
   long tftp_blksize;    /* in bytes, 0 means use default */
   curl_off_t filesize;  /* size of file to upload, -1 means unknown */
   long low_speed_limit; /* bytes/second */
@@ -1851,7 +1857,6 @@
   BIT(abstract_unix_socket);
   BIT(disallow_username_in_url); /* disallow username in url */
   BIT(doh); /* DNS-over-HTTPS enabled */
-  BIT(doh_get); /* use GET for DoH requests, instead of POST */
   BIT(doh_verifypeer);     /* DoH certificate peer verification */
   BIT(doh_verifyhost);     /* DoH certificate hostname verification */
   BIT(doh_verifystatus);   /* DoH certificate status verification */
diff --git a/lib/vauth/krb5_gssapi.c b/lib/vauth/krb5_gssapi.c
index fee24ee..67d43bd 100644
--- a/lib/vauth/krb5_gssapi.c
+++ b/lib/vauth/krb5_gssapi.c
@@ -170,6 +170,7 @@
  * Parameters:
  *
  * data    [in]     - The session handle.
+ * authzid [in]     - The authorization identity if some.
  * chlg    [in]     - Optional challenge message.
  * krb5    [in/out] - The Kerberos 5 data struct being used and modified.
  * out     [out]    - The result storage.
@@ -177,6 +178,7 @@
  * Returns CURLE_OK on success.
  */
 CURLcode Curl_auth_create_gssapi_security_message(struct Curl_easy *data,
+                                                  const char *authzid,
                                                   const struct bufref *chlg,
                                                   struct kerberos5data *krb5,
                                                   struct bufref *out)
@@ -189,13 +191,10 @@
   OM_uint32 unused_status;
   gss_buffer_desc input_token = GSS_C_EMPTY_BUFFER;
   gss_buffer_desc output_token = GSS_C_EMPTY_BUFFER;
-  unsigned int indata = 0;
-  unsigned int outdata = 0;
+  unsigned char *indata;
   gss_qop_t qop = GSS_C_QOP_DEFAULT;
   unsigned int sec_layer = 0;
   unsigned int max_size = 0;
-  gss_name_t username = GSS_C_NO_NAME;
-  gss_buffer_desc username_token;
 
   /* Ensure we have a valid challenge message */
   if(!Curl_bufref_len(chlg)) {
@@ -203,25 +202,6 @@
     return CURLE_BAD_CONTENT_ENCODING;
   }
 
-  /* Get the fully qualified username back from the context */
-  major_status = gss_inquire_context(&minor_status, krb5->context,
-                                     &username, NULL, NULL, NULL, NULL,
-                                     NULL, NULL);
-  if(GSS_ERROR(major_status)) {
-    Curl_gss_log_error(data, "gss_inquire_context() failed: ",
-                       major_status, minor_status);
-    return CURLE_AUTH_ERROR;
-  }
-
-  /* Convert the username from internal format to a displayable token */
-  major_status = gss_display_name(&minor_status, username,
-                                  &username_token, NULL);
-  if(GSS_ERROR(major_status)) {
-    Curl_gss_log_error(data, "gss_display_name() failed: ",
-                       major_status, minor_status);
-    return CURLE_AUTH_ERROR;
-  }
-
   /* Setup the challenge "input" security buffer */
   input_token.value = (void *) Curl_bufref_ptr(chlg);
   input_token.length = Curl_bufref_len(chlg);
@@ -232,32 +212,32 @@
   if(GSS_ERROR(major_status)) {
     Curl_gss_log_error(data, "gss_unwrap() failed: ",
                        major_status, minor_status);
-    gss_release_buffer(&unused_status, &username_token);
     return CURLE_BAD_CONTENT_ENCODING;
   }
 
   /* Not 4 octets long so fail as per RFC4752 Section 3.1 */
   if(output_token.length != 4) {
     infof(data, "GSSAPI handshake failure (invalid security data)");
-    gss_release_buffer(&unused_status, &username_token);
     return CURLE_BAD_CONTENT_ENCODING;
   }
 
-  /* Copy the data out and free the challenge as it is not required anymore */
-  memcpy(&indata, output_token.value, 4);
+  /* Extract the security layer and the maximum message size */
+  indata = output_token.value;
+  sec_layer = indata[0];
+  max_size = (indata[1] << 16) | (indata[2] << 8) | indata[3];
+
+  /* Free the challenge as it is not required anymore */
   gss_release_buffer(&unused_status, &output_token);
 
-  /* Extract the security layer */
-  sec_layer = indata & 0x000000FF;
+  /* Process the security layer */
   if(!(sec_layer & GSSAUTH_P_NONE)) {
     infof(data, "GSSAPI handshake failure (invalid security layer)");
 
-    gss_release_buffer(&unused_status, &username_token);
     return CURLE_BAD_CONTENT_ENCODING;
   }
+  sec_layer &= GSSAUTH_P_NONE;  /* We do not support a security layer */
 
-  /* Extract the maximum message size the server can receive */
-  max_size = ntohl(indata & 0xFFFFFF00);
+  /* Process the maximum message size the server can receive */
   if(max_size > 0) {
     /* The server has told us it supports a maximum receive buffer, however, as
        we don't require one unless we are encrypting data, we tell the server
@@ -266,26 +246,24 @@
   }
 
   /* Allocate our message */
-  messagelen = sizeof(outdata) + username_token.length + 1;
+  messagelen = 4;
+  if(authzid)
+    messagelen += strlen(authzid);
   message = malloc(messagelen);
-  if(!message) {
-    gss_release_buffer(&unused_status, &username_token);
+  if(!message)
     return CURLE_OUT_OF_MEMORY;
-  }
 
-  /* Populate the message with the security layer, client supported receive
-     message size and authorization identity including the 0x00 based
-     terminator. Note: Despite RFC4752 Section 3.1 stating "The authorization
-     identity is not terminated with the zero-valued (%x00) octet." it seems
-     necessary to include it. */
-  outdata = htonl(max_size) | sec_layer;
-  memcpy(message, &outdata, sizeof(outdata));
-  memcpy(message + sizeof(outdata), username_token.value,
-         username_token.length);
-  message[messagelen - 1] = '\0';
+  /* Populate the message with the security layer and client supported receive
+     message size. */
+  message[0] = sec_layer & 0xFF;
+  message[1] = (max_size >> 16) & 0xFF;
+  message[2] = (max_size >> 8) & 0xFF;
+  message[3] = max_size & 0xFF;
 
-  /* Free the username token as it is not required anymore */
-  gss_release_buffer(&unused_status, &username_token);
+  /* If given, append the authorization identity. */
+
+  if(authzid && *authzid)
+    memcpy(message + 4, authzid, messagelen - 4);
 
   /* Setup the "authentication data" security buffer */
   input_token.value = message;
diff --git a/lib/vauth/krb5_sspi.c b/lib/vauth/krb5_sspi.c
index 8f7a2b0..c652fd7 100644
--- a/lib/vauth/krb5_sspi.c
+++ b/lib/vauth/krb5_sspi.c
@@ -238,13 +238,15 @@
  * Parameters:
  *
  * data    [in]     - The session handle.
- * chlg     [in]     - The optional challenge message.
+ * authzid [in]     - The authorization identity if some.
+ * chlg    [in]     - The optional challenge message.
  * krb5    [in/out] - The Kerberos 5 data struct being used and modified.
  * out     [out]    - The result storage.
  *
  * Returns CURLE_OK on success.
  */
 CURLcode Curl_auth_create_gssapi_security_message(struct Curl_easy *data,
+                                                  const char *authzid,
                                                   const struct bufref *chlg,
                                                   struct kerberos5data *krb5,
                                                   struct bufref *out)
@@ -260,15 +262,12 @@
   SecBuffer wrap_buf[3];
   SecBufferDesc input_desc;
   SecBufferDesc wrap_desc;
-  unsigned long indata = 0;
-  unsigned long outdata = 0;
+  unsigned char *indata;
   unsigned long qop = 0;
   unsigned long sec_layer = 0;
   unsigned long max_size = 0;
   SecPkgContext_Sizes sizes;
-  SecPkgCredentials_Names names;
   SECURITY_STATUS status;
-  char *user_name;
 
 #if defined(CURL_DISABLE_VERBOSE_STRINGS)
   (void) data;
@@ -291,17 +290,6 @@
   if(status != SEC_E_OK)
     return CURLE_AUTH_ERROR;
 
-  /* Get the fully qualified username back from the context */
-  status = s_pSecFn->QueryCredentialsAttributes(krb5->credentials,
-                                                SECPKG_CRED_ATTR_NAMES,
-                                                &names);
-
-  if(status == SEC_E_INSUFFICIENT_MEMORY)
-    return CURLE_OUT_OF_MEMORY;
-
-  if(status != SEC_E_OK)
-    return CURLE_AUTH_ERROR;
-
   /* Setup the "input" security buffer */
   input_desc.ulVersion = SECBUFFER_VERSION;
   input_desc.cBuffers = 2;
@@ -326,19 +314,22 @@
     return CURLE_BAD_CONTENT_ENCODING;
   }
 
-  /* Copy the data out and free the challenge as it is not required anymore */
-  memcpy(&indata, input_buf[1].pvBuffer, 4);
+  /* Extract the security layer and the maximum message size */
+  indata = input_buf[1].pvBuffer;
+  sec_layer = indata[0];
+  max_size = (indata[1] << 16) | (indata[2] << 8) | indata[3];
+
+  /* Free the challenge as it is not required anymore */
   s_pSecFn->FreeContextBuffer(input_buf[1].pvBuffer);
 
-  /* Extract the security layer */
-  sec_layer = indata & 0x000000FF;
+  /* Process the security layer */
   if(!(sec_layer & KERB_WRAP_NO_ENCRYPT)) {
     infof(data, "GSSAPI handshake failure (invalid security layer)");
     return CURLE_BAD_CONTENT_ENCODING;
   }
+  sec_layer &= KERB_WRAP_NO_ENCRYPT;  /* We do not support a security layer */
 
-  /* Extract the maximum message size the server can receive */
-  max_size = ntohl(indata & 0xFFFFFF00);
+  /* Process the maximum message size the server can receive */
   if(max_size > 0) {
     /* The server has told us it supports a maximum receive buffer, however, as
        we don't require one unless we are encrypting data, we tell the server
@@ -351,33 +342,28 @@
   if(!trailer)
     return CURLE_OUT_OF_MEMORY;
 
-  /* Convert the user name to UTF8 when operating with Unicode */
-  user_name = curlx_convert_tchar_to_UTF8(names.sUserName);
-  if(!user_name) {
-    free(trailer);
-
-    return CURLE_OUT_OF_MEMORY;
-  }
-
   /* Allocate our message */
-  messagelen = sizeof(outdata) + strlen(user_name) + 1;
+  messagelen = 4;
+  if(authzid)
+    messagelen += strlen(authzid);
   message = malloc(messagelen);
   if(!message) {
     free(trailer);
-    curlx_unicodefree(user_name);
 
     return CURLE_OUT_OF_MEMORY;
   }
 
-  /* Populate the message with the security layer, client supported receive
-     message size and authorization identity including the 0x00 based
-     terminator. Note: Despite RFC4752 Section 3.1 stating "The authorization
-     identity is not terminated with the zero-valued (%x00) octet." it seems
-     necessary to include it. */
-  outdata = htonl(max_size) | sec_layer;
-  memcpy(message, &outdata, sizeof(outdata));
-  strcpy((char *) message + sizeof(outdata), user_name);
-  curlx_unicodefree(user_name);
+  /* Populate the message with the security layer and client supported receive
+     message size. */
+  message[0] = sec_layer & 0xFF;
+  message[1] = (max_size >> 16) & 0xFF;
+  message[2] = (max_size >> 8) & 0xFF;
+  message[3] = max_size & 0xFF;
+
+  /* If given, append the authorization identity. */
+
+  if(authzid && *authzid)
+    memcpy(message + 4, authzid, messagelen - 4);
 
   /* Allocate the padding */
   padding = malloc(sizes.cbBlockSize);
diff --git a/lib/vauth/vauth.h b/lib/vauth/vauth.h
index ec5b000..47a7c0b 100644
--- a/lib/vauth/vauth.h
+++ b/lib/vauth/vauth.h
@@ -194,6 +194,7 @@
 /* This is used to generate a base64 encoded GSSAPI (Kerberos V5) security
    token message */
 CURLcode Curl_auth_create_gssapi_security_message(struct Curl_easy *data,
+                                                  const char *authzid,
                                                   const struct bufref *chlg,
                                                   struct kerberos5data *krb5,
                                                   struct bufref *out);
diff --git a/lib/version_win32.c b/lib/version_win32.c
index b8157e9..2f84541 100644
--- a/lib/version_win32.c
+++ b/lib/version_win32.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 2016 - 2020, Steve Holme, <steve_holme@hotmail.com>.
+ * Copyright (C) 2016 - 2021, Steve Holme, <steve_holme@hotmail.com>.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -26,11 +26,28 @@
 
 #include <curl/curl.h>
 #include "version_win32.h"
+#include "warnless.h"
 
 /* The last #include files should be: */
 #include "curl_memory.h"
 #include "memdebug.h"
 
+/* This Unicode version struct works for VerifyVersionInfoW (OSVERSIONINFOEXW)
+   and RtlVerifyVersionInfo (RTLOSVERSIONINFOEXW) */
+struct OUR_OSVERSIONINFOEXW {
+  ULONG  dwOSVersionInfoSize;
+  ULONG  dwMajorVersion;
+  ULONG  dwMinorVersion;
+  ULONG  dwBuildNumber;
+  ULONG  dwPlatformId;
+  WCHAR  szCSDVersion[128];
+  USHORT wServicePackMajor;
+  USHORT wServicePackMinor;
+  USHORT wSuiteMask;
+  UCHAR  wProductType;
+  UCHAR  wReserved;
+};
+
 /*
  * curlx_verify_windows_version()
  *
@@ -152,12 +169,23 @@
   }
 #else
   ULONGLONG cm = 0;
-  OSVERSIONINFOEX osver;
+  struct OUR_OSVERSIONINFOEXW osver;
   BYTE majorCondition;
   BYTE minorCondition;
   BYTE spMajorCondition;
   BYTE spMinorCondition;
 
+  typedef LONG (APIENTRY *RTLVERIFYVERSIONINFO_FN)
+    (struct OUR_OSVERSIONINFOEXW *, ULONG, ULONGLONG);
+  static RTLVERIFYVERSIONINFO_FN pRtlVerifyVersionInfo;
+  static bool onetime = true; /* safe because first call is during init */
+
+  if(onetime) {
+    pRtlVerifyVersionInfo = CURLX_FUNCTION_CAST(RTLVERIFYVERSIONINFO_FN,
+      (GetProcAddress(GetModuleHandleA("ntdll"), "RtlVerifyVersionInfo")));
+    onetime = false;
+  }
+
   switch(condition) {
   case VERSION_LESS_THAN:
     majorCondition = VER_LESS;
@@ -214,10 +242,23 @@
   if(platform != PLATFORM_DONT_CARE)
     cm = VerSetConditionMask(cm, VER_PLATFORMID, VER_EQUAL);
 
-  if(VerifyVersionInfo(&osver, (VER_MAJORVERSION | VER_MINORVERSION |
-                                VER_SERVICEPACKMAJOR | VER_SERVICEPACKMINOR),
-                       cm))
-    matched = TRUE;
+  /* Later versions of Windows have version functions that may not return the
+     real version of Windows unless the application is so manifested. We prefer
+     the real version always, so we use the Rtl variant of the function when
+     possible. Note though the function signatures have underlying fundamental
+     types that are the same, the return values are different. */
+  if(pRtlVerifyVersionInfo) {
+    matched = !pRtlVerifyVersionInfo(&osver,
+      (VER_MAJORVERSION | VER_MINORVERSION |
+       VER_SERVICEPACKMAJOR | VER_SERVICEPACKMINOR),
+      cm);
+  }
+  else {
+    matched = !!VerifyVersionInfoW((OSVERSIONINFOEXW *)&osver,
+      (VER_MAJORVERSION | VER_MINORVERSION |
+       VER_SERVICEPACKMAJOR | VER_SERVICEPACKMINOR),
+      cm);
+  }
 #endif
 
   return matched;
diff --git a/lib/vquic/ngtcp2.c b/lib/vquic/ngtcp2.c
index fc449c4..dfe8f96 100644
--- a/lib/vquic/ngtcp2.c
+++ b/lib/vquic/ngtcp2.c
@@ -28,6 +28,9 @@
 #include <nghttp3/nghttp3.h>
 #ifdef USE_OPENSSL
 #include <openssl/err.h>
+#include <ngtcp2/ngtcp2_crypto_openssl.h>
+#elif defined(USE_GNUTLS)
+#include <ngtcp2/ngtcp2_crypto_gnutls.h>
 #endif
 #include "urldata.h"
 #include "sendf.h"
@@ -58,6 +61,7 @@
 #endif
 
 #define H3_ALPN_H3_29 "\x5h3-29"
+#define H3_ALPN_H3 "\x2h3"
 
 /*
  * This holds outgoing HTTP/3 stream data that is used by nghttp3 until acked.
@@ -117,42 +121,6 @@
 }
 #endif
 
-#ifdef USE_OPENSSL
-static ngtcp2_crypto_level
-quic_from_ossl_level(OSSL_ENCRYPTION_LEVEL ossl_level)
-{
-  switch(ossl_level) {
-  case ssl_encryption_initial:
-    return NGTCP2_CRYPTO_LEVEL_INITIAL;
-  case ssl_encryption_early_data:
-    return NGTCP2_CRYPTO_LEVEL_EARLY;
-  case ssl_encryption_handshake:
-    return NGTCP2_CRYPTO_LEVEL_HANDSHAKE;
-  case ssl_encryption_application:
-    return NGTCP2_CRYPTO_LEVEL_APPLICATION;
-  default:
-    assert(0);
-  }
-}
-#elif defined(USE_GNUTLS)
-static ngtcp2_crypto_level
-quic_from_gtls_level(gnutls_record_encryption_level_t gtls_level)
-{
-  switch(gtls_level) {
-  case GNUTLS_ENCRYPTION_LEVEL_INITIAL:
-    return NGTCP2_CRYPTO_LEVEL_INITIAL;
-  case GNUTLS_ENCRYPTION_LEVEL_EARLY:
-    return NGTCP2_CRYPTO_LEVEL_EARLY;
-  case GNUTLS_ENCRYPTION_LEVEL_HANDSHAKE:
-    return NGTCP2_CRYPTO_LEVEL_HANDSHAKE;
-  case GNUTLS_ENCRYPTION_LEVEL_APPLICATION:
-    return NGTCP2_CRYPTO_LEVEL_APPLICATION;
-  default:
-    assert(0);
-  }
-}
-#endif
-
 static void qlog_callback(void *user_data, uint32_t flags,
                           const void *data, size_t datalen)
 {
@@ -223,27 +191,9 @@
                                   ngtcp2_crypto_level level,
                                   const uint8_t *data, size_t len)
 {
-  struct quic_handshake *crypto_data;
   int rv;
 
-  crypto_data = &qs->crypto_data[level];
-  if(!crypto_data->buf) {
-    crypto_data->buf = malloc(4096);
-    if(!crypto_data->buf)
-      return 0;
-    crypto_data->alloclen = 4096;
-  }
-
-  /* TODO Just pretend that handshake does not grow more than 4KiB for
-     now */
-  assert(crypto_data->len + len <= crypto_data->alloclen);
-
-  memcpy(&crypto_data->buf[crypto_data->len], data, len);
-  crypto_data->len += len;
-
-  rv = ngtcp2_conn_submit_crypto_data(
-    qs->qconn, level, (uint8_t *)(&crypto_data->buf[crypto_data->len] - len),
-    len);
+  rv = ngtcp2_conn_submit_crypto_data(qs->qconn, level, data, len);
   if(rv) {
     H3BUGF(fprintf(stderr, "write_client_handshake failed\n"));
   }
@@ -260,7 +210,7 @@
                                        size_t secretlen)
 {
   struct quicsocket *qs = (struct quicsocket *)SSL_get_app_data(ssl);
-  int level = quic_from_ossl_level(ossl_level);
+  int level = ngtcp2_crypto_openssl_from_ossl_encryption_level(ossl_level);
 
   if(ngtcp2_crypto_derive_and_install_rx_key(
        qs->qconn, NULL, NULL, NULL, level, rx_secret, secretlen) != 0)
@@ -282,7 +232,8 @@
                                    const uint8_t *data, size_t len)
 {
   struct quicsocket *qs = (struct quicsocket *)SSL_get_app_data(ssl);
-  ngtcp2_crypto_level level = quic_from_ossl_level(ossl_level);
+  ngtcp2_crypto_level level =
+      ngtcp2_crypto_openssl_from_ossl_encryption_level(ossl_level);
 
   return write_client_handshake(qs, level, data, len);
 }
@@ -353,9 +304,10 @@
 
   SSL_set_app_data(qs->ssl, qs);
   SSL_set_connect_state(qs->ssl);
+  SSL_set_quic_use_legacy_codepoint(qs->ssl, 0);
 
-  alpn = (const uint8_t *)H3_ALPN_H3_29;
-  alpnlen = sizeof(H3_ALPN_H3_29) - 1;
+  alpn = (const uint8_t *)H3_ALPN_H3_29 H3_ALPN_H3;
+  alpnlen = sizeof(H3_ALPN_H3_29) - 1 + sizeof(H3_ALPN_H3) - 1;
   if(alpn)
     SSL_set_alpn_protos(qs->ssl, alpn, (int)alpnlen);
 
@@ -370,7 +322,8 @@
                        const void *tx_secret, size_t secretlen)
 {
   struct quicsocket *qs = gnutls_session_get_ptr(ssl);
-  int level = quic_from_gtls_level(gtls_level);
+  int level =
+      ngtcp2_crypto_gnutls_from_gnutls_record_encryption_level(gtls_level);
 
   if(level != NGTCP2_CRYPTO_LEVEL_EARLY &&
      ngtcp2_crypto_derive_and_install_rx_key(
@@ -395,7 +348,8 @@
                      size_t len)
 {
   struct quicsocket *qs = gnutls_session_get_ptr(ssl);
-  ngtcp2_crypto_level level = quic_from_gtls_level(gtls_level);
+  ngtcp2_crypto_level level =
+      ngtcp2_crypto_gnutls_from_gnutls_record_encryption_level(gtls_level);
   int rv;
 
   if(htype == GNUTLS_HANDSHAKE_CHANGE_CIPHER_SPEC)
@@ -465,7 +419,7 @@
 
 static int quic_init_ssl(struct quicsocket *qs)
 {
-  gnutls_datum_t alpn = {NULL, 0};
+  gnutls_datum_t alpn[2];
   /* this will need some attention when HTTPS proxy over QUIC get fixed */
   const char * const hostname = qs->conn->host.name;
   int rc;
@@ -487,12 +441,10 @@
   gnutls_alert_set_read_function(qs->ssl, alert_read_func);
 
   rc = gnutls_session_ext_register(qs->ssl, "QUIC Transport Parameters",
-                                   0xffa5, GNUTLS_EXT_TLS,
-                                   tp_recv_func, tp_send_func,
-                                   NULL, NULL, NULL,
-                                   GNUTLS_EXT_FLAG_TLS |
-                                   GNUTLS_EXT_FLAG_CLIENT_HELLO |
-                                   GNUTLS_EXT_FLAG_EE);
+         NGTCP2_TLSEXT_QUIC_TRANSPORT_PARAMETERS_V1, GNUTLS_EXT_TLS,
+         tp_recv_func, tp_send_func, NULL, NULL, NULL,
+         GNUTLS_EXT_FLAG_TLS | GNUTLS_EXT_FLAG_CLIENT_HELLO |
+         GNUTLS_EXT_FLAG_EE);
   if(rc < 0) {
     H3BUGF(fprintf(stderr, "gnutls_session_ext_register failed: %s\n",
                    gnutls_strerror(rc)));
@@ -532,10 +484,12 @@
   }
 
   /* strip the first byte (the length) from NGHTTP3_ALPN_H3 */
-  alpn.data = (unsigned char *)H3_ALPN_H3_29 + 1;
-  alpn.size = sizeof(H3_ALPN_H3_29) - 2;
-  if(alpn.data)
-    gnutls_alpn_set_protocols(qs->ssl, &alpn, 1, 0);
+  alpn[0].data = (unsigned char *)H3_ALPN_H3_29 + 1;
+  alpn[0].size = sizeof(H3_ALPN_H3_29) - 2;
+  alpn[1].data = (unsigned char *)H3_ALPN_H3 + 1;
+  alpn[1].size = sizeof(H3_ALPN_H3) - 2;
+
+  gnutls_alpn_set_protocols(qs->ssl, alpn, 2, GNUTLS_ALPN_MANDATORY);
 
   /* set SNI */
   gnutls_server_name_set(qs->ssl, GNUTLS_NAME_DNS, hostname, strlen(hostname));
@@ -543,22 +497,6 @@
 }
 #endif
 
-static int
-cb_recv_crypto_data(ngtcp2_conn *tconn, ngtcp2_crypto_level crypto_level,
-                    uint64_t offset,
-                    const uint8_t *data, size_t datalen,
-                    void *user_data)
-{
-  (void)offset;
-  (void)user_data;
-
-  if(ngtcp2_crypto_read_write_crypto_data(tconn, crypto_level, data,
-                                          datalen) != 0)
-    return NGTCP2_ERR_CRYPTO;
-
-  return 0;
-}
-
 static int cb_handshake_completed(ngtcp2_conn *tconn, void *user_data)
 {
   (void)user_data;
@@ -623,8 +561,8 @@
   return 0;
 }
 
-static int cb_stream_close(ngtcp2_conn *tconn, int64_t stream_id,
-                           uint64_t app_error_code,
+static int cb_stream_close(ngtcp2_conn *tconn, uint32_t flags,
+                           int64_t stream_id, uint64_t app_error_code,
                            void *user_data, void *stream_user_data)
 {
   struct quicsocket *qs = (struct quicsocket *)user_data;
@@ -633,6 +571,10 @@
   (void)stream_user_data;
   /* stream is closed... */
 
+  if(!(flags & NGTCP2_STREAM_CLOSE_FLAG_APP_ERROR_CODE_SET)) {
+    app_error_code = NGHTTP3_H3_NO_ERROR;
+  }
+
   rv = nghttp3_conn_close_stream(qs->h3conn, stream_id,
                                  app_error_code);
   if(rv) {
@@ -653,7 +595,25 @@
   (void)app_error_code;
   (void)stream_user_data;
 
-  rv = nghttp3_conn_reset_stream(qs->h3conn, stream_id);
+  rv = nghttp3_conn_shutdown_stream_read(qs->h3conn, stream_id);
+  if(rv) {
+    return NGTCP2_ERR_CALLBACK_FAILURE;
+  }
+
+  return 0;
+}
+
+static int cb_stream_stop_sending(ngtcp2_conn *tconn, int64_t stream_id,
+                                  uint64_t app_error_code, void *user_data,
+                                  void *stream_user_data)
+{
+  struct quicsocket *qs = (struct quicsocket *)user_data;
+  int rv;
+  (void)tconn;
+  (void)app_error_code;
+  (void)stream_user_data;
+
+  rv = nghttp3_conn_shutdown_stream_read(qs->h3conn, stream_id);
   if(rv) {
     return NGTCP2_ERR_CALLBACK_FAILURE;
   }
@@ -690,6 +650,20 @@
   return 0;
 }
 
+static void cb_rand(uint8_t *dest, size_t destlen,
+                    const ngtcp2_rand_ctx *rand_ctx)
+{
+  CURLcode result;
+  (void)rand_ctx;
+
+  result = Curl_rand(NULL, dest, destlen);
+  if(result) {
+    /* cb_rand is only used for non-cryptographic context.  If Curl_rand
+       failed, just fill 0 and call it *random*. */
+    memset(dest, 0, destlen);
+  }
+}
+
 static int cb_get_new_connection_id(ngtcp2_conn *tconn, ngtcp2_cid *cid,
                                     uint8_t *token, size_t cidlen,
                                     void *user_data)
@@ -713,14 +687,13 @@
 static ngtcp2_callbacks ng_callbacks = {
   ngtcp2_crypto_client_initial_cb,
   NULL, /* recv_client_initial */
-  cb_recv_crypto_data,
+  ngtcp2_crypto_recv_crypto_data_cb,
   cb_handshake_completed,
   NULL, /* recv_version_negotiation */
   ngtcp2_crypto_encrypt_cb,
   ngtcp2_crypto_decrypt_cb,
   ngtcp2_crypto_hp_mask_cb,
   cb_recv_stream_data,
-  NULL, /* acked_crypto_offset */
   cb_acked_stream_data_offset,
   NULL, /* stream_open */
   cb_stream_close,
@@ -728,7 +701,7 @@
   ngtcp2_crypto_recv_retry_cb,
   cb_extend_max_local_streams_bidi,
   NULL, /* extend_max_local_streams_uni */
-  NULL, /* rand  */
+  cb_rand,
   cb_get_new_connection_id,
   NULL, /* remove_connection_id */
   ngtcp2_crypto_update_key_cb, /* update_key */
@@ -745,7 +718,9 @@
   ngtcp2_crypto_delete_crypto_cipher_ctx_cb,
   NULL, /* recv_datagram */
   NULL, /* ack_datagram */
-  NULL  /* lost_datagram */
+  NULL, /* lost_datagram */
+  ngtcp2_crypto_get_path_challenge_data_cb,
+  cb_stream_stop_sending
 };
 
 /*
@@ -817,7 +792,7 @@
   ngtcp2_addr_init(&path.remote, addr, addrlen);
 
   rc = ngtcp2_conn_client_new(&qs->qconn, &qs->dcid, &qs->scid, &path,
-                              NGTCP2_PROTO_VER_MIN, &ng_callbacks,
+                              NGTCP2_PROTO_VER_V1, &ng_callbacks,
                               &qs->settings, &qs->transport_params, NULL, qs);
   if(rc)
     return CURLE_QUIC_CONNECT_ERROR;
@@ -833,7 +808,7 @@
 void Curl_quic_ver(char *p, size_t len)
 {
   const ngtcp2_info *ng2 = ngtcp2_version(0);
-  nghttp3_info *ht3 = nghttp3_version(0);
+  const nghttp3_info *ht3 = nghttp3_version(0);
   (void)msnprintf(p, len, "ngtcp2/%s nghttp3/%s",
                   ng2->version_str, ht3->version_str);
 }
@@ -859,7 +834,6 @@
 
 static void qs_disconnect(struct quicsocket *qs)
 {
-  int i;
   if(!qs->conn) /* already closed */
     return;
   qs->conn = NULL;
@@ -880,8 +854,6 @@
     qs->cred = NULL;
   }
 #endif
-  for(i = 0; i < 3; i++)
-    Curl_safefree(qs->crypto_data[i].buf);
   nghttp3_conn_del(qs->h3conn);
   ngtcp2_conn_del(qs->qconn);
 #ifdef USE_OPENSSL
@@ -1143,14 +1115,10 @@
   NULL, /* begin_trailers */
   cb_h3_recv_header,
   NULL, /* end_trailers */
-  NULL, /* http_begin_push_promise */
-  NULL, /* http_recv_push_promise */
-  NULL, /* http_end_push_promise */
-  NULL, /* http_cancel_push */
   cb_h3_send_stop_sending,
-  NULL, /* push_stream */
   NULL, /* end_stream */
   NULL, /* reset_stream */
+  NULL /* shutdown */
 };
 
 static int init_ngh3_conn(struct quicsocket *qs)
@@ -1660,6 +1628,12 @@
     return -1;
   }
 
+  /* Reset post upload buffer after resumed. */
+  if(stream->upload_mem) {
+    stream->upload_mem = NULL;
+    stream->upload_len = 0;
+  }
+
   *curlcode = CURLE_OK;
   return sent;
 }
@@ -1758,8 +1732,7 @@
   int rv;
   ssize_t sent;
   ssize_t outlen;
-  uint8_t out[NGTCP2_MAX_PKTLEN_IPV4];
-  size_t pktlen;
+  uint8_t out[NGTCP2_MAX_UDP_PAYLOAD_SIZE];
   ngtcp2_path_storage ps;
   ngtcp2_tstamp ts = timestamp();
   struct sockaddr_storage remote_addr;
@@ -1772,19 +1745,6 @@
   ssize_t ndatalen;
   uint32_t flags;
 
-  switch(qs->local_addr.ss_family) {
-  case AF_INET:
-    pktlen = NGTCP2_MAX_PKTLEN_IPV4;
-    break;
-#ifdef ENABLE_IPV6
-  case AF_INET6:
-    pktlen = NGTCP2_MAX_PKTLEN_IPV6;
-    break;
-#endif
-  default:
-    assert(0);
-  }
-
   rv = ngtcp2_conn_handle_expiry(qs->qconn, ts);
   if(rv) {
     failf(data, "ngtcp2_conn_handle_expiry returned error: %s",
@@ -1811,15 +1771,16 @@
 
     flags = NGTCP2_WRITE_STREAM_FLAG_MORE |
             (fin ? NGTCP2_WRITE_STREAM_FLAG_FIN : 0);
-    outlen = ngtcp2_conn_writev_stream(qs->qconn, &ps.path, NULL, out, pktlen,
+    outlen = ngtcp2_conn_writev_stream(qs->qconn, &ps.path, NULL, out,
+                                       sizeof(out),
                                        &ndatalen, flags, stream_id,
                                        (const ngtcp2_vec *)vec, veccnt, ts);
     if(outlen == 0) {
       break;
     }
     if(outlen < 0) {
-      if(outlen == NGTCP2_ERR_STREAM_DATA_BLOCKED ||
-         outlen == NGTCP2_ERR_STREAM_SHUT_WR) {
+      switch(outlen) {
+      case NGTCP2_ERR_STREAM_DATA_BLOCKED:
         assert(ndatalen == -1);
         rv = nghttp3_conn_block_stream(qs->h3conn, stream_id);
         if(rv) {
@@ -1828,8 +1789,17 @@
           return CURLE_SEND_ERROR;
         }
         continue;
-      }
-      else if(outlen == NGTCP2_ERR_WRITE_MORE) {
+      case NGTCP2_ERR_STREAM_SHUT_WR:
+        assert(ndatalen == -1);
+        rv = nghttp3_conn_shutdown_stream_write(qs->h3conn, stream_id);
+        if(rv) {
+          failf(data,
+                "nghttp3_conn_shutdown_stream_write returned error: %s\n",
+                nghttp3_strerror(rv));
+          return CURLE_SEND_ERROR;
+        }
+        continue;
+      case NGTCP2_ERR_WRITE_MORE:
         assert(ndatalen >= 0);
         rv = nghttp3_conn_add_write_offset(qs->h3conn, stream_id, ndatalen);
         if(rv) {
@@ -1838,8 +1808,7 @@
           return CURLE_SEND_ERROR;
         }
         continue;
-      }
-      else {
+      default:
         assert(ndatalen == -1);
         failf(data, "ngtcp2_conn_writev_stream returned error: %s",
               ngtcp2_strerror((int)outlen));
diff --git a/lib/vquic/ngtcp2.h b/lib/vquic/ngtcp2.h
index cbede45..5014530 100644
--- a/lib/vquic/ngtcp2.h
+++ b/lib/vquic/ngtcp2.h
@@ -34,13 +34,6 @@
 #include <gnutls/gnutls.h>
 #endif
 
-struct quic_handshake {
-  char *buf;       /* pointer to the buffer */
-  size_t alloclen; /* size of allocation */
-  size_t len;      /* size of content in buffer */
-  size_t nread;    /* how many bytes have been read */
-};
-
 struct quicsocket {
   struct connectdata *conn; /* point back to the connection */
   ngtcp2_conn *qconn;
@@ -56,7 +49,6 @@
   gnutls_certificate_credentials_t cred;
   gnutls_session_t ssl;
 #endif
-  struct quic_handshake crypto_data[3];
   /* the last TLS alert description generated by the local endpoint */
   uint8_t tls_alert;
   struct sockaddr_storage local_addr;
diff --git a/lib/vssh/libssh.c b/lib/vssh/libssh.c
index c2ca8ef..3e317e8 100644
--- a/lib/vssh/libssh.c
+++ b/lib/vssh/libssh.c
@@ -74,7 +74,6 @@
 #include "strcase.h"
 #include "vtls/vtls.h"
 #include "connect.h"
-#include "strerror.h"
 #include "inet_ntop.h"
 #include "parsedate.h"          /* for the week day and month names */
 #include "sockaddr.h"           /* required for Curl_sockaddr_storage */
diff --git a/lib/vssh/libssh2.c b/lib/vssh/libssh2.c
index 5cbff07..7466840 100644
--- a/lib/vssh/libssh2.c
+++ b/lib/vssh/libssh2.c
@@ -73,7 +73,6 @@
 #include "strcase.h"
 #include "vtls/vtls.h"
 #include "connect.h"
-#include "strerror.h"
 #include "inet_ntop.h"
 #include "parsedate.h" /* for the week day and month names */
 #include "sockaddr.h" /* required for Curl_sockaddr_storage */
@@ -82,6 +81,11 @@
 #include "select.h"
 #include "warnless.h"
 #include "curl_path.h"
+#include "strcase.h"
+
+#include <curl_base64.h> /* for base64 encoding/decoding */
+#include <curl_sha256.h>
+
 
 /* The last 3 #include files should be in this order */
 #include "curl_printf.h"
@@ -616,40 +620,142 @@
   struct connectdata *conn = data->conn;
   struct ssh_conn *sshc = &conn->proto.sshc;
   const char *pubkey_md5 = data->set.str[STRING_SSH_HOST_PUBLIC_KEY_MD5];
-  char md5buffer[33];
+  const char *pubkey_sha256 = data->set.str[STRING_SSH_HOST_PUBLIC_KEY_SHA256];
 
-  const char *fingerprint = libssh2_hostkey_hash(sshc->ssh_session,
-      LIBSSH2_HOSTKEY_HASH_MD5);
+  infof(data, "SSH MD5 public key: %s",
+    pubkey_md5 != NULL ? pubkey_md5 : "NULL");
+  infof(data, "SSH SHA256 public key: %s",
+      pubkey_sha256 != NULL ? pubkey_sha256 : "NULL");
 
-  if(fingerprint) {
+  if(pubkey_sha256) {
+    const char *fingerprint = NULL;
+    char *fingerprint_b64 = NULL;
+    size_t fingerprint_b64_len;
+    size_t pub_pos = 0;
+    size_t b64_pos = 0;
+
+#ifdef LIBSSH2_HOSTKEY_HASH_SHA256
     /* The fingerprint points to static storage (!), don't free() it. */
-    int i;
-    for(i = 0; i < 16; i++)
-      msnprintf(&md5buffer[i*2], 3, "%02x", (unsigned char) fingerprint[i]);
-    infof(data, "SSH MD5 fingerprint: %s", md5buffer);
-  }
+    fingerprint = libssh2_hostkey_hash(sshc->ssh_session,
+        LIBSSH2_HOSTKEY_HASH_SHA256);
+#else
+    const char *hostkey;
+    size_t len = 0;
+    unsigned char hash[32];
 
-  /* Before we authenticate we check the hostkey's MD5 fingerprint
-   * against a known fingerprint, if available.
-   */
-  if(pubkey_md5 && strlen(pubkey_md5) == 32) {
-    if(!fingerprint || !strcasecompare(md5buffer, pubkey_md5)) {
-      if(fingerprint)
-        failf(data,
-            "Denied establishing ssh session: mismatch md5 fingerprint. "
-            "Remote %s is not equal to %s", md5buffer, pubkey_md5);
-      else
-        failf(data,
-            "Denied establishing ssh session: md5 fingerprint not available");
+    hostkey = libssh2_session_hostkey(sshc->ssh_session, &len, NULL);
+    if(hostkey) {
+      Curl_sha256it(hash, (const unsigned char *) hostkey, len);
+      fingerprint = (char *) hash;
+    }
+#endif
+
+    if(!fingerprint) {
+      failf(data,
+          "Denied establishing ssh session: sha256 fingerprint "
+          "not available");
       state(data, SSH_SESSION_FREE);
       sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
       return sshc->actualcode;
     }
-    infof(data, "MD5 checksum match!");
+
+    /* The length of fingerprint is 32 bytes for SHA256.
+     * See libssh2_hostkey_hash documentation. */
+    if(Curl_base64_encode (data, fingerprint, 32, &fingerprint_b64,
+        &fingerprint_b64_len) != CURLE_OK) {
+      state(data, SSH_SESSION_FREE);
+      sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
+      return sshc->actualcode;
+    }
+
+    if(!fingerprint_b64) {
+      failf(data,
+          "sha256 fingerprint could not be encoded");
+      state(data, SSH_SESSION_FREE);
+      sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
+      return sshc->actualcode;
+    }
+
+    infof(data, "SSH SHA256 fingerprint: %s", fingerprint_b64);
+
+    /* Find the position of any = padding characters in the public key */
+    while((pubkey_sha256[pub_pos] != '=') && pubkey_sha256[pub_pos]) {
+      pub_pos++;
+    }
+
+    /* Find the position of any = padding characters in the base64 coded
+     * hostkey fingerprint */
+    while((fingerprint_b64[b64_pos] != '=') && fingerprint_b64[b64_pos]) {
+      b64_pos++;
+    }
+
+    /* Before we authenticate we check the hostkey's sha256 fingerprint
+     * against a known fingerprint, if available.
+     */
+    if((pub_pos != b64_pos) ||
+        Curl_strncasecompare(fingerprint_b64, pubkey_sha256, pub_pos) != 1) {
+      free(fingerprint_b64);
+
+      failf(data,
+          "Denied establishing ssh session: mismatch sha256 fingerprint. "
+          "Remote %s is not equal to %s", fingerprint, pubkey_sha256);
+      state(data, SSH_SESSION_FREE);
+      sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
+      return sshc->actualcode;
+    }
+
+    free(fingerprint_b64);
+
+    infof(data, "SHA256 checksum match!");
+  }
+
+  if(pubkey_md5) {
+    char md5buffer[33];
+    const char *fingerprint = NULL;
+
+    fingerprint = libssh2_hostkey_hash(sshc->ssh_session,
+        LIBSSH2_HOSTKEY_HASH_MD5);
+
+    if(fingerprint) {
+      /* The fingerprint points to static storage (!), don't free() it. */
+      int i;
+      for(i = 0; i < 16; i++) {
+        msnprintf(&md5buffer[i*2], 3, "%02x", (unsigned char) fingerprint[i]);
+      }
+
+      infof(data, "SSH MD5 fingerprint: %s", md5buffer);
+    }
+
+    /* Before we authenticate we check the hostkey's MD5 fingerprint
+     * against a known fingerprint, if available.
+     */
+    if(pubkey_md5 && strlen(pubkey_md5) == 32) {
+      if(!fingerprint || !strcasecompare(md5buffer, pubkey_md5)) {
+        if(fingerprint) {
+          failf(data,
+              "Denied establishing ssh session: mismatch md5 fingerprint. "
+              "Remote %s is not equal to %s", md5buffer, pubkey_md5);
+        }
+        else {
+          failf(data,
+              "Denied establishing ssh session: md5 fingerprint "
+              "not available");
+        }
+        state(data, SSH_SESSION_FREE);
+        sshc->actualcode = CURLE_PEER_FAILED_VERIFICATION;
+        return sshc->actualcode;
+      }
+      infof(data, "MD5 checksum match!");
+    }
+  }
+
+  if(!pubkey_md5 && !pubkey_sha256) {
+    return ssh_knownhost(data);
+  }
+  else {
     /* as we already matched, we skip the check for known hosts */
     return CURLE_OK;
   }
-  return ssh_knownhost(data);
 }
 
 /*
@@ -3611,7 +3717,7 @@
 
 void Curl_ssh_version(char *buffer, size_t buflen)
 {
-  (void)msnprintf(buffer, buflen, "libssh2/%s", LIBSSH2_VERSION);
+  (void)msnprintf(buffer, buflen, "libssh2/%s", CURL_LIBSSH2_VERSION);
 }
 
 /* The SSH session is associated with the *CONNECTION* but the callback user
diff --git a/lib/vssh/wolfssh.c b/lib/vssh/wolfssh.c
index 4b1e2ec..5b4cde9 100644
--- a/lib/vssh/wolfssh.c
+++ b/lib/vssh/wolfssh.c
@@ -449,7 +449,8 @@
     switch(sshc->state) {
     case SSH_INIT:
       state(data, SSH_S_STARTUP);
-      /* FALLTHROUGH */
+      break;
+
     case SSH_S_STARTUP:
       rc = wolfSSH_connect(sshc->ssh_session);
       if(rc != WS_SUCCESS)
@@ -838,7 +839,8 @@
         break;
       }
       state(data, SSH_SFTP_READDIR);
-      /* FALLTHROUGH */
+      break;
+
     case SSH_SFTP_READDIR:
       name = wolfSSH_SFTP_LS(sshc->ssh_session, sftp_scp->path);
       if(!name)
diff --git a/lib/vtls/bearssl.c b/lib/vtls/bearssl.c
index cbbb3b5..9b772d0 100644
--- a/lib/vtls/bearssl.c
+++ b/lib/vtls/bearssl.c
@@ -68,6 +68,14 @@
   size_t dn_len;
 };
 
+#define CAFILE_SOURCE_PATH 1
+#define CAFILE_SOURCE_BLOB 2
+struct cafile_source {
+  const int type;
+  const char * const data;
+  const size_t len;
+};
+
 static void append_dn(void *ctx, const void *buf, size_t len)
 {
   struct cafile_parser *ca = ctx;
@@ -90,7 +98,8 @@
     br_x509_decoder_push(&ca->xc, buf, len);
 }
 
-static CURLcode load_cafile(const char *path, br_x509_trust_anchor **anchors,
+static CURLcode load_cafile(struct cafile_source *source,
+                            br_x509_trust_anchor **anchors,
                             size_t *anchors_len)
 {
   struct cafile_parser ca;
@@ -100,13 +109,22 @@
   br_x509_trust_anchor *new_anchors;
   size_t new_anchors_len;
   br_x509_pkey *pkey;
-  FILE *fp;
-  unsigned char buf[BUFSIZ], *p;
+  FILE *fp = 0;
+  unsigned char buf[BUFSIZ];
+  const unsigned char *p;
   const char *name;
   size_t n, i, pushed;
 
-  fp = fopen(path, "rb");
-  if(!fp)
+  DEBUGASSERT(source->type == CAFILE_SOURCE_PATH
+              || source->type == CAFILE_SOURCE_BLOB);
+
+  if(source->type == CAFILE_SOURCE_PATH) {
+    fp = fopen(source->data, "rb");
+    if(!fp)
+      return CURLE_SSL_CACERT_BADFILE;
+  }
+
+  if(source->type == CAFILE_SOURCE_BLOB && source->len > (size_t)INT_MAX)
     return CURLE_SSL_CACERT_BADFILE;
 
   ca.err = CURLE_OK;
@@ -115,11 +133,17 @@
   ca.anchors_len = 0;
   br_pem_decoder_init(&pc);
   br_pem_decoder_setdest(&pc, x509_push, &ca);
-  for(;;) {
-    n = fread(buf, 1, sizeof(buf), fp);
-    if(n == 0)
-      break;
-    p = buf;
+  do {
+    if(source->type == CAFILE_SOURCE_PATH) {
+      n = fread(buf, 1, sizeof(buf), fp);
+      if(n == 0)
+        break;
+      p = buf;
+    }
+    else if(source->type == CAFILE_SOURCE_BLOB) {
+      n = source->len;
+      p = (unsigned char *) source->data;
+    }
     while(n) {
       pushed = br_pem_decoder_push(&pc, p, n);
       if(ca.err)
@@ -211,12 +235,13 @@
         goto fail;
       }
     }
-  }
-  if(ferror(fp))
+  } while(source->type != CAFILE_SOURCE_BLOB);
+  if(fp && ferror(fp))
     ca.err = CURLE_READ_ERROR;
 
 fail:
-  fclose(fp);
+  if(fp)
+    fclose(fp);
   if(ca.err == CURLE_OK) {
     *anchors = ca.anchors;
     *anchors_len = ca.anchors_len;
@@ -299,7 +324,10 @@
 {
   struct ssl_connect_data *connssl = &conn->ssl[sockindex];
   struct ssl_backend_data *backend = connssl->backend;
-  const char * const ssl_cafile = SSL_CONN_CONFIG(CAfile);
+  const struct curl_blob *ca_info_blob = SSL_CONN_CONFIG(ca_info_blob);
+  const char * const ssl_cafile =
+    /* CURLOPT_CAINFO_BLOB overrides CURLOPT_CAINFO */
+    (ca_info_blob ? NULL : SSL_CONN_CONFIG(CAfile));
   const char *hostname = SSL_HOST_NAME();
   const bool verifypeer = SSL_CONN_CONFIG(verifypeer);
   const bool verifyhost = SSL_CONN_CONFIG(verifyhost);
@@ -340,8 +368,30 @@
     return CURLE_SSL_CONNECT_ERROR;
   }
 
+  if(ca_info_blob) {
+    struct cafile_source source = {
+      CAFILE_SOURCE_BLOB,
+      ca_info_blob->data,
+      ca_info_blob->len,
+    };
+    ret = load_cafile(&source, &backend->anchors, &backend->anchors_len);
+    if(ret != CURLE_OK) {
+      if(verifypeer) {
+        failf(data, "error importing CA certificate blob");
+        return ret;
+      }
+      /* Only warn if no certificate verification is required. */
+      infof(data, "error importing CA certificate blob, continuing anyway");
+    }
+  }
+
   if(ssl_cafile) {
-    ret = load_cafile(ssl_cafile, &backend->anchors, &backend->anchors_len);
+    struct cafile_source source = {
+      CAFILE_SOURCE_PATH,
+      ssl_cafile,
+      0,
+    };
+    ret = load_cafile(&source, &backend->anchors, &backend->anchors_len);
     if(ret != CURLE_OK) {
       if(verifypeer) {
         failf(data, "error setting certificate verify locations."
@@ -558,6 +608,7 @@
 
   if(SSL_SET_OPTION(primary.sessionid)) {
     bool incache;
+    bool added = FALSE;
     void *oldsession;
     br_ssl_session_parameters *session;
 
@@ -573,10 +624,11 @@
       Curl_ssl_delsessionid(data, oldsession);
     ret = Curl_ssl_addsessionid(data, conn,
                                 SSL_IS_PROXY() ? TRUE : FALSE,
-                                session, 0, sockindex);
+                                session, 0, sockindex, &added);
     Curl_ssl_sessionid_unlock(data);
-    if(ret) {
+    if(!added)
       free(session);
+    if(ret) {
       return CURLE_OUT_OF_MEMORY;
     }
   }
@@ -841,7 +893,7 @@
 
 const struct Curl_ssl Curl_ssl_bearssl = {
   { CURLSSLBACKEND_BEARSSL, "bearssl" }, /* info */
-  0,
+  SSLSUPP_CAINFO_BLOB,
   sizeof(struct ssl_backend_data),
 
   Curl_none_init,                  /* init */
diff --git a/lib/vtls/gskit.c b/lib/vtls/gskit.c
index af8fc92..e451f6a 100644
--- a/lib/vtls/gskit.c
+++ b/lib/vtls/gskit.c
@@ -180,6 +180,7 @@
 static CURLcode gskit_status(struct Curl_easy *data, int rc,
                              const char *procname, CURLcode defcode)
 {
+  char buffer[STRERROR_LEN];
   /* Process GSKit status and map it to a CURLcode. */
   switch(rc) {
   case GSK_OK:
@@ -208,7 +209,8 @@
     case ENOMEM:
       return CURLE_OUT_OF_MEMORY;
     default:
-      failf(data, "%s I/O error: %s", procname, strerror(errno));
+      failf(data, "%s I/O error: %s", procname,
+            Curl_strerror(errno, buffer, sizeof(buffer)));
       break;
     }
     break;
@@ -223,13 +225,15 @@
 static CURLcode set_enum(struct Curl_easy *data, gsk_handle h,
                 GSK_ENUM_ID id, GSK_ENUM_VALUE value, bool unsupported_ok)
 {
+  char buffer[STRERROR_LEN];
   int rc = gsk_attribute_set_enum(h, id, value);
 
   switch(rc) {
   case GSK_OK:
     return CURLE_OK;
   case GSK_ERROR_IO:
-    failf(data, "gsk_attribute_set_enum() I/O error: %s", strerror(errno));
+    failf(data, "gsk_attribute_set_enum() I/O error: %s",
+          Curl_strerror(errno, buffer, sizeof(buffer)));
     break;
   case GSK_ATTRIBUTE_INVALID_ID:
     if(unsupported_ok)
@@ -245,13 +249,15 @@
 static CURLcode set_buffer(struct Curl_easy *data, gsk_handle h,
                         GSK_BUF_ID id, const char *buffer, bool unsupported_ok)
 {
+  char buffer[STRERROR_LEN];
   int rc = gsk_attribute_set_buffer(h, id, buffer, 0);
 
   switch(rc) {
   case GSK_OK:
     return CURLE_OK;
   case GSK_ERROR_IO:
-    failf(data, "gsk_attribute_set_buffer() I/O error: %s", strerror(errno));
+    failf(data, "gsk_attribute_set_buffer() I/O error: %s",
+          Curl_strerror(errno, buffer, sizeof(buffer)));
     break;
   case GSK_ATTRIBUTE_INVALID_ID:
     if(unsupported_ok)
@@ -267,6 +273,7 @@
 static CURLcode set_numeric(struct Curl_easy *data,
                             gsk_handle h, GSK_NUM_ID id, int value)
 {
+  char buffer[STRERROR_LEN];
   int rc = gsk_attribute_set_numeric_value(h, id, value);
 
   switch(rc) {
@@ -274,7 +281,7 @@
     return CURLE_OK;
   case GSK_ERROR_IO:
     failf(data, "gsk_attribute_set_numeric_value() I/O error: %s",
-          strerror(errno));
+          Curl_strerror(errno, buffer, sizeof(buffer)));
     break;
   default:
     failf(data, "gsk_attribute_set_numeric_value(): %s", gsk_strerror(rc));
@@ -287,13 +294,15 @@
 static CURLcode set_callback(struct Curl_easy *data,
                              gsk_handle h, GSK_CALLBACK_ID id, void *info)
 {
+  char buffer[STRERROR_LEN];
   int rc = gsk_attribute_set_callback(h, id, info);
 
   switch(rc) {
   case GSK_OK:
     return CURLE_OK;
   case GSK_ERROR_IO:
-    failf(data, "gsk_attribute_set_callback() I/O error: %s", strerror(errno));
+    failf(data, "gsk_attribute_set_callback() I/O error: %s",
+          Curl_strerror(errno, buffer, sizeof(buffer)));
     break;
   default:
     failf(data, "gsk_attribute_set_callback(): %s", gsk_strerror(rc));
@@ -966,7 +975,9 @@
         continue;       /* Retry. */
       }
       if(errno != ETIME) {
-        failf(data, "QsoWaitForIOCompletion() I/O error: %s", strerror(errno));
+        char buffer[STRERROR_LEN];
+        failf(data, "QsoWaitForIOCompletion() I/O error: %s",
+              Curl_strerror(errno, buffer, sizeof(buffer)));
         cancel_async_handshake(conn, sockindex);
         close_async_handshake(connssl);
         return CURLE_SSL_CONNECT_ERROR;
@@ -1229,7 +1240,8 @@
     nread = read(conn->sock[sockindex], buf, sizeof(buf));
 
     if(nread < 0) {
-      failf(data, "read: %s", strerror(errno));
+      char buffer[STRERROR_LEN];
+      failf(data, "read: %s", Curl_strerror(errno, buffer, sizeof(buffer)));
       rc = -1;
     }
 
diff --git a/lib/vtls/gtls.c b/lib/vtls/gtls.c
index 1b145d8..2053fd4 100644
--- a/lib/vtls/gtls.c
+++ b/lib/vtls/gtls.c
@@ -404,6 +404,7 @@
   const char * const hostname = SSL_HOST_NAME();
   long * const certverifyresult = &SSL_SET_OPTION_LVALUE(certverifyresult);
   const char *tls13support;
+  CURLcode result;
 
   if(connssl->state == ssl_connection_complete)
     /* to make us tolerant against being called more than once for the
@@ -557,31 +558,25 @@
   /* Ensure +SRP comes at the *end* of all relevant strings so that it can be
    * removed if a run-time error indicates that SRP is not supported by this
    * GnuTLS version */
-  switch(SSL_CONN_CONFIG(version)) {
-    case CURL_SSLVERSION_TLSv1_3:
-      if(!tls13support) {
-        failf(data, "This GnuTLS installation does not support TLS 1.3");
-        return CURLE_SSL_CONNECT_ERROR;
-      }
-      /* FALLTHROUGH */
-    case CURL_SSLVERSION_DEFAULT:
-    case CURL_SSLVERSION_TLSv1:
-    case CURL_SSLVERSION_TLSv1_0:
-    case CURL_SSLVERSION_TLSv1_1:
-    case CURL_SSLVERSION_TLSv1_2: {
-      CURLcode result = set_ssl_version_min_max(data, &prioritylist,
-                                                tls13support);
-      if(result)
-        return result;
-      break;
-    }
-    case CURL_SSLVERSION_SSLv2:
-    case CURL_SSLVERSION_SSLv3:
-    default:
-      failf(data, "GnuTLS does not support SSLv2 or SSLv3");
-      return CURLE_SSL_CONNECT_ERROR;
+
+  if(SSL_CONN_CONFIG(version) == CURL_SSLVERSION_SSLv2 ||
+     SSL_CONN_CONFIG(version) == CURL_SSLVERSION_SSLv3) {
+    failf(data, "GnuTLS does not support SSLv2 or SSLv3");
+    return CURLE_SSL_CONNECT_ERROR;
   }
 
+  if(SSL_CONN_CONFIG(version) == CURL_SSLVERSION_TLSv1_3) {
+    if(!tls13support) {
+      failf(data, "This GnuTLS installation does not support TLS 1.3");
+      return CURLE_SSL_CONNECT_ERROR;
+    }
+  }
+
+  /* At this point we know we have a supported TLS version, so set it */
+  result = set_ssl_version_min_max(data, &prioritylist, tls13support);
+  if(result)
+    return result;
+
 #ifdef HAVE_GNUTLS_SRP
   /* Only add SRP to the cipher list if SRP is requested. Otherwise
    * GnuTLS will disable TLS 1.3 support. */
@@ -1287,6 +1282,7 @@
 
     if(connect_sessionid) {
       bool incache;
+      bool added = FALSE;
       void *ssl_sessionid;
 
       /* extract session ID to the allocated buffer */
@@ -1306,10 +1302,11 @@
       result = Curl_ssl_addsessionid(data, conn,
                                      SSL_IS_PROXY() ? TRUE : FALSE,
                                      connect_sessionid, connect_idsize,
-                                     sockindex);
+                                     sockindex, &added);
       Curl_ssl_sessionid_unlock(data);
-      if(result) {
+      if(!added)
         free(connect_sessionid);
+      if(result) {
         result = CURLE_OUT_OF_MEMORY;
       }
     }
diff --git a/lib/vtls/mbedtls.c b/lib/vtls/mbedtls.c
index e986bea..08c79e1 100644
--- a/lib/vtls/mbedtls.c
+++ b/lib/vtls/mbedtls.c
@@ -41,7 +41,9 @@
 #include <mbedtls/net.h>
 #endif
 #include <mbedtls/ssl.h>
+#if MBEDTLS_VERSION_NUMBER < 0x03000000
 #include <mbedtls/certs.h>
+#endif
 #include <mbedtls/x509.h>
 
 #include <mbedtls/error.h>
@@ -183,6 +185,17 @@
 
 static CURLcode mbedtls_version_from_curl(int *mbedver, long version)
 {
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+  switch(version) {
+    case CURL_SSLVERSION_TLSv1_0:
+    case CURL_SSLVERSION_TLSv1_1:
+    case CURL_SSLVERSION_TLSv1_2:
+      *mbedver = MBEDTLS_SSL_MINOR_VERSION_3;
+      return CURLE_OK;
+    case CURL_SSLVERSION_TLSv1_3:
+      break;
+  }
+#else
   switch(version) {
     case CURL_SSLVERSION_TLSv1_0:
       *mbedver = MBEDTLS_SSL_MINOR_VERSION_1;
@@ -196,6 +209,8 @@
     case CURL_SSLVERSION_TLSv1_3:
       break;
   }
+#endif
+
   return CURLE_SSL_CONNECT_ERROR;
 }
 
@@ -205,8 +220,13 @@
 {
   struct ssl_connect_data *connssl = &conn->ssl[sockindex];
   struct ssl_backend_data *backend = connssl->backend;
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+  int mbedtls_ver_min = MBEDTLS_SSL_MINOR_VERSION_3;
+  int mbedtls_ver_max = MBEDTLS_SSL_MINOR_VERSION_3;
+#else
   int mbedtls_ver_min = MBEDTLS_SSL_MINOR_VERSION_1;
   int mbedtls_ver_max = MBEDTLS_SSL_MINOR_VERSION_1;
+#endif
   long ssl_version = SSL_CONN_CONFIG(version);
   long ssl_version_max = SSL_CONN_CONFIG(version_max);
   CURLcode result = CURLE_OK;
@@ -257,7 +277,9 @@
   const struct curl_blob *ssl_cert_blob = SSL_SET_OPTION(primary.cert_blob);
   const char * const ssl_crlfile = SSL_SET_OPTION(CRLfile);
   const char * const hostname = SSL_HOST_NAME();
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
   const long int port = SSL_HOST_PORT();
+#endif
   int ret = -1;
   char errorbuf[128];
 
@@ -354,8 +376,15 @@
 
   if(SSL_SET_OPTION(key) || SSL_SET_OPTION(key_blob)) {
     if(SSL_SET_OPTION(key)) {
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+      ret = mbedtls_pk_parse_keyfile(&backend->pk, SSL_SET_OPTION(key),
+                                     SSL_SET_OPTION(key_passwd),
+                                     mbedtls_ctr_drbg_random,
+                                     &backend->ctr_drbg);
+#else
       ret = mbedtls_pk_parse_keyfile(&backend->pk, SSL_SET_OPTION(key),
                                      SSL_SET_OPTION(key_passwd));
+#endif
 
       if(ret) {
         mbedtls_strerror(ret, errorbuf, sizeof(errorbuf));
@@ -369,9 +398,17 @@
       const unsigned char *key_data =
         (const unsigned char *)ssl_key_blob->data;
       const char *passwd = SSL_SET_OPTION(key_passwd);
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+      ret = mbedtls_pk_parse_key(&backend->pk, key_data, ssl_key_blob->len,
+                                 (const unsigned char *)passwd,
+                                 passwd ? strlen(passwd) : 0,
+                                 mbedtls_ctr_drbg_random,
+                                 &backend->ctr_drbg);
+#else
       ret = mbedtls_pk_parse_key(&backend->pk, key_data, ssl_key_blob->len,
                                  (const unsigned char *)passwd,
                                  passwd ? strlen(passwd) : 0);
+#endif
 
       if(ret) {
         mbedtls_strerror(ret, errorbuf, sizeof(errorbuf));
@@ -426,10 +463,12 @@
   switch(SSL_CONN_CONFIG(version)) {
   case CURL_SSLVERSION_DEFAULT:
   case CURL_SSLVERSION_TLSv1:
+#if MBEDTLS_VERSION_NUMBER < 0x03000000
     mbedtls_ssl_conf_min_version(&backend->config, MBEDTLS_SSL_MAJOR_VERSION_3,
                                  MBEDTLS_SSL_MINOR_VERSION_1);
     infof(data, "mbedTLS: Set min SSL version to TLS 1.0");
     break;
+#endif
   case CURL_SSLVERSION_TLSv1_0:
   case CURL_SSLVERSION_TLSv1_1:
   case CURL_SSLVERSION_TLSv1_2:
@@ -629,10 +668,15 @@
   if(pinnedpubkey) {
     int size;
     CURLcode result;
-    mbedtls_x509_crt *p;
-    unsigned char pubkey[PUB_DER_MAX_BYTES];
+    mbedtls_x509_crt *p = NULL;
+    unsigned char *pubkey = NULL;
 
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+    if(!peercert || !peercert->MBEDTLS_PRIVATE(raw).MBEDTLS_PRIVATE(p) ||
+       !peercert->MBEDTLS_PRIVATE(raw).MBEDTLS_PRIVATE(len)) {
+#else
     if(!peercert || !peercert->raw.p || !peercert->raw.len) {
+#endif
       failf(data, "Failed due to missing peer certificate");
       return CURLE_SSL_PINNEDPUBKEYNOTMATCH;
     }
@@ -642,39 +686,54 @@
     if(!p)
       return CURLE_OUT_OF_MEMORY;
 
+    pubkey = malloc(PUB_DER_MAX_BYTES);
+
+    if(!pubkey) {
+      result = CURLE_OUT_OF_MEMORY;
+      goto pinnedpubkey_error;
+    }
+
     mbedtls_x509_crt_init(p);
 
     /* Make a copy of our const peercert because mbedtls_pk_write_pubkey_der
        needs a non-const key, for now.
        https://github.com/ARMmbed/mbedtls/issues/396 */
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+    if(mbedtls_x509_crt_parse_der(p,
+                        peercert->MBEDTLS_PRIVATE(raw).MBEDTLS_PRIVATE(p),
+                        peercert->MBEDTLS_PRIVATE(raw).MBEDTLS_PRIVATE(len))) {
+#else
     if(mbedtls_x509_crt_parse_der(p, peercert->raw.p, peercert->raw.len)) {
+#endif
       failf(data, "Failed copying peer certificate");
-      mbedtls_x509_crt_free(p);
-      free(p);
-      return CURLE_SSL_PINNEDPUBKEYNOTMATCH;
+      result = CURLE_SSL_PINNEDPUBKEYNOTMATCH;
+      goto pinnedpubkey_error;
     }
 
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+    size = mbedtls_pk_write_pubkey_der(&p->MBEDTLS_PRIVATE(pk), pubkey,
+                                       PUB_DER_MAX_BYTES);
+#else
     size = mbedtls_pk_write_pubkey_der(&p->pk, pubkey, PUB_DER_MAX_BYTES);
+#endif
 
     if(size <= 0) {
       failf(data, "Failed copying public key from peer certificate");
-      mbedtls_x509_crt_free(p);
-      free(p);
-      return CURLE_SSL_PINNEDPUBKEYNOTMATCH;
+      result = CURLE_SSL_PINNEDPUBKEYNOTMATCH;
+      goto pinnedpubkey_error;
     }
 
     /* mbedtls_pk_write_pubkey_der writes data at the end of the buffer. */
     result = Curl_pin_peer_pubkey(data,
                                   pinnedpubkey,
                                   &pubkey[PUB_DER_MAX_BYTES - size], size);
-    if(result) {
-      mbedtls_x509_crt_free(p);
-      free(p);
-      return result;
-    }
-
+    pinnedpubkey_error:
     mbedtls_x509_crt_free(p);
     free(p);
+    free(pubkey);
+    if(result) {
+      return result;
+    }
   }
 
 #ifdef HAS_ALPN
@@ -725,6 +784,7 @@
     mbedtls_ssl_session *our_ssl_sessionid;
     void *old_ssl_sessionid = NULL;
     bool isproxy = SSL_IS_PROXY() ? TRUE : FALSE;
+    bool added = FALSE;
 
     our_ssl_sessionid = malloc(sizeof(mbedtls_ssl_session));
     if(!our_ssl_sessionid)
@@ -748,11 +808,13 @@
       Curl_ssl_delsessionid(data, old_ssl_sessionid);
 
     retcode = Curl_ssl_addsessionid(data, conn, isproxy, our_ssl_sessionid,
-                                    0, sockindex);
+                                    0, sockindex, &added);
     Curl_ssl_sessionid_unlock(data);
-    if(retcode) {
+    if(!added) {
       mbedtls_ssl_session_free(our_ssl_sessionid);
       free(our_ssl_sessionid);
+    }
+    if(retcode) {
       failf(data, "failed to store ssl session");
       return retcode;
     }
@@ -1064,12 +1126,17 @@
                                   unsigned char *sha256sum,
                                   size_t sha256len UNUSED_PARAM)
 {
+  /* TODO: explain this for different mbedtls 2.x vs 3 version */
   (void)sha256len;
 #if MBEDTLS_VERSION_NUMBER < 0x02070000
   mbedtls_sha256(input, inputlen, sha256sum, 0);
 #else
   /* returns 0 on success, otherwise failure */
+#if MBEDTLS_VERSION_NUMBER >= 0x03000000
+  if(mbedtls_sha256(input, inputlen, sha256sum, 0) != 0)
+#else
   if(mbedtls_sha256_ret(input, inputlen, sha256sum, 0) != 0)
+#endif
     return CURLE_BAD_FUNCTION_ARGUMENT;
 #endif
   return CURLE_OK;
diff --git a/lib/vtls/mbedtls_threadlock.c b/lib/vtls/mbedtls_threadlock.c
index 473f517..751755c 100644
--- a/lib/vtls/mbedtls_threadlock.c
+++ b/lib/vtls/mbedtls_threadlock.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 2013 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2013 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  * Copyright (C) 2010, 2011, Hoi-Ho Chan, <hoiho.chan@gmail.com>
  *
  * This software is licensed as described in the file COPYING, which
@@ -55,10 +55,8 @@
     return 0;     /* error, no number of threads defined */
 
   for(i = 0;  i < NUMT;  i++) {
-    int ret;
 #if defined(USE_THREADS_POSIX) && defined(HAVE_PTHREAD_H)
-    ret = pthread_mutex_init(&mutex_buf[i], NULL);
-    if(ret)
+    if(pthread_mutex_init(&mutex_buf[i], NULL))
       return 0; /* pthread_mutex_init failed */
 #elif defined(USE_THREADS_WIN32) && defined(HAVE_PROCESS_H)
     mutex_buf[i] = CreateMutex(0, FALSE, 0);
@@ -78,14 +76,11 @@
     return 0; /* error, no threads locks defined */
 
   for(i = 0; i < NUMT; i++) {
-    int ret;
 #if defined(USE_THREADS_POSIX) && defined(HAVE_PTHREAD_H)
-    ret = pthread_mutex_destroy(&mutex_buf[i]);
-    if(ret)
+    if(pthread_mutex_destroy(&mutex_buf[i]))
       return 0; /* pthread_mutex_destroy failed */
 #elif defined(USE_THREADS_WIN32) && defined(HAVE_PROCESS_H)
-    ret = CloseHandle(mutex_buf[i]);
-    if(!ret)
+    if(!CloseHandle(mutex_buf[i]))
       return 0; /* CloseHandle failed */
 #endif /* USE_THREADS_POSIX && HAVE_PTHREAD_H */
   }
@@ -98,17 +93,14 @@
 int Curl_mbedtlsthreadlock_lock_function(int n)
 {
   if(n < NUMT) {
-    int ret;
 #if defined(USE_THREADS_POSIX) && defined(HAVE_PTHREAD_H)
-    ret = pthread_mutex_lock(&mutex_buf[n]);
-    if(ret) {
+    if(pthread_mutex_lock(&mutex_buf[n])) {
       DEBUGF(fprintf(stderr,
                      "Error: mbedtlsthreadlock_lock_function failed\n"));
       return 0; /* pthread_mutex_lock failed */
     }
 #elif defined(USE_THREADS_WIN32) && defined(HAVE_PROCESS_H)
-    ret = (WaitForSingleObject(mutex_buf[n], INFINITE) == WAIT_FAILED?1:0);
-    if(ret) {
+    if(WaitForSingleObject(mutex_buf[n], INFINITE) == WAIT_FAILED) {
       DEBUGF(fprintf(stderr,
                      "Error: mbedtlsthreadlock_lock_function failed\n"));
       return 0; /* pthread_mutex_lock failed */
@@ -121,17 +113,14 @@
 int Curl_mbedtlsthreadlock_unlock_function(int n)
 {
   if(n < NUMT) {
-    int ret;
 #if defined(USE_THREADS_POSIX) && defined(HAVE_PTHREAD_H)
-    ret = pthread_mutex_unlock(&mutex_buf[n]);
-    if(ret) {
+    if(pthread_mutex_unlock(&mutex_buf[n])) {
       DEBUGF(fprintf(stderr,
                      "Error: mbedtlsthreadlock_unlock_function failed\n"));
       return 0; /* pthread_mutex_unlock failed */
     }
 #elif defined(USE_THREADS_WIN32) && defined(HAVE_PROCESS_H)
-    ret = ReleaseMutex(mutex_buf[n]);
-    if(!ret) {
+    if(!ReleaseMutex(mutex_buf[n])) {
       DEBUGF(fprintf(stderr,
                      "Error: mbedtlsthreadlock_unlock_function failed\n"));
       return 0; /* pthread_mutex_lock failed */
diff --git a/lib/vtls/mesalink.c b/lib/vtls/mesalink.c
index 3db9184..0a1dea3 100644
--- a/lib/vtls/mesalink.c
+++ b/lib/vtls/mesalink.c
@@ -365,7 +365,7 @@
     if(!incache) {
       result =
         Curl_ssl_addsessionid(data, conn, isproxy, our_ssl_sessionid, 0,
-                              sockindex);
+                              sockindex, NULL);
       if(result) {
         Curl_ssl_sessionid_unlock(data);
         failf(data, "failed to store ssl session");
diff --git a/lib/vtls/nss.c b/lib/vtls/nss.c
index cf65789..1897b9a 100644
--- a/lib/vtls/nss.c
+++ b/lib/vtls/nss.c
@@ -955,7 +955,7 @@
   subject = CERT_NameToAscii(&cert->subject);
   issuer = CERT_NameToAscii(&cert->issuer);
   common_name = CERT_GetCommonName(&cert->subject);
-  infof(data, "subject: %s\n", subject);
+  infof(data, "subject: %s", subject);
 
   CERT_GetCertTimes(cert, &notBefore, &notAfter);
   PR_ExplodeTime(notBefore, PR_GMTParameters, &printableTime);
@@ -2250,10 +2250,11 @@
   case CURLE_OK:
     break;
   case CURLE_AGAIN:
+    /* CURLE_AGAIN in non-blocking mode is not an error */
     if(!blocking)
-      /* CURLE_AGAIN in non-blocking mode is not an error */
       return CURLE_OK;
-    /* FALLTHROUGH */
+    else
+      return result;
   default:
     return result;
   }
diff --git a/lib/vtls/openssl.c b/lib/vtls/openssl.c
index 8af23b7..a1baef9 100644
--- a/lib/vtls/openssl.c
+++ b/lib/vtls/openssl.c
@@ -194,7 +194,7 @@
      !defined(OPENSSL_IS_BORINGSSL))
 #define HAVE_SSL_CTX_SET_CIPHERSUITES
 #define HAVE_SSL_CTX_SET_POST_HANDSHAKE_AUTH
-/* SET_EC_CURVES available under the same preconditions: see
+/* SET_EC_CURVES is available under the same preconditions: see
  * https://www.openssl.org/docs/manmaster/man3/SSL_CTX_set1_groups.html
  */
 #define HAVE_SSL_CTX_SET_EC_CURVES
@@ -209,8 +209,8 @@
 #endif
 
 #if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
-/* up2date versions of OpenSSL maintain the default reasonably secure without
- * breaking compatibility, so it is better not to override the default by curl
+/* up2date versions of OpenSSL maintain reasonably secure defaults without
+ * breaking compatibility, so it is better not to override the defaults in curl
  */
 #define DEFAULT_CIPHER_SELECTION NULL
 #else
@@ -227,6 +227,10 @@
 #endif
 #endif
 
+#if (OPENSSL_VERSION_NUMBER >= 0x10100000L)
+#define HAVE_RANDOM_INIT_BY_DEFAULT 1
+#endif
+
 struct ssl_backend_data {
   struct Curl_easy *logger; /* transfer handle to pass trace logs to, only
                                using sockindex 0 */
@@ -435,18 +439,21 @@
 
 static CURLcode ossl_seed(struct Curl_easy *data)
 {
-  char fname[256];
-
   /* This might get called before it has been added to a multi handle */
   if(data->multi && data->multi->ssl_seeded)
     return CURLE_OK;
 
   if(rand_enough()) {
-    /* OpenSSL 1.1.0+ will return here */
+    /* OpenSSL 1.1.0+ should return here */
     if(data->multi)
       data->multi->ssl_seeded = TRUE;
     return CURLE_OK;
   }
+#ifdef HAVE_RANDOM_INIT_BY_DEFAULT
+  /* with OpenSSL 1.1.0+, a failed RAND_status is a showstopper */
+  failf(data, "Insufficient randomness");
+  return CURLE_SSL_CONNECT_ERROR;
+#else
 
 #ifndef RANDOM_FILE
   /* if RANDOM_FILE isn't defined, we only perform this if an option tells
@@ -507,19 +514,23 @@
     RAND_add(randb, (int)len, (double)len/2);
   } while(!rand_enough());
 
-  /* generates a default path for the random seed file */
-  fname[0] = 0; /* blank it first */
-  RAND_file_name(fname, sizeof(fname));
-  if(fname[0]) {
-    /* we got a file name to try */
-    RAND_load_file(fname, RAND_LOAD_LENGTH);
-    if(rand_enough())
-      return CURLE_OK;
+  {
+    /* generates a default path for the random seed file */
+    char fname[256];
+    fname[0] = 0; /* blank it first */
+    RAND_file_name(fname, sizeof(fname));
+    if(fname[0]) {
+      /* we got a file name to try */
+      RAND_load_file(fname, RAND_LOAD_LENGTH);
+      if(rand_enough())
+        return CURLE_OK;
+    }
   }
 
   infof(data, "libcurl is now using a weak random seed!");
   return (rand_enough() ? CURLE_OK :
-    CURLE_SSL_CONNECT_ERROR /* confusing error code */);
+          CURLE_SSL_CONNECT_ERROR /* confusing error code */);
+#endif
 }
 
 #ifndef SSL_FILETYPE_ENGINE
@@ -1192,7 +1203,7 @@
                          CONF_MFLAGS_IGNORE_MISSING_FILE);
 #endif
 
-  /* Lets get nice error messages */
+  /* Let's get nice error messages */
   SSL_load_error_strings();
 
   /* Init the global ciphers and digests */
@@ -1769,7 +1780,7 @@
 
     /* we have the name entry and we will now convert this to a string
        that we can use for comparison. Doing this we support BMPstring,
-       UTF8 etc. */
+       UTF8, etc. */
 
     if(i >= 0) {
       ASN1_STRING *tmp =
@@ -2060,6 +2071,10 @@
       case SSL3_MT_ENCRYPTED_EXTENSIONS:
         return "Encrypted Extensions";
 #endif
+#ifdef SSL3_MT_SUPPLEMENTAL_DATA
+      case SSL3_MT_SUPPLEMENTAL_DATA:
+        return "Supplemental data";
+#endif
 #ifdef SSL3_MT_END_OF_EARLY_DATA
       case SSL3_MT_END_OF_EARLY_DATA:
         return "End of early data";
@@ -2158,7 +2173,7 @@
 
   /* Log progress for interesting records only (like Handshake or Alert), skip
    * all raw record headers (content_type == SSL3_RT_HEADER or ssl_ver == 0).
-   * For TLS 1.3, skip notification of the decrypted inner Content Type.
+   * For TLS 1.3, skip notification of the decrypted inner Content-Type.
    */
   if(ssl_ver
 #ifdef SSL3_RT_INNER_CONTENT_TYPE
@@ -2299,7 +2314,7 @@
   long curl_ssl_version_min = SSL_CONN_CONFIG(version);
   long curl_ssl_version_max;
 
-  /* convert cURL min SSL version option to OpenSSL constant */
+  /* convert curl min SSL version option to OpenSSL constant */
 #if defined(OPENSSL_IS_BORINGSSL) || defined(LIBRESSL_VERSION_NUMBER)
   uint16_t ossl_ssl_version_min = 0;
   uint16_t ossl_ssl_version_max = 0;
@@ -2329,7 +2344,7 @@
      We don't want to pass 0 to SSL_CTX_set_min_proto_version as
      it would enable all versions down to the lowest supported by
      the library.
-     So we skip this, and stay with the OS default
+     So we skip this, and stay with the library default
   */
   if(curl_ssl_version_min != CURL_SSLVERSION_DEFAULT) {
     if(!SSL_CTX_set_min_proto_version(ctx, ossl_ssl_version_min)) {
@@ -2340,7 +2355,7 @@
   /* ... then, TLS max version */
   curl_ssl_version_max = SSL_CONN_CONFIG(version_max);
 
-  /* convert cURL max SSL version option to OpenSSL constant */
+  /* convert curl max SSL version option to OpenSSL constant */
   switch(curl_ssl_version_max) {
     case CURL_SSLVERSION_MAX_TLSv1_0:
       ossl_ssl_version_max = TLS1_VERSION;
@@ -2489,6 +2504,7 @@
 
   if(SSL_SET_OPTION(primary.sessionid)) {
     bool incache;
+    bool added = FALSE;
     void *old_ssl_sessionid = NULL;
 
     Curl_ssl_sessionid_lock(data);
@@ -2507,9 +2523,11 @@
 
     if(!incache) {
       if(!Curl_ssl_addsessionid(data, conn, isproxy, ssl_sessionid,
-                                0 /* unknown size */, sockindex)) {
-        /* the session has been put into the session cache */
-        res = 1;
+                                0 /* unknown size */, sockindex, &added)) {
+        if(added) {
+          /* the session has been put into the session cache */
+          res = 1;
+        }
       }
       else
         failf(data, "failed to store ssl session");
@@ -2523,7 +2541,7 @@
 static CURLcode load_cacert_from_memory(SSL_CTX *ctx,
                                         const struct curl_blob *ca_info_blob)
 {
-  /* these need freed at the end */
+  /* these need to be freed at the end */
   BIO *cbio = NULL;
   STACK_OF(X509_INFO) *inf = NULL;
 
@@ -2658,8 +2676,7 @@
     return CURLE_SSL_CONNECT_ERROR;
   }
 
-  if(backend->ctx)
-    SSL_CTX_free(backend->ctx);
+  DEBUGASSERT(!backend->ctx);
   backend->ctx = SSL_CTX_new(req_method);
 
   if(!backend->ctx) {
@@ -2681,23 +2698,23 @@
   }
 #endif
 
-  /* OpenSSL contains code to work-around lots of bugs and flaws in various
+  /* OpenSSL contains code to work around lots of bugs and flaws in various
      SSL-implementations. SSL_CTX_set_options() is used to enabled those
      work-arounds. The man page for this option states that SSL_OP_ALL enables
      all the work-arounds and that "It is usually safe to use SSL_OP_ALL to
      enable the bug workaround options if compatibility with somewhat broken
      implementations is desired."
 
-     The "-no_ticket" option was introduced in Openssl0.9.8j. It's a flag to
+     The "-no_ticket" option was introduced in OpenSSL 0.9.8j. It's a flag to
      disable "rfc4507bis session ticket support".  rfc4507bis was later turned
      into the proper RFC5077 it seems: https://tools.ietf.org/html/rfc5077
 
      The enabled extension concerns the session management. I wonder how often
-     libcurl stops a connection and then resumes a TLS session. also, sending
-     the session data is some overhead. .I suggest that you just use your
+     libcurl stops a connection and then resumes a TLS session. Also, sending
+     the session data is some overhead. I suggest that you just use your
      proposed patch (which explicitly disables TICKET).
 
-     If someone writes an application with libcurl and openssl who wants to
+     If someone writes an application with libcurl and OpenSSL who wants to
      enable the feature, one can do this in the SSL callback.
 
      SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG option enabling allowed proper
@@ -2733,7 +2750,7 @@
 #endif
 
 #ifdef SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS
-  /* unless the user explicitly ask to allow the protocol vulnerability we
+  /* unless the user explicitly asks to allow the protocol vulnerability we
      use the work-around */
   if(!SSL_SET_OPTION(enable_beast))
     ctx_options &= ~SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS;
@@ -2933,7 +2950,7 @@
                                NULL, cert_name, sizeof(cert_name))) {
           strcpy(cert_name, "Unknown");
         }
-        infof(data, "SSL: Checking cert %s\"\n", cert_name);
+        infof(data, "SSL: Checking cert \"%s\"", cert_name);
 #endif
 
         encoded_cert = (const unsigned char *)pContext->pbCertEncoded;
@@ -3030,9 +3047,9 @@
         return result;
     }
     if(imported_native_ca)
-      infof(data, "successfully imported windows ca store");
+      infof(data, "successfully imported Windows CA store");
     else
-      infof(data, "error importing windows ca store, continuing anyway");
+      infof(data, "error importing Windows CA store, continuing anyway");
   }
 #endif
 
@@ -3044,77 +3061,53 @@
         failf(data, "error importing CA certificate blob");
         return result;
       }
-      /* Only warning if no certificate verification is required. */
+      /* Only warn if no certificate verification is required. */
       infof(data, "error importing CA certificate blob, continuing anyway");
     }
   }
 
+  if(verifypeer && !imported_native_ca && (ssl_cafile || ssl_capath)) {
 #if defined(OPENSSL_VERSION_MAJOR) && (OPENSSL_VERSION_MAJOR >= 3)
   /* OpenSSL 3.0.0 has deprecated SSL_CTX_load_verify_locations */
-  {
-    if(ssl_cafile) {
-      if(!SSL_CTX_load_verify_file(backend->ctx, ssl_cafile)) {
-        if(verifypeer && !imported_native_ca) {
-          /* Fail if we insist on successfully verifying the server. */
-          failf(data, "error setting certificate file: %s", ssl_cafile);
-          return CURLE_SSL_CACERT_BADFILE;
-        }
-        /* Continue with a warning if no certificate verif is required. */
-        infof(data, "error setting certificate file, continuing anyway");
-      }
-      infof(data, " CAfile: %s", ssl_cafile);
+    if(ssl_cafile &&
+       !SSL_CTX_load_verify_file(backend->ctx, ssl_cafile)) {
+      /* Fail if we insist on successfully verifying the server. */
+      failf(data, "error setting certificate file: %s", ssl_cafile);
+      return CURLE_SSL_CACERT_BADFILE;
     }
-    if(ssl_capath) {
-      if(!SSL_CTX_load_verify_dir(backend->ctx, ssl_capath)) {
-        if(verifypeer && !imported_native_ca) {
-          /* Fail if we insist on successfully verifying the server. */
-          failf(data, "error setting certificate path: %s", ssl_capath);
-          return CURLE_SSL_CACERT_BADFILE;
-        }
-        /* Continue with a warning if no certificate verif is required. */
-        infof(data, "error setting certificate path, continuing anyway");
-      }
-      infof(data, " CApath: %s", ssl_capath);
+    if(ssl_capath &&
+       !SSL_CTX_load_verify_dir(backend->ctx, ssl_capath)) {
+      /* Fail if we insist on successfully verifying the server. */
+      failf(data, "error setting certificate path: %s", ssl_capath);
+      return CURLE_SSL_CACERT_BADFILE;
     }
-  }
 #else
-  if(ssl_cafile || ssl_capath) {
-    /* tell SSL where to find CA certificates that are used to verify
-       the servers certificate. */
+    /* tell OpenSSL where to find CA certificates that are used to verify the
+       server's certificate. */
     if(!SSL_CTX_load_verify_locations(backend->ctx, ssl_cafile, ssl_capath)) {
-      if(verifypeer && !imported_native_ca) {
-        /* Fail if we insist on successfully verifying the server. */
-        failf(data, "error setting certificate verify locations:"
-              "  CAfile: %s CApath: %s",
-              ssl_cafile ? ssl_cafile : "none",
-              ssl_capath ? ssl_capath : "none");
-        return CURLE_SSL_CACERT_BADFILE;
-      }
-      /* Just continue with a warning if no strict certificate verification
-         is required. */
-      infof(data, "error setting certificate verify locations,"
-            " continuing anyway:");
+      /* Fail if we insist on successfully verifying the server. */
+      failf(data, "error setting certificate verify locations:"
+            "  CAfile: %s CApath: %s",
+            ssl_cafile ? ssl_cafile : "none",
+            ssl_capath ? ssl_capath : "none");
+      return CURLE_SSL_CACERT_BADFILE;
     }
-    else {
-      /* Everything is fine. */
-      infof(data, "successfully set certificate verify locations:");
-    }
+#endif
     infof(data, " CAfile: %s", ssl_cafile ? ssl_cafile : "none");
     infof(data, " CApath: %s", ssl_capath ? ssl_capath : "none");
   }
-#endif
 
 #ifdef CURL_CA_FALLBACK
   if(verifypeer &&
      !ca_info_blob && !ssl_cafile && !ssl_capath && !imported_native_ca) {
     /* verifying the peer without any CA certificates won't
-       work so use openssl's built in default as fallback */
+       work so use openssl's built-in default as fallback */
     SSL_CTX_set_default_verify_paths(backend->ctx);
   }
 #endif
 
   if(ssl_crlfile) {
-    /* tell SSL where to find CRL file that is used to check certificate
+    /* tell OpenSSL where to find CRL file that is used to check certificate
      * revocation */
     lookup = X509_STORE_add_lookup(SSL_CTX_get_cert_store(backend->ctx),
                                  X509_LOOKUP_file());
@@ -3124,7 +3117,7 @@
       return CURLE_SSL_CRL_BADFILE;
     }
     /* Everything is fine. */
-    infof(data, "successfully load CRL file:");
+    infof(data, "successfully loaded CRL file:");
     X509_STORE_set_flags(SSL_CTX_get_cert_store(backend->ctx),
                          X509_V_FLAG_CRL_CHECK|X509_V_FLAG_CRL_CHECK_ALL);
 
@@ -3150,7 +3143,7 @@
          only, instead of needing the whole chain.
 
          Due to OpenSSL bug https://github.com/openssl/openssl/issues/5081 we
-         cannot do partial chains with CRL check.
+         cannot do partial chains with a CRL check.
       */
       X509_STORE_set_flags(SSL_CTX_get_cert_store(backend->ctx),
                            X509_V_FLAG_PARTIAL_CHAIN);
@@ -3158,7 +3151,7 @@
 #endif
   }
 
-  /* SSL always tries to verify the peer, this only says whether it should
+  /* OpenSSL always tries to verify the peer, this only says whether it should
    * fail to connect if the verification fails, or if it should continue
    * anyway. In the latter case the result of the verification is checked with
    * SSL_get_verify_result() below. */
@@ -3173,7 +3166,7 @@
 #endif
 
   /* Enable the session cache because it's a prerequisite for the "new session"
-   * callback. Use the "external storage" mode to avoid that OpenSSL creates
+   * callback. Use the "external storage" mode to prevent OpenSSL from creating
    * an internal session cache.
    */
   SSL_CTX_set_session_cache_mode(backend->ctx,
@@ -3192,7 +3185,7 @@
     }
   }
 
-  /* Lets make an SSL structure */
+  /* Let's make an SSL structure */
   if(backend->handle)
     SSL_free(backend->handle);
   backend->handle = SSL_new(backend->ctx);
@@ -3332,7 +3325,7 @@
       /* the connection failed, we're not waiting for anything else. */
       connssl->connecting_state = ssl_connect_2;
 
-      /* Get the earliest error code from the thread's error queue and removes
+      /* Get the earliest error code from the thread's error queue and remove
          the entry. */
       errdetail = ERR_get_error();
 
@@ -3361,7 +3354,7 @@
     !defined(LIBRESSL_VERSION_NUMBER) && \
     !defined(OPENSSL_IS_BORINGSSL))
       /* SSL_R_TLSV13_ALERT_CERTIFICATE_REQUIRED is only available on
-         OpenSSL version above v1.1.1, not Libre SSL nor BoringSSL */
+         OpenSSL version above v1.1.1, not LibreSSL nor BoringSSL */
       else if((lib == ERR_LIB_SSL) &&
               (reason == SSL_R_TLSV13_ALERT_CERTIFICATE_REQUIRED)) {
           /* If client certificate is required, communicate the
@@ -3378,7 +3371,7 @@
       /* detail is already set to the SSL error above */
 
       /* If we e.g. use SSLv2 request-method and the server doesn't like us
-       * (RST connection etc.), OpenSSL gives no explanation whatsoever and
+       * (RST connection, etc.), OpenSSL gives no explanation whatsoever and
        * the SO_ERROR is also lost.
        */
       if(CURLE_SSL_CONNECT_ERROR == result && errdetail == 0) {
@@ -3401,7 +3394,7 @@
     }
   }
   else {
-    /* we have been connected fine, we're not waiting for anything else. */
+    /* we connected fine, we're not waiting for anything else. */
     connssl->connecting_state = ssl_connect_3;
 
     /* Informational message */
@@ -3820,7 +3813,7 @@
 }
 
 /*
- * Get the server cert, verify it and show it etc, only call failf() if the
+ * Get the server cert, verify it and show it, etc., only call failf() if the
  * 'strict' argument is TRUE as otherwise all this is for informational
  * purposes only!
  *
@@ -4021,7 +4014,7 @@
   /*
    * We check certificates to authenticate the server; otherwise we risk
    * man-in-the-middle attack; NEVERTHELESS, if we're told explicitly not to
-   * verify the peer ignore faults and failures from the server cert
+   * verify the peer, ignore faults and failures from the server cert
    * operations.
    */
 
@@ -4059,7 +4052,7 @@
     const timediff_t timeout_ms = Curl_timeleft(data, NULL, TRUE);
 
     if(timeout_ms < 0) {
-      /* no need to continue if time already is up */
+      /* no need to continue if time is already up */
       failf(data, "SSL connection timeout");
       return CURLE_OPERATION_TIMEDOUT;
     }
diff --git a/lib/vtls/rustls.c b/lib/vtls/rustls.c
index 94a1ca8..2ac97ce 100644
--- a/lib/vtls/rustls.c
+++ b/lib/vtls/rustls.c
@@ -34,7 +34,7 @@
 #include "sendf.h"
 #include "vtls.h"
 #include "select.h"
-
+#include "strerror.h"
 #include "multiif.h"
 
 struct ssl_backend_data
@@ -132,7 +132,9 @@
     infof(data, "sread: EAGAIN or EWOULDBLOCK");
   }
   else if(io_error) {
-    failf(data, "reading from socket: %s", strerror(io_error));
+    char buffer[STRERROR_LEN];
+    failf(data, "reading from socket: %s",
+          Curl_strerror(io_error, buffer, sizeof(buffer)));
     *err = CURLE_READ_ERROR;
     return -1;
   }
@@ -244,7 +246,9 @@
       return -1;
     }
     else if(io_error) {
-      failf(data, "writing to socket: %s", strerror(io_error));
+      char buffer[STRERROR_LEN];
+      failf(data, "writing to socket: %s",
+            Curl_strerror(io_error, buffer, sizeof(buffer)));
       *err = CURLE_WRITE_ERROR;
       return -1;
     }
diff --git a/lib/vtls/schannel.c b/lib/vtls/schannel.c
index 7ffba6c..44c59e7 100644
--- a/lib/vtls/schannel.c
+++ b/lib/vtls/schannel.c
@@ -141,6 +141,12 @@
 #  define CALG_SHA_256 0x0000800c
 #endif
 
+/* Work around typo in classic MinGW's w32api up to version 5.0,
+   see https://osdn.net/projects/mingw/ticket/38391 */
+#if !defined(ALG_CLASS_DHASH) && defined(ALG_CLASS_HASH)
+#define ALG_CLASS_DHASH ALG_CLASS_HASH
+#endif
+
 #define BACKEND connssl->backend
 
 static Curl_recv schannel_recv;
@@ -279,13 +285,7 @@
 #ifdef CALG_HMAC
   CIPHEROPTION(CALG_HMAC);
 #endif
-#if !defined(__W32API_MAJOR_VERSION) ||                                 \
-  !defined(__W32API_MINOR_VERSION) ||                                   \
-  defined(__MINGW64_VERSION_MAJOR) ||                                   \
-  (__W32API_MAJOR_VERSION > 5)     ||                                   \
-  ((__W32API_MAJOR_VERSION == 5) && (__W32API_MINOR_VERSION > 0))
-  /* CALG_TLS1PRF has a syntax error in MinGW's w32api up to version 5.0,
-     see https://osdn.net/projects/mingw/ticket/38391 */
+#ifdef CALG_TLS1PRF
   CIPHEROPTION(CALG_TLS1PRF);
 #endif
 #ifdef CALG_HASH_REPLACE_OWF
@@ -716,8 +716,6 @@
   }
   BACKEND->cred->refcount = 1;
 
-  /* https://msdn.microsoft.com/en-us/library/windows/desktop/aa374716.aspx
-   */
   sspi_status =
     s_pSecFn->AcquireCredentialsHandle(NULL, (TCHAR *)UNISP_NAME,
                                        SECPKG_CRED_OUTBOUND, NULL,
@@ -1141,8 +1139,6 @@
     if(!host_name)
       return CURLE_OUT_OF_MEMORY;
 
-    /* https://msdn.microsoft.com/en-us/library/windows/desktop/aa375924.aspx
-     */
     sspi_status = s_pSecFn->InitializeSecurityContext(
       &BACKEND->cred->cred_handle, &BACKEND->ctxt->ctxt_handle,
       host_name, BACKEND->req_flags, 0, 0, &inbuf_desc, 0, NULL,
@@ -1364,7 +1360,7 @@
   SECURITY_STATUS sspi_status = SEC_E_OK;
   CERT_CONTEXT *ccert_context = NULL;
   bool isproxy = SSL_IS_PROXY();
-#ifdef DEBUGBUILD
+#if defined(DEBUGBUILD) && !defined(CURL_DISABLE_VERBOSE_STRINGS)
   const char * const hostname = SSL_HOST_NAME();
 #endif
 #ifdef HAS_ALPN
@@ -1436,6 +1432,7 @@
   /* save the current session data for possible re-use */
   if(SSL_SET_OPTION(primary.sessionid)) {
     bool incache;
+    bool added = FALSE;
     struct Curl_schannel_cred *old_cred = NULL;
 
     Curl_ssl_sessionid_lock(data);
@@ -1453,13 +1450,13 @@
     if(!incache) {
       result = Curl_ssl_addsessionid(data, conn, isproxy, BACKEND->cred,
                                      sizeof(struct Curl_schannel_cred),
-                                     sockindex);
+                                     sockindex, &added);
       if(result) {
         Curl_ssl_sessionid_unlock(data);
         failf(data, "schannel: failed to store credential handle");
         return result;
       }
-      else {
+      else if(added) {
         /* this cred session is now also referenced by sessionid cache */
         BACKEND->cred->refcount++;
         DEBUGF(infof(data,
@@ -1970,12 +1967,12 @@
       if(sspi_status == SEC_I_RENEGOTIATE) {
         infof(data, "schannel: remote party requests renegotiation");
         if(*err && *err != CURLE_AGAIN) {
-          infof(data, "schannel: can't renogotiate, an error is pending");
+          infof(data, "schannel: can't renegotiate, an error is pending");
           goto cleanup;
         }
         if(BACKEND->encdata_offset) {
           *err = CURLE_RECV_ERROR;
-          infof(data, "schannel: can't renogotiate, "
+          infof(data, "schannel: can't renegotiate, "
                 "encrypted data available");
           goto cleanup;
         }
@@ -2124,26 +2121,23 @@
     return FALSE;
 }
 
-static void schannel_close(struct Curl_easy *data, struct connectdata *conn,
-                           int sockindex)
-{
-  if(conn->ssl[sockindex].use)
-    /* if the SSL/TLS channel hasn't been shut down yet, do that now. */
-    Curl_ssl_shutdown(data, conn, sockindex);
-}
-
 static void schannel_session_free(void *ptr)
 {
   /* this is expected to be called under sessionid lock */
   struct Curl_schannel_cred *cred = ptr;
 
-  cred->refcount--;
-  if(cred->refcount == 0) {
-    s_pSecFn->FreeCredentialsHandle(&cred->cred_handle);
-    Curl_safefree(cred);
+  if(cred) {
+    cred->refcount--;
+    if(cred->refcount == 0) {
+      s_pSecFn->FreeCredentialsHandle(&cred->cred_handle);
+      Curl_safefree(cred);
+    }
   }
 }
 
+/* shut down the SSL connection and clean up related memory.
+   this function can be called multiple times on the same connection including
+   if the SSL connection failed (eg connection made but failed handshake). */
 static int schannel_shutdown(struct Curl_easy *data, struct connectdata *conn,
                              int sockindex)
 {
@@ -2155,10 +2149,12 @@
 
   DEBUGASSERT(data);
 
-  infof(data, "schannel: shutting down SSL/TLS connection with %s port %hu",
-        hostname, conn->remote_port);
+  if(connssl->use) {
+    infof(data, "schannel: shutting down SSL/TLS connection with %s port %hu",
+          hostname, conn->remote_port);
+  }
 
-  if(BACKEND->cred && BACKEND->ctxt) {
+  if(connssl->use && BACKEND->cred && BACKEND->ctxt) {
     SecBufferDesc BuffDesc;
     SecBuffer Buffer;
     SECURITY_STATUS sspi_status;
@@ -2251,6 +2247,16 @@
   return CURLE_OK;
 }
 
+static void schannel_close(struct Curl_easy *data, struct connectdata *conn,
+                           int sockindex)
+{
+  if(conn->ssl[sockindex].use)
+    /* Curl_ssl_shutdown resets the socket state and calls schannel_shutdown */
+    Curl_ssl_shutdown(data, conn, sockindex);
+  else
+    schannel_shutdown(data, conn, sockindex);
+}
+
 static int schannel_init(void)
 {
   return (Curl_sspi_global_init() == CURLE_OK ? 1 : 0);
diff --git a/lib/vtls/schannel_verify.c b/lib/vtls/schannel_verify.c
index 12fccaa..1b283d0 100644
--- a/lib/vtls/schannel_verify.c
+++ b/lib/vtls/schannel_verify.c
@@ -80,7 +80,7 @@
 /* Search the substring needle,needlelen into string haystack,haystacklen
  * Strings don't need to be terminated by a '\0'.
  * Similar of OSX/Linux memmem (not available on Visual Studio).
- * Return position of beginning of first occurence or NULL if not found
+ * Return position of beginning of first occurrence or NULL if not found
  */
 static const char *c_memmem(const void *haystack, size_t haystacklen,
                             const void *needle, size_t needlelen)
diff --git a/lib/vtls/sectransp.c b/lib/vtls/sectransp.c
index 26b833d..0bf5154 100644
--- a/lib/vtls/sectransp.c
+++ b/lib/vtls/sectransp.c
@@ -33,6 +33,8 @@
 #include "strtok.h"
 #include "multiif.h"
 #include "strcase.h"
+#include "x509asn1.h"
+#include "strerror.h"
 
 #ifdef USE_SECTRANSP
 
@@ -2107,7 +2109,7 @@
       }
 
       result = Curl_ssl_addsessionid(data, conn, isproxy, ssl_sessionid,
-                                     ssl_sessionid_len, sockindex);
+                                     ssl_sessionid_len, sockindex, NULL);
       Curl_ssl_sessionid_unlock(data);
       if(result) {
         failf(data, "failed to store ssl session");
@@ -2854,13 +2856,60 @@
   }
 }
 
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-/* This should be called during step3 of the connection at the earliest */
-static void
-show_verbose_server_cert(struct Curl_easy *data,
-                         struct connectdata *conn,
-                         int sockindex)
+static CURLcode
+add_cert_to_certinfo(struct Curl_easy *data,
+                     SecCertificateRef server_cert,
+                     int idx)
 {
+  CURLcode result = CURLE_OK;
+  const char *beg;
+  const char *end;
+  CFDataRef cert_data = SecCertificateCopyData(server_cert);
+
+  if(!cert_data)
+    return CURLE_PEER_FAILED_VERIFICATION;
+
+  beg = (const char *)CFDataGetBytePtr(cert_data);
+  end = beg + CFDataGetLength(cert_data);
+  result = Curl_extract_certinfo(data, idx, beg, end);
+  CFRelease(cert_data);
+  return result;
+}
+
+static CURLcode
+collect_server_cert_single(struct Curl_easy *data,
+                           SecCertificateRef server_cert,
+                           CFIndex idx)
+{
+  CURLcode result = CURLE_OK;
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+  if(data->set.verbose) {
+    char *certp;
+    result = CopyCertSubject(data, server_cert, &certp);
+    if(!result) {
+      infof(data, "Server certificate: %s", certp);
+      free(certp);
+    }
+  }
+#endif
+  if(data->set.ssl.certinfo)
+    result = add_cert_to_certinfo(data, server_cert, (int)idx);
+  return result;
+}
+
+/* This should be called during step3 of the connection at the earliest */
+static CURLcode
+collect_server_cert(struct Curl_easy *data,
+                    struct connectdata *conn,
+                    int sockindex)
+{
+#ifndef CURL_DISABLE_VERBOSE_STRINGS
+  const bool show_verbose_server_cert = data->set.verbose;
+#else
+  const bool show_verbose_server_cert = false;
+#endif
+  CURLcode result = data->set.ssl.certinfo ?
+    CURLE_PEER_FAILED_VERIFICATION : CURLE_OK;
   struct ssl_connect_data *connssl = &conn->ssl[sockindex];
   struct ssl_backend_data *backend = connssl->backend;
   CFArrayRef server_certs = NULL;
@@ -2869,8 +2918,11 @@
   CFIndex i, count;
   SecTrustRef trust = NULL;
 
+  if(!show_verbose_server_cert && !data->set.ssl.certinfo)
+    return CURLE_OK;
+
   if(!backend->ssl_ctx)
-    return;
+    return result;
 
 #if CURL_BUILD_MAC_10_7 || CURL_BUILD_IOS
 #if CURL_BUILD_IOS
@@ -2880,15 +2932,11 @@
      a null trust, so be on guard for that: */
   if(err == noErr && trust) {
     count = SecTrustGetCertificateCount(trust);
-    for(i = 0L ; i < count ; i++) {
-      CURLcode result;
-      char *certp;
+    if(data->set.ssl.certinfo)
+      result = Curl_ssl_init_certinfo(data, (int)count);
+    for(i = 0L ; !result && (i < count) ; i++) {
       server_cert = SecTrustGetCertificateAtIndex(trust, i);
-      result = CopyCertSubject(data, server_cert, &certp);
-      if(!result) {
-        infof(data, "Server certificate: %s", certp);
-        free(certp);
-      }
+      result = collect_server_cert_single(data, server_cert, i);
     }
     CFRelease(trust);
   }
@@ -2906,15 +2954,11 @@
        a null trust, so be on guard for that: */
     if(err == noErr && trust) {
       count = SecTrustGetCertificateCount(trust);
-      for(i = 0L ; i < count ; i++) {
-        char *certp;
-        CURLcode result;
+      if(data->set.ssl.certinfo)
+        result = Curl_ssl_init_certinfo(data, (int)count);
+      for(i = 0L ; !result && (i < count) ; i++) {
         server_cert = SecTrustGetCertificateAtIndex(trust, i);
-        result = CopyCertSubject(data, server_cert, &certp);
-        if(!result) {
-          infof(data, "Server certificate: %s", certp);
-          free(certp);
-        }
+        result = collect_server_cert_single(data, server_cert, i);
       }
       CFRelease(trust);
     }
@@ -2925,16 +2969,12 @@
     /* Just in case SSLCopyPeerCertificates() returns null too... */
     if(err == noErr && server_certs) {
       count = CFArrayGetCount(server_certs);
-      for(i = 0L ; i < count ; i++) {
-        char *certp;
-        CURLcode result;
+      if(data->set.ssl.certinfo)
+        result = Curl_ssl_init_certinfo(data, (int)count);
+      for(i = 0L ; !result && (i < count) ; i++) {
         server_cert = (SecCertificateRef)CFArrayGetValueAtIndex(server_certs,
                                                                 i);
-        result = CopyCertSubject(data, server_cert, &certp);
-        if(!result) {
-          infof(data, "Server certificate: %s", certp);
-          free(certp);
-        }
+        result = collect_server_cert_single(data, server_cert, i);
       }
       CFRelease(server_certs);
     }
@@ -2946,21 +2986,17 @@
   err = SSLCopyPeerCertificates(backend->ssl_ctx, &server_certs);
   if(err == noErr) {
     count = CFArrayGetCount(server_certs);
-    for(i = 0L ; i < count ; i++) {
-      CURLcode result;
-      char *certp;
+    if(data->set.ssl.certinfo)
+      result = Curl_ssl_init_certinfo(data, (int)count);
+    for(i = 0L ; !result && (i < count) ; i++) {
       server_cert = (SecCertificateRef)CFArrayGetValueAtIndex(server_certs, i);
-      result = CopyCertSubject(data, server_cert, &certp);
-      if(!result) {
-        infof(data, "Server certificate: %s", certp);
-        free(certp);
-      }
+      result = collect_server_cert_single(data, server_cert, i);
     }
     CFRelease(server_certs);
   }
 #endif /* CURL_BUILD_MAC_10_7 || CURL_BUILD_IOS */
+  return result;
 }
-#endif /* !CURL_DISABLE_VERBOSE_STRINGS */
 
 static CURLcode
 sectransp_connect_step3(struct Curl_easy *data, struct connectdata *conn,
@@ -2969,12 +3005,11 @@
   struct ssl_connect_data *connssl = &conn->ssl[sockindex];
 
   /* There is no step 3!
-   * Well, okay, if verbose mode is on, let's print the details of the
-   * server certificates. */
-#ifndef CURL_DISABLE_VERBOSE_STRINGS
-  if(data->set.verbose)
-    show_verbose_server_cert(data, conn, sockindex);
-#endif
+   * Well, okay, let's collect server certificates, and if verbose mode is on,
+   * let's print the details of the server certificates. */
+  const CURLcode result = collect_server_cert(data, conn, sockindex);
+  if(result)
+    return result;
 
   connssl->connecting_state = ssl_connect_done;
   return CURLE_OK;
@@ -3188,7 +3223,9 @@
     nread = read(conn->sock[sockindex], buf, sizeof(buf));
 
     if(nread < 0) {
-      failf(data, "read: %s", strerror(errno));
+      char buffer[STRERROR_LEN];
+      failf(data, "read: %s",
+            Curl_strerror(errno, buffer, sizeof(buffer)));
       rc = -1;
     }
 
@@ -3433,6 +3470,7 @@
   { CURLSSLBACKEND_SECURETRANSPORT, "secure-transport" }, /* info */
 
   SSLSUPP_CAINFO_BLOB |
+  SSLSUPP_CERTINFO |
 #ifdef SECTRANSP_PINNEDPUBKEY
   SSLSUPP_PINNEDPUBKEY,
 #else
diff --git a/lib/vtls/vtls.c b/lib/vtls/vtls.c
index e5bbe1f..6007bbb 100644
--- a/lib/vtls/vtls.c
+++ b/lib/vtls/vtls.c
@@ -516,7 +516,8 @@
                                const bool isProxy,
                                void *ssl_sessionid,
                                size_t idsize,
-                               int sockindex)
+                               int sockindex,
+                               bool *added)
 {
   size_t i;
   struct Curl_ssl_session *store;
@@ -536,6 +537,10 @@
   const char *hostname = conn->host.name;
 #endif
   (void)sockindex;
+
+  if(added)
+    *added = FALSE;
+
   if(!data->state.session)
     return CURLE_OK;
 
@@ -609,6 +614,9 @@
     return CURLE_OUT_OF_MEMORY;
   }
 
+  if(added)
+    *added = TRUE;
+
   DEBUGF(infof(data, "Added Session ID to cache for %s://%s:%d [%s]",
                store->scheme, store->name, store->remote_port,
                isProxy ? "PROXY" : "server"));
diff --git a/lib/vtls/vtls.h b/lib/vtls/vtls.h
index beaa83d..c7bbba0 100644
--- a/lib/vtls/vtls.h
+++ b/lib/vtls/vtls.h
@@ -261,7 +261,8 @@
                                const bool isProxy,
                                void *ssl_sessionid,
                                size_t idsize,
-                               int sockindex);
+                               int sockindex,
+                               bool *added);
 /* Kill a single session ID entry in the cache
  * Sessionid mutex must be locked (see Curl_ssl_sessionid_lock).
  * This will call engine-specific curlssl_session_free function, which must
diff --git a/lib/vtls/wolfssl.c b/lib/vtls/wolfssl.c
index 7cab17f..8c5b915 100644
--- a/lib/vtls/wolfssl.c
+++ b/lib/vtls/wolfssl.c
@@ -202,6 +202,43 @@
   return -1;
 }
 
+#ifdef HAVE_LIBOQS
+struct group_name_map {
+  const word16 group;
+  const char   *name;
+};
+
+static const struct group_name_map gnm[] = {
+  { WOLFSSL_KYBER_LEVEL1, "KYBER_LEVEL1" },
+  { WOLFSSL_KYBER_LEVEL3, "KYBER_LEVEL3" },
+  { WOLFSSL_KYBER_LEVEL5, "KYBER_LEVEL5" },
+  { WOLFSSL_NTRU_HPS_LEVEL1, "NTRU_HPS_LEVEL1" },
+  { WOLFSSL_NTRU_HPS_LEVEL3, "NTRU_HPS_LEVEL3" },
+  { WOLFSSL_NTRU_HPS_LEVEL5, "NTRU_HPS_LEVEL5" },
+  { WOLFSSL_NTRU_HRSS_LEVEL3, "NTRU_HRSS_LEVEL3" },
+  { WOLFSSL_SABER_LEVEL1, "SABER_LEVEL1" },
+  { WOLFSSL_SABER_LEVEL3, "SABER_LEVEL3" },
+  { WOLFSSL_SABER_LEVEL5, "SABER_LEVEL5" },
+  { WOLFSSL_KYBER_90S_LEVEL1, "KYBER_90S_LEVEL1" },
+  { WOLFSSL_KYBER_90S_LEVEL3, "KYBER_90S_LEVEL3" },
+  { WOLFSSL_KYBER_90S_LEVEL5, "KYBER_90S_LEVEL5" },
+  { WOLFSSL_P256_NTRU_HPS_LEVEL1, "P256_NTRU_HPS_LEVEL1" },
+  { WOLFSSL_P384_NTRU_HPS_LEVEL3, "P384_NTRU_HPS_LEVEL3" },
+  { WOLFSSL_P521_NTRU_HPS_LEVEL5, "P521_NTRU_HPS_LEVEL5" },
+  { WOLFSSL_P384_NTRU_HRSS_LEVEL3, "P384_NTRU_HRSS_LEVEL3" },
+  { WOLFSSL_P256_SABER_LEVEL1, "P256_SABER_LEVEL1" },
+  { WOLFSSL_P384_SABER_LEVEL3, "P384_SABER_LEVEL3" },
+  { WOLFSSL_P521_SABER_LEVEL5, "P521_SABER_LEVEL5" },
+  { WOLFSSL_P256_KYBER_LEVEL1, "P256_KYBER_LEVEL1" },
+  { WOLFSSL_P384_KYBER_LEVEL3, "P384_KYBER_LEVEL3" },
+  { WOLFSSL_P521_KYBER_LEVEL5, "P521_KYBER_LEVEL5" },
+  { WOLFSSL_P256_KYBER_90S_LEVEL1, "P256_KYBER_90S_LEVEL1" },
+  { WOLFSSL_P384_KYBER_90S_LEVEL3, "P384_KYBER_90S_LEVEL3" },
+  { WOLFSSL_P521_KYBER_90S_LEVEL5, "P521_KYBER_90S_LEVEL5" },
+  { 0, NULL }
+};
+#endif
+
 /*
  * This function loads all the client/CA certificates and CRLs. Setup the TLS
  * layer and do all necessary magic.
@@ -210,11 +247,15 @@
 wolfssl_connect_step1(struct Curl_easy *data, struct connectdata *conn,
                      int sockindex)
 {
-  char *ciphers;
+  char *ciphers, *curves;
   struct ssl_connect_data *connssl = &conn->ssl[sockindex];
   struct ssl_backend_data *backend = connssl->backend;
   SSL_METHOD* req_method = NULL;
   curl_socket_t sockfd = conn->sock[sockindex];
+#ifdef HAVE_LIBOQS
+  word16 oqsAlg = 0;
+  size_t idx = 0;
+#endif
 #ifdef HAVE_SNI
   bool sni = FALSE;
 #define use_sni(x)  sni = (x)
@@ -327,6 +368,26 @@
     infof(data, "Cipher selection: %s", ciphers);
   }
 
+  curves = SSL_CONN_CONFIG(curves);
+  if(curves) {
+
+#ifdef HAVE_LIBOQS
+    for(idx = 0; gnm[idx].name != NULL; idx++) {
+      if(strncmp(curves, gnm[idx].name, strlen(gnm[idx].name)) == 0) {
+        oqsAlg = gnm[idx].group;
+        break;
+      }
+    }
+
+    if(oqsAlg == 0)
+#endif
+    {
+      if(!SSL_CTX_set1_curves_list(backend->ctx, curves)) {
+        failf(data, "failed setting curves list: '%s'", curves);
+        return CURLE_SSL_CIPHER;
+      }
+    }
+  }
 #ifndef NO_FILESYSTEM
   /* load trusted cacert */
   if(SSL_CONN_CONFIG(CAfile)) {
@@ -439,6 +500,14 @@
     return CURLE_OUT_OF_MEMORY;
   }
 
+#ifdef HAVE_LIBOQS
+  if(oqsAlg) {
+    if(wolfSSL_UseKeyShare(backend->handle, oqsAlg) != WOLFSSL_SUCCESS) {
+      failf(data, "unable to use oqs KEM");
+    }
+  }
+#endif
+
 #ifdef HAVE_ALPN
   if(conn->bits.tls_enable_alpn) {
     char protocols[128];
@@ -495,7 +564,7 @@
       /* we got a session id, use it! */
       if(!SSL_set_session(backend->handle, ssl_sessionid)) {
         Curl_ssl_delsessionid(data, ssl_sessionid);
-        infof(data, "Can't use session ID, going on without\n");
+        infof(data, "Can't use session ID, going on without");
       }
       else
         infof(data, "SSL re-using session ID");
@@ -525,6 +594,8 @@
   const char * const dispname = SSL_HOST_DISPNAME();
   const char * const pinnedpubkey = SSL_PINNED_PUB_KEY();
 
+  ERR_clear_error();
+
   conn->recv[sockindex] = wolfssl_recv;
   conn->send[sockindex] = wolfssl_send;
 
@@ -747,7 +818,7 @@
 
       if(!incache) {
         result = Curl_ssl_addsessionid(data, conn, isproxy, our_ssl_sessionid,
-                                       0, sockindex);
+                                       0, sockindex, NULL);
         if(result) {
           Curl_ssl_sessionid_unlock(data);
           failf(data, "failed to store ssl session");
@@ -775,7 +846,11 @@
   struct ssl_backend_data *backend = connssl->backend;
   char error_buffer[WOLFSSL_MAX_ERROR_SZ];
   int memlen = (len > (size_t)INT_MAX) ? INT_MAX : (int)len;
-  int rc = SSL_write(backend->handle, mem, memlen);
+  int rc;
+
+  ERR_clear_error();
+
+  rc = SSL_write(backend->handle, mem, memlen);
 
   if(rc <= 0) {
     int err = SSL_get_error(backend->handle, rc);
@@ -831,7 +906,11 @@
   struct ssl_backend_data *backend = connssl->backend;
   char error_buffer[WOLFSSL_MAX_ERROR_SZ];
   int buffsize = (buffersize > (size_t)INT_MAX) ? INT_MAX : (int)buffersize;
-  int nread = SSL_read(backend->handle, buf, buffsize);
+  int nread;
+
+  ERR_clear_error();
+
+  nread = SSL_read(backend->handle, buf, buffsize);
 
   if(nread < 0) {
     int err = SSL_get_error(backend->handle, nread);
@@ -916,6 +995,7 @@
   (void) data;
 
   if(backend->handle) {
+    ERR_clear_error();
     SSL_free(backend->handle);
     backend->handle = NULL;
   }
diff --git a/lib/x509asn1.c b/lib/x509asn1.c
index c70378d..1bdaead 100644
--- a/lib/x509asn1.c
+++ b/lib/x509asn1.c
@@ -23,7 +23,7 @@
 #include "curl_setup.h"
 
 #if defined(USE_GSKIT) || defined(USE_NSS) || defined(USE_GNUTLS) || \
-    defined(USE_WOLFSSL) || defined(USE_SCHANNEL)
+    defined(USE_WOLFSSL) || defined(USE_SCHANNEL) || defined(USE_SECTRANSP)
 
 #include <curl/curl.h>
 #include "urldata.h"
@@ -34,6 +34,7 @@
 #include "inet_pton.h"
 #include "curl_base64.h"
 #include "x509asn1.h"
+#include "dynbuf.h"
 
 /* The last 3 #include files should be in this order */
 #include "curl_printf.h"
@@ -205,16 +206,16 @@
  */
 static const char *octet2str(const char *beg, const char *end)
 {
-  size_t n = end - beg;
-  char *buf = NULL;
+  struct dynbuf buf;
+  CURLcode result;
 
-  if(n <= (SIZE_T_MAX - 1) / 3) {
-    buf = malloc(3 * n + 1);
-    if(buf)
-      for(n = 0; beg < end; n += 3)
-        msnprintf(buf + n, 4, "%02x:", *(const unsigned char *) beg++);
-  }
-  return buf;
+  Curl_dyn_init(&buf, 3 * CURL_ASN1_MAX + 1);
+  result = Curl_dyn_addn(&buf, "", 0);
+
+  while(!result && beg < end)
+    result = Curl_dyn_addf(&buf, "%02x:", (unsigned char) *beg++);
+
+  return Curl_dyn_ptr(&buf);
 }
 
 static const char *bit2str(const char *beg, const char *end)
@@ -1103,7 +1104,8 @@
   return CURLE_OK;
 }
 
-#endif /* USE_GSKIT or USE_NSS or USE_GNUTLS or USE_WOLFSSL or USE_SCHANNEL */
+#endif /* USE_GSKIT or USE_NSS or USE_GNUTLS or USE_WOLFSSL or USE_SCHANNEL
+        * or USE_SECTRANSP */
 
 #if defined(USE_GSKIT)
 
diff --git a/lib/x509asn1.h b/lib/x509asn1.h
index 326e32d..3b51eee 100644
--- a/lib/x509asn1.h
+++ b/lib/x509asn1.h
@@ -26,7 +26,7 @@
 #include "curl_setup.h"
 
 #if defined(USE_GSKIT) || defined(USE_NSS) || defined(USE_GNUTLS) || \
-    defined(USE_WOLFSSL) || defined(USE_SCHANNEL)
+    defined(USE_WOLFSSL) || defined(USE_SCHANNEL) || defined(USE_SECTRANSP)
 
 #include "urldata.h"
 
@@ -129,5 +129,6 @@
                                const char *beg, const char *end);
 CURLcode Curl_verifyhost(struct Curl_easy *data, struct connectdata *conn,
                          const char *beg, const char *end);
-#endif /* USE_GSKIT or USE_NSS or USE_GNUTLS or USE_WOLFSSL or USE_SCHANNEL */
+#endif /* USE_GSKIT or USE_NSS or USE_GNUTLS or USE_WOLFSSL or USE_SCHANNEL
+        * or USE_SECTRANSP */
 #endif /* HEADER_CURL_X509ASN1_H */
diff --git a/local-configure.patch b/local-configure.patch
index fc06859..c7769c0 100644
--- a/local-configure.patch
+++ b/local-configure.patch
@@ -61,7 +61,7 @@
 -/* The number of bytes in type time_t */
 -#define SIZEOF_TIME_T 8
 -
- /* Define to 1 if you have the ANSI C header files. */
+ /* Define to 1 if all of the C90 standard headers exist (not just the ones
  #define STDC_HEADERS 1
  
 @@ -1058,7 +1040,7 @@
diff --git a/m4/curl-compilers.m4 b/m4/curl-compilers.m4
index 6d17a9f..5fb17cc 100644
--- a/m4/curl-compilers.m4
+++ b/m4/curl-compilers.m4
@@ -64,7 +64,7 @@
 ***
 *** If you wish to help the curl project to better support your compiler
 *** you can report this and the required info on the libcurl development
-*** mailing list: https://cool.haxx.se/mailman/listinfo/curl-library/
+*** mailing list: https://lists.haxx.selistinfo/curl-library/
 ***
 _EOF
   fi
diff --git a/m4/curl-confopts.m4 b/m4/curl-confopts.m4
index 75fa649..efe4249 100644
--- a/m4/curl-confopts.m4
+++ b/m4/curl-confopts.m4
@@ -242,10 +242,6 @@
 AS_HELP_STRING([--enable-symbol-hiding],[Enable hiding of library internal symbols])
 AS_HELP_STRING([--disable-symbol-hiding],[Disable hiding of library internal symbols]),
   OPT_SYMBOL_HIDING=$enableval)
-  AC_ARG_ENABLE(hidden-symbols,
-AS_HELP_STRING([--enable-hidden-symbols],[To be deprecated, use --enable-symbol-hiding])
-AS_HELP_STRING([--disable-hidden-symbols],[To be deprecated, use --disable-symbol-hiding]),
-  OPT_SYMBOL_HIDING=$enableval)
   case "$OPT_SYMBOL_HIDING" in
     no)
       dnl --disable-symbol-hiding option used.
diff --git a/m4/curl-functions.m4 b/m4/curl-functions.m4
index d3ffaea..575454d 100644
--- a/m4/curl-functions.m4
+++ b/m4/curl-functions.m4
@@ -486,7 +486,7 @@
 dnl CURL_INCLUDES_WINSOCK2
 dnl -------------------------------------------------
 dnl Set up variable with list of headers that must be
-dnl included when winsock(2).h is to be included.
+dnl included when winsock2.h is to be included.
 
 AC_DEFUN([CURL_INCLUDES_WINSOCK2], [
 curl_includes_winsock2="\
@@ -498,15 +498,10 @@
 #  include <windows.h>
 #  ifdef HAVE_WINSOCK2_H
 #    include <winsock2.h>
-#  else
-#    ifdef HAVE_WINSOCK_H
-#      include <winsock.h>
-#    endif
 #  endif
 #endif
 /* includes end */"
   CURL_CHECK_HEADER_WINDOWS
-  CURL_CHECK_HEADER_WINSOCK
   CURL_CHECK_HEADER_WINSOCK2
 ])
 
@@ -2055,6 +2050,10 @@
         dnl hpux 11.11 and newer
         tst_tsafe_getaddrinfo="yes"
         ;;
+      midnightbsd*)
+        dnl all MidnightBSD versions
+        tst_tsafe_getaddrinfo="yes"
+        ;;
       netbsd[[123]].*)
         dnl netbsd 3.X and older
         tst_tsafe_getaddrinfo="no"
diff --git a/m4/curl-openssl.m4 b/m4/curl-openssl.m4
index 835768e..5309f33 100644
--- a/m4/curl-openssl.m4
+++ b/m4/curl-openssl.m4
@@ -46,6 +46,9 @@
 #     include <crypto.h>
 #   endif
     ], [silent])
+  CURL_CHECK_DEF([OPENSSL_VERSION_STR], [
+#     include <openssl/crypto.h>
+    ], [silent])
   if test "$curl_cv_have_def_OPENSSL_VERSION_NUMBER" = "yes"; then
     tst_verlen=`expr "$curl_cv_def_OPENSSL_VERSION_NUMBER" : '.*'`
     case "x$tst_verlen" in
@@ -62,7 +65,16 @@
         tst_api=0x$tst_vermaj$tst_vermin$tst_verfix
         ;;
       *)
-        tst_api="unknown"
+        if test "$curl_cv_have_def_OPENSSL_VERSION_STR" = "yes"; then
+          ver=`echo $curl_cv_def_OPENSSL_VERSION_STR | sed 's/"//g'`;
+          tst_vermaj=`echo $ver | cut -d. -f1`
+          tst_vermin=`echo $ver | cut -d. -f2`
+          tst_verfix=`echo $ver | cut -d. -f3`
+          tst_show="$ver"
+          tst_api=0x$tst_vermaj$tst_vermin$tst_verfix
+        else
+          tst_api="unknown"
+        fi
         ;;
     esac
     case $tst_api in
@@ -80,9 +92,13 @@
       0x093) tst_show="0.9.3" ;;
       0x092) tst_show="0.9.2" ;;
       0x091) tst_show="0.9.1" ;;
-      *)     tst_show="unknown" ;;
+      *)
+      if test -z "$tst_show"; then
+        tst_show="unknown"
+      fi
+      ;;
     esac
-    tst_show="$tst_show - $curl_cv_def_OPENSSL_VERSION_NUMBER"
+    tst_show="$tst_show - $tst_api"
   else
     tst_show="unknown"
   fi
@@ -124,6 +140,13 @@
   AC_MSG_CHECKING([for OpenSSL library version])
   if test "$tst_api" = "unknown"; then
     AC_LINK_IFELSE([
+      AC_LANG_FUNC_LINK_TRY([SSL_CTX_load_verify_dir])
+    ],[
+      tst_api="0x300"
+    ])
+  fi
+  if test "$tst_api" = "unknown"; then
+    AC_LINK_IFELSE([
       AC_LANG_FUNC_LINK_TRY([ERR_clear_last_mark])
     ],[
       tst_api="0x111"
@@ -225,6 +248,7 @@
     ])
   fi
   case $tst_api in
+    0x300) tst_show="3.0.0" ;;
     0x111) tst_show="1.1.1" ;;
     0x110) tst_show="1.1.0" ;;
     0x102) tst_show="1.0.2" ;;
@@ -330,8 +354,21 @@
     if test -f "$OPENSSL_PCDIR/openssl.pc"; then
       AC_MSG_NOTICE([PKG_CONFIG_LIBDIR will be set to "$OPENSSL_PCDIR"])
       PKGTEST="yes"
-    elif test ! -f "$PREFIX_OPENSSL/include/openssl/ssl.h"; then
-      AC_MSG_ERROR([$PREFIX_OPENSSL is a bad --with-openssl prefix!])
+    fi
+
+    if test "$PKGTEST" != "yes"; then
+      # try lib64 instead
+      OPENSSL_PCDIR="$OPT_OPENSSL/lib64/pkgconfig"
+      if test -f "$OPENSSL_PCDIR/openssl.pc"; then
+        AC_MSG_NOTICE([PKG_CONFIG_LIBDIR will be set to "$OPENSSL_PCDIR"])
+        PKGTEST="yes"
+      fi
+    fi
+
+    if test "$PKGTEST" != "yes"; then
+      if test ! -f "$PREFIX_OPENSSL/include/openssl/ssl.h"; then
+        AC_MSG_ERROR([$PREFIX_OPENSSL is a bad --with-openssl prefix!])
+      fi
     fi
 
     dnl in case pkg-config comes up empty, use what we got
@@ -400,7 +437,7 @@
 
        dnl still no, but what about with -ldl?
        AC_MSG_CHECKING([OpenSSL linking with -ldl])
-       LIBS="$CLEANLIBS -lcrypto -ldl"
+       LIBS="-lcrypto $CLEANLIBS -ldl"
        AC_LINK_IFELSE([ AC_LANG_PROGRAM([[
          #include <openssl/err.h>
        ]], [[
@@ -416,7 +453,7 @@
          dnl This may be necessary for static libraries.
 
          AC_MSG_CHECKING([OpenSSL linking with -ldl and -lpthread])
-         LIBS="$CLEANLIBS -lcrypto -ldl -lpthread"
+         LIBS="-lcrypto $CLEANLIBS -ldl -lpthread"
          AC_LINK_IFELSE([
            AC_LANG_PROGRAM([[
            #include <openssl/err.h>
diff --git a/m4/xc-lt-iface.m4 b/m4/xc-lt-iface.m4
index 465767f..e389b2b 100644
--- a/m4/xc-lt-iface.m4
+++ b/m4/xc-lt-iface.m4
@@ -2,7 +2,7 @@
 #
 # xc-lt-iface.m4
 #
-# Copyright (c) 2013 - 2020, Daniel Stenberg <daniel@haxx.se>
+# Copyright (c) 2013 - 2021, Daniel Stenberg <daniel@haxx.se>
 #
 # Permission to use, copy, modify, and distribute this software for any
 # purpose with or without fee is hereby granted, provided that the above
@@ -119,7 +119,7 @@
   case $host_cpu in @%:@ (
     x86_64 | amd64 | ia64)
       case $host_os in @%:@ (
-        linux* | freebsd*)
+        linux* | freebsd* | midnightbsd*)
           xc_lt_want_with_pic='yes'
           ;;
       esac
diff --git a/maketgz b/maketgz
index 2f97f18..d1351ad 100755
--- a/maketgz
+++ b/maketgz
@@ -9,7 +9,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -147,7 +147,7 @@
 #
 
 echo "update man pages"
-./scripts/updatemanpages.pl $version
+./scripts/updatemanpages.pl $version >/dev/null
 
 # make the generated file newer than the man page
 touch src/tool_hugehelp.c
diff --git a/missing b/missing
index 8d0eaad..1fe1611 100755
--- a/missing
+++ b/missing
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1996-2020 Free Software Foundation, Inc.
+# Copyright (C) 1996-2021 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
diff --git a/packages/OS400/curl.inc.in b/packages/OS400/curl.inc.in
index 018caba..b6a37a6 100644
--- a/packages/OS400/curl.inc.in
+++ b/packages/OS400/curl.inc.in
@@ -1583,6 +1583,8 @@
      d                 c                   40309
      d  CURLOPT_PROXY_CAINFO_BLOB...
      d                 c                   40310
+     d  CURLOPT_MAXLIFETIME_CONN...
+     d                 c                   00314
       *
       /if not defined(CURL_NO_OLDIES)
      d  CURLOPT_FILE   c                   10001
@@ -2913,6 +2915,10 @@
      d  part                           *   value options(*string)
      d  flags                        10u 0 value
       *
+     d curl_url_strerror...
+     d                 pr              *   extproc('curl_url_strerror')         const char *
+     d  code                               value like(CURLUcode)
+      *
      d curl_easy_option_by_name...
      d                 pr              *   extproc('curl_easy_option_by_name')  curl_easyoption *
      d  name                           *   value option(*string)
diff --git a/projects/Windows/VC10/src/curl.vcxproj b/projects/Windows/VC10/src/curl.vcxproj
index 0eb7fe6..8c46df4 100644
--- a/projects/Windows/VC10/src/curl.vcxproj
+++ b/projects/Windows/VC10/src/curl.vcxproj
@@ -2657,6 +2657,7 @@
     <ClCompile Include="..\..\..\..\src\tool_homedir.c" />

     <ClCompile Include="..\..\..\..\src\tool_hugehelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_libinfo.c" />

+    <ClCompile Include="..\..\..\..\src\tool_listhelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_main.c" />

     <ClCompile Include="..\..\..\..\src\tool_msgs.c" />

     <ClCompile Include="..\..\..\..\src\tool_operate.c" />

diff --git a/projects/Windows/VC11/src/curl.vcxproj b/projects/Windows/VC11/src/curl.vcxproj
index 832cc99..456abdd 100644
--- a/projects/Windows/VC11/src/curl.vcxproj
+++ b/projects/Windows/VC11/src/curl.vcxproj
@@ -2713,6 +2713,7 @@
     <ClCompile Include="..\..\..\..\src\tool_homedir.c" />

     <ClCompile Include="..\..\..\..\src\tool_hugehelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_libinfo.c" />

+    <ClCompile Include="..\..\..\..\src\tool_listhelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_main.c" />

     <ClCompile Include="..\..\..\..\src\tool_msgs.c" />

     <ClCompile Include="..\..\..\..\src\tool_operate.c" />

diff --git a/projects/Windows/VC12/src/curl.vcxproj b/projects/Windows/VC12/src/curl.vcxproj
index 7f55bf2..e0455a4 100644
--- a/projects/Windows/VC12/src/curl.vcxproj
+++ b/projects/Windows/VC12/src/curl.vcxproj
@@ -2713,6 +2713,7 @@
     <ClCompile Include="..\..\..\..\src\tool_homedir.c" />

     <ClCompile Include="..\..\..\..\src\tool_hugehelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_libinfo.c" />

+    <ClCompile Include="..\..\..\..\src\tool_listhelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_main.c" />

     <ClCompile Include="..\..\..\..\src\tool_msgs.c" />

     <ClCompile Include="..\..\..\..\src\tool_operate.c" />

diff --git a/projects/Windows/VC14/src/curl.vcxproj b/projects/Windows/VC14/src/curl.vcxproj
index 33c7457..ee17dee 100644
--- a/projects/Windows/VC14/src/curl.vcxproj
+++ b/projects/Windows/VC14/src/curl.vcxproj
@@ -2713,6 +2713,7 @@
     <ClCompile Include="..\..\..\..\src\tool_homedir.c" />

     <ClCompile Include="..\..\..\..\src\tool_hugehelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_libinfo.c" />

+    <ClCompile Include="..\..\..\..\src\tool_listhelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_main.c" />

     <ClCompile Include="..\..\..\..\src\tool_msgs.c" />

     <ClCompile Include="..\..\..\..\src\tool_operate.c" />

diff --git a/projects/Windows/VC15/src/curl.vcxproj b/projects/Windows/VC15/src/curl.vcxproj
index 220c71a..28d3b0f 100644
--- a/projects/Windows/VC15/src/curl.vcxproj
+++ b/projects/Windows/VC15/src/curl.vcxproj
@@ -2685,6 +2685,7 @@
     <ClCompile Include="..\..\..\..\src\tool_homedir.c" />

     <ClCompile Include="..\..\..\..\src\tool_hugehelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_libinfo.c" />

+    <ClCompile Include="..\..\..\..\src\tool_listhelp.c" />

     <ClCompile Include="..\..\..\..\src\tool_main.c" />

     <ClCompile Include="..\..\..\..\src\tool_msgs.c" />

     <ClCompile Include="..\..\..\..\src\tool_operate.c" />

diff --git a/projects/Windows/VC6/src/curl.dsp b/projects/Windows/VC6/src/curl.dsp
index 0793834..b4c3002 100644
--- a/projects/Windows/VC6/src/curl.dsp
+++ b/projects/Windows/VC6/src/curl.dsp
@@ -799,6 +799,10 @@
 # End Source File

 # Begin Source File

 

+SOURCE=..\..\..\..\src\tool_listhelp.c

+# End Source File

+# Begin Source File

+

 SOURCE=..\..\..\..\src\tool_main.c

 # End Source File

 # Begin Source File

diff --git a/projects/Windows/VC7.1/src/curl.vcproj b/projects/Windows/VC7.1/src/curl.vcproj
index ecb83dc..67adf58 100644
--- a/projects/Windows/VC7.1/src/curl.vcproj
+++ b/projects/Windows/VC7.1/src/curl.vcproj
@@ -1452,6 +1452,9 @@
 				RelativePath="..\..\..\..\src\tool_libinfo.c">

 			</File>

 			<File

+				RelativePath="..\..\..\..\src\tool_listhelp.c">

+			</File>

+			<File

 				RelativePath="..\..\..\..\src\tool_main.c">

 			</File>

 			<File

diff --git a/projects/Windows/VC7/src/curl.vcproj b/projects/Windows/VC7/src/curl.vcproj
index 0390ef8..5d002f4 100644
--- a/projects/Windows/VC7/src/curl.vcproj
+++ b/projects/Windows/VC7/src/curl.vcproj
@@ -1306,6 +1306,9 @@
 				RelativePath="..\..\..\..\src\tool_libinfo.c">

 			</File>

 			<File

+				RelativePath="..\..\..\..\src\tool_listhelp.c">

+			</File>

+			<File

 				RelativePath="..\..\..\..\src\tool_main.c">

 			</File>

 			<File

diff --git a/projects/Windows/VC8/src/curl.vcproj b/projects/Windows/VC8/src/curl.vcproj
index 9ae8b22..477179b 100644
--- a/projects/Windows/VC8/src/curl.vcproj
+++ b/projects/Windows/VC8/src/curl.vcproj
@@ -4201,6 +4201,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\src\tool_listhelp.c"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\src\tool_main.c"

 			>

 			</File>

diff --git a/projects/Windows/VC9/src/curl.vcproj b/projects/Windows/VC9/src/curl.vcproj
index 2940238..fe388fd 100644
--- a/projects/Windows/VC9/src/curl.vcproj
+++ b/projects/Windows/VC9/src/curl.vcproj
@@ -4058,6 +4058,10 @@
 			>

 			</File>

 			<File

+				RelativePath="..\..\..\..\src\tool_listhelp.c"

+			>

+			</File>

+			<File

 				RelativePath="..\..\..\..\src\tool_main.c"

 			>

 			</File>

diff --git a/projects/build-wolfssl.bat b/projects/build-wolfssl.bat
index 8ee61e6..fcd9ba1 100644
--- a/projects/build-wolfssl.bat
+++ b/projects/build-wolfssl.bat
@@ -1,392 +1,392 @@
-@echo off
-rem ***************************************************************************
-rem *                                  _   _ ____  _
-rem *  Project                     ___| | | |  _ \| |
-rem *                             / __| | | | |_) | |
-rem *                            | (__| |_| |  _ <| |___
-rem *                             \___|\___/|_| \_\_____|
-rem *
-rem * Copyright (C) 2012 - 2020, Steve Holme, <steve_holme@hotmail.com>.
-rem * Copyright (C) 2015, Jay Satiro, <raysatiro@yahoo.com>.
-rem *
-rem * This software is licensed as described in the file COPYING, which
-rem * you should have received as part of this distribution. The terms
-rem * are also available at https://curl.se/docs/copyright.html.
-rem *
-rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-rem * copies of the Software, and permit persons to whom the Software is
-rem * furnished to do so, under the terms of the COPYING file.
-rem *
-rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-rem * KIND, either express or implied.
-rem *
-rem ***************************************************************************
-
-:begin
-  rem Check we are running on a Windows NT derived OS
-  if not "%OS%" == "Windows_NT" goto nodos
-
-  rem Set our variables
-  setlocal
-  set SUCCESSFUL_BUILDS=
-  set VC_VER=
-  set BUILD_PLATFORM=
-
-  rem Ensure we have the required arguments
-  if /i "%~1" == "" goto syntax
-
-  rem Calculate the program files directory
-  if defined PROGRAMFILES (
-    set "PF=%PROGRAMFILES%"
-    set OS_PLATFORM=x86
-  )
-  if defined PROGRAMFILES(x86) (
-    set "PF=%PROGRAMFILES(x86)%"
-    set OS_PLATFORM=x64
-  )
-
-:parseArgs
-  if "%~1" == "" goto prerequisites
-
-  if /i "%~1" == "vc10" (
-    set VC_VER=10.0
-    set VC_DESC=VC10
-    set VC_TOOLSET=v100
-    set "VC_PATH=Microsoft Visual Studio 10.0\VC"
-  ) else if /i "%~1" == "vc11" (
-    set VC_VER=11.0
-    set VC_DESC=VC11
-    set VC_TOOLSET=v110
-    set "VC_PATH=Microsoft Visual Studio 11.0\VC"
-  ) else if /i "%~1" == "vc12" (
-    set VC_VER=12.0
-    set VC_DESC=VC12
-    set VC_TOOLSET=v120
-    set "VC_PATH=Microsoft Visual Studio 12.0\VC"
-  ) else if /i "%~1" == "vc14" (
-    set VC_VER=14.0
-    set VC_DESC=VC14
-    set VC_TOOLSET=v140
-    set "VC_PATH=Microsoft Visual Studio 14.0\VC"
-  ) else if /i "%~1" == "vc14.1" (
-    set VC_VER=14.1
-    set VC_DESC=VC14.1
-    set VC_TOOLSET=v141
-
-    rem Determine the VC14.1 path based on the installed edition in descending
-    rem order (Enterprise, then Professional and finally Community)
-    if exist "%PF%\Microsoft Visual Studio\2017\Enterprise\VC" (
-      set "VC_PATH=Microsoft Visual Studio\2017\Enterprise\VC"
-    ) else if exist "%PF%\Microsoft Visual Studio\2017\Professional\VC" (
-      set "VC_PATH=Microsoft Visual Studio\2017\Professional\VC"
-    ) else (
-      set "VC_PATH=Microsoft Visual Studio\2017\Community\VC"
-    )
-  ) else if /i "%~1" == "vc14.2" (
-    set VC_VER=14.2
-    set VC_DESC=VC14.2
-    set VC_TOOLSET=v142
-
-    rem Determine the VC14.2 path based on the installed edition in descending
-    rem order (Enterprise, then Professional and finally Community)
-    if exist "%PF%\Microsoft Visual Studio\2019\Enterprise\VC" (
-      set "VC_PATH=Microsoft Visual Studio\2019\Enterprise\VC"
-    ) else if exist "%PF%\Microsoft Visual Studio\2019\Professional\VC" (
-      set "VC_PATH=Microsoft Visual Studio\2019\Professional\VC"
-    ) else (
-      set "VC_PATH=Microsoft Visual Studio\2019\Community\VC"
-    )
-  ) else if /i "%~1" == "x86" (
-    set BUILD_PLATFORM=x86
-  ) else if /i "%~1" == "x64" (
-    set BUILD_PLATFORM=x64
-  ) else if /i "%~1" == "debug" (
-    set BUILD_CONFIG=debug
-  ) else if /i "%~1" == "release" (
-    set BUILD_CONFIG=release
-  ) else if /i "%~1" == "-?" (
-    goto syntax
-  ) else if /i "%~1" == "-h" (
-    goto syntax
-  ) else if /i "%~1" == "-help" (
-    goto syntax
-  ) else (
-    if not defined START_DIR (
-      set START_DIR=%~1
-    ) else (
-      goto unknown
-    )
-  )
-
-  shift & goto parseArgs
-
-:prerequisites
-  rem Compiler is a required parameter
-  if not defined VC_VER goto syntax
-
-  rem Default the start directory if one isn't specified
-  if not defined START_DIR set START_DIR=..\..\wolfssl
-
-  rem Check we have a program files directory
-  if not defined PF goto nopf
-
-  rem Check we have Visual Studio installed
-  if not exist "%PF%\%VC_PATH%" goto novc
-
-  rem Check the start directory exists
-  if not exist "%START_DIR%" goto nowolfssl
-
-:configure
-  if "%BUILD_PLATFORM%" == "" set BUILD_PLATFORM=%OS_PLATFORM%
-
-  if "%BUILD_PLATFORM%" == "x86" (
-    set VCVARS_PLATFORM=x86
-  ) else if "%BUILD_PLATFORM%" == "x64" (
-    if "%VC_VER%" == "10.0" set VCVARS_PLATFORM=%BUILD_PLATFORM%
-    if "%VC_VER%" == "11.0" set VCVARS_PLATFORM=amd64
-    if "%VC_VER%" == "12.0" set VCVARS_PLATFORM=amd64
-    if "%VC_VER%" == "14.0" set VCVARS_PLATFORM=amd64
-    if "%VC_VER%" == "14.1" set VCVARS_PLATFORM=amd64
-    if "%VC_VER%" == "14.2" set VCVARS_PLATFORM=amd64
-  )
-
-:start
-  echo.
-  set SAVED_PATH=%CD%
-
-  if "%VC_VER%" == "14.1" (
-    call "%PF%\%VC_PATH%\Auxiliary\Build\vcvarsall" %VCVARS_PLATFORM%
-  ) else if "%VC_VER%" == "14.2" (
-    call "%PF%\%VC_PATH%\Auxiliary\Build\vcvarsall" %VCVARS_PLATFORM%
-  ) else (
-    call "%PF%\%VC_PATH%\vcvarsall" %VCVARS_PLATFORM%
-  )
-
-  echo.
-  cd /d %SAVED_PATH%
-  if defined START_DIR cd /d %START_DIR%
-  goto %BUILD_PLATFORM%
-
-:x64
-  rem Calculate our output directory
-  set OUTDIR=build\Win64\%VC_DESC%
-  if not exist %OUTDIR% md %OUTDIR%
-
-  if "%BUILD_CONFIG%" == "release" goto x64release
-
-:x64debug
-  rem Perform 64-bit Debug Build
-
-  call :build Debug x64
-  if errorlevel 1 goto error
-
-  call :build "DLL Debug" x64
-  if errorlevel 1 goto error
-
-  if "%BUILD_CONFIG%" == "debug" goto success
-
-:x64release
-  rem Perform 64-bit Release Build
-
-  call :build Release x64
-  if errorlevel 1 goto error
-
-  call :build "DLL Release" x64
-  if errorlevel 1 goto error
-
-  goto success
-
-:x86
-  rem Calculate our output directory
-  set OUTDIR=build\Win32\%VC_DESC%
-  if not exist %OUTDIR% md %OUTDIR%
-
-  if "%BUILD_CONFIG%" == "release" goto x86release
-
-:x86debug
-  rem Perform 32-bit Debug Build
-
-  call :build Debug Win32
-  if errorlevel 1 goto error
-
-  call :build "DLL Debug" Win32
-  if errorlevel 1 goto error
-
-  if "%BUILD_CONFIG%" == "debug" goto success
-
-:x86release
-  rem Perform 32-bit Release Build
-
-  call :build Release Win32
-  if errorlevel 1 goto error
-
-  call :build "DLL Release" Win32
-  if errorlevel 1 goto error
-
-  goto success
-
-:build
-  rem This function builds wolfSSL.
-  rem Usage: CALL :build <configuration> <platform>
-  rem The current directory must be the wolfSSL directory.
-  rem VS Configuration: Debug, Release, DLL Debug or DLL Release.
-  rem VS Platform: Win32 or x64.
-  rem Returns: 1 on fail, 0 on success.
-  rem An informational message should be shown before any return.
-  setlocal
-  set MSBUILD_CONFIG=%~1
-  set MSBUILD_PLATFORM=%~2
-
-  if not exist wolfssl64.sln (
-    echo.
-    echo Error: build: wolfssl64.sln not found in "%CD%"
-    exit /b 1
-  )
-
-  rem OUTDIR isn't a full path, only relative. MSBUILD_OUTDIR must be full and
-  rem not have trailing backslashes, which are handled later.
-  if "%MSBUILD_CONFIG%" == "Debug" (
-    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\LIB Debug"
-  ) else if "%MSBUILD_CONFIG%" == "Release" (
-    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\LIB Release"
-  ) else if "%MSBUILD_CONFIG%" == "DLL Debug" (
-    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\DLL Debug"
-  ) else if "%MSBUILD_CONFIG%" == "DLL Release" (
-    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\DLL Release"
-  ) else (
-    echo.
-    echo Error: build: Configuration not recognized.
-    exit /b 1
-  )
-
-  if not "%MSBUILD_PLATFORM%" == "Win32" if not "%MSBUILD_PLATFORM%" == "x64" (
-    echo.
-    echo Error: build: Platform not recognized.
-    exit /b 1
-  )
-
-  copy /v /y "%~dp0\wolfssl_options.h" .\cyassl\options.h
-  if %ERRORLEVEL% neq 0 (
-    echo.
-    echo Error: build: Couldn't replace .\cyassl\options.h
-    exit /b 1
-  )
-
-  copy /v /y "%~dp0\wolfssl_options.h" .\wolfssl\options.h
-  if %ERRORLEVEL% neq 0 (
-    echo.
-    echo Error: build: Couldn't replace .\wolfssl\options.h
-    exit /b 1
-  )
-
-  rem Extra trailing \ in Dirs because otherwise it thinks a quote is escaped
-  msbuild wolfssl64.sln ^
-    -p:CustomAfterMicrosoftCommonTargets="%~dp0\wolfssl_override.props" ^
-    -p:Configuration="%MSBUILD_CONFIG%" ^
-    -p:Platform="%MSBUILD_PLATFORM%" ^
-    -p:PlatformToolset="%VC_TOOLSET%" ^
-    -p:OutDir="%MSBUILD_OUTDIR%\\" ^
-    -p:IntDir="%MSBUILD_OUTDIR%\obj\\"
-
-  if %ERRORLEVEL% neq 0 (
-    echo.
-    echo Error: Failed building wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.
-    exit /b 1
-  )
-
-  rem For tests to run properly the wolfSSL directory must remain the current.
-  set "PATH=%MSBUILD_OUTDIR%;%PATH%"
-  "%MSBUILD_OUTDIR%\testsuite.exe"
-
-  if %ERRORLEVEL% neq 0 (
-    echo.
-    echo Error: Failed testing wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.
-    exit /b 1
-  )
-
-  echo.
-  echo Success: Built and tested wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.
-  echo.
-  echo.
-  rem This is necessary to export our local variables back to the caller.
-  endlocal & set SUCCESSFUL_BUILDS="%MSBUILD_CONFIG%|%MSBUILD_PLATFORM%" ^
-    %SUCCESSFUL_BUILDS%
-  exit /b 0
-
-:syntax
-  rem Display the help
-  echo.
-  echo Usage: build-wolfssl ^<compiler^> [platform] [configuration] [directory]
-  echo.
-  echo Compiler:
-  echo.
-  echo vc10      - Use Visual Studio 2010
-  echo vc11      - Use Visual Studio 2012
-  echo vc12      - Use Visual Studio 2013
-  echo vc14      - Use Visual Studio 2015
-  echo vc14.1    - Use Visual Studio 2017
-  echo vc14.2    - Use Visual Studio 2019
-  echo.
-  echo Platform:
-  echo.
-  echo x86       - Perform a 32-bit build
-  echo x64       - Perform a 64-bit build
-  echo.
-  echo Configuration:
-  echo.
-  echo debug     - Perform a debug build
-  echo release   - Perform a release build
-  echo.
-  echo Other:
-  echo.
-  echo directory - Specifies the wolfSSL source directory
-  goto error
-
-:unknown
-  echo.
-  echo Error: Unknown argument '%1'
-  goto error
-
-:nodos
-  echo.
-  echo Error: Only a Windows NT based Operating System is supported
-  goto error
-
-:nopf
-  echo.
-  echo Error: Cannot obtain the directory for Program Files
-  goto error
-
-:novc
-  echo.
-  echo Error: %VC_DESC% is not installed
-  goto error
-
-:nox64
-  echo.
-  echo Error: %VC_DESC% does not support 64-bit builds
-  goto error
-
-:nowolfssl
-  echo.
-  echo Error: Cannot locate wolfSSL source directory, expected "%START_DIR%"
-  goto error
-
-:error
-  if "%OS%" == "Windows_NT" endlocal
-  exit /B 1
-
-:success
-  if defined SUCCESSFUL_BUILDS (
-    echo.
-    echo.
-    echo Build complete.
-    echo.
-    echo The following configurations were built and tested successfully:
-    echo.
-    echo %SUCCESSFUL_BUILDS%
-    echo.
-  )
-  cd /d %SAVED_PATH%
-  endlocal
-  exit /B 0
+@echo off

+rem ***************************************************************************

+rem *                                  _   _ ____  _

+rem *  Project                     ___| | | |  _ \| |

+rem *                             / __| | | | |_) | |

+rem *                            | (__| |_| |  _ <| |___

+rem *                             \___|\___/|_| \_\_____|

+rem *

+rem * Copyright (C) 2012 - 2020, Steve Holme, <steve_holme@hotmail.com>.

+rem * Copyright (C) 2015, Jay Satiro, <raysatiro@yahoo.com>.

+rem *

+rem * This software is licensed as described in the file COPYING, which

+rem * you should have received as part of this distribution. The terms

+rem * are also available at https://curl.se/docs/copyright.html.

+rem *

+rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell

+rem * copies of the Software, and permit persons to whom the Software is

+rem * furnished to do so, under the terms of the COPYING file.

+rem *

+rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY

+rem * KIND, either express or implied.

+rem *

+rem ***************************************************************************

+

+:begin

+  rem Check we are running on a Windows NT derived OS

+  if not "%OS%" == "Windows_NT" goto nodos

+

+  rem Set our variables

+  setlocal

+  set SUCCESSFUL_BUILDS=

+  set VC_VER=

+  set BUILD_PLATFORM=

+

+  rem Ensure we have the required arguments

+  if /i "%~1" == "" goto syntax

+

+  rem Calculate the program files directory

+  if defined PROGRAMFILES (

+    set "PF=%PROGRAMFILES%"

+    set OS_PLATFORM=x86

+  )

+  if defined PROGRAMFILES(x86) (

+    set "PF=%PROGRAMFILES(x86)%"

+    set OS_PLATFORM=x64

+  )

+

+:parseArgs

+  if "%~1" == "" goto prerequisites

+

+  if /i "%~1" == "vc10" (

+    set VC_VER=10.0

+    set VC_DESC=VC10

+    set VC_TOOLSET=v100

+    set "VC_PATH=Microsoft Visual Studio 10.0\VC"

+  ) else if /i "%~1" == "vc11" (

+    set VC_VER=11.0

+    set VC_DESC=VC11

+    set VC_TOOLSET=v110

+    set "VC_PATH=Microsoft Visual Studio 11.0\VC"

+  ) else if /i "%~1" == "vc12" (

+    set VC_VER=12.0

+    set VC_DESC=VC12

+    set VC_TOOLSET=v120

+    set "VC_PATH=Microsoft Visual Studio 12.0\VC"

+  ) else if /i "%~1" == "vc14" (

+    set VC_VER=14.0

+    set VC_DESC=VC14

+    set VC_TOOLSET=v140

+    set "VC_PATH=Microsoft Visual Studio 14.0\VC"

+  ) else if /i "%~1" == "vc14.1" (

+    set VC_VER=14.1

+    set VC_DESC=VC14.1

+    set VC_TOOLSET=v141

+

+    rem Determine the VC14.1 path based on the installed edition in descending

+    rem order (Enterprise, then Professional and finally Community)

+    if exist "%PF%\Microsoft Visual Studio\2017\Enterprise\VC" (

+      set "VC_PATH=Microsoft Visual Studio\2017\Enterprise\VC"

+    ) else if exist "%PF%\Microsoft Visual Studio\2017\Professional\VC" (

+      set "VC_PATH=Microsoft Visual Studio\2017\Professional\VC"

+    ) else (

+      set "VC_PATH=Microsoft Visual Studio\2017\Community\VC"

+    )

+  ) else if /i "%~1" == "vc14.2" (

+    set VC_VER=14.2

+    set VC_DESC=VC14.2

+    set VC_TOOLSET=v142

+

+    rem Determine the VC14.2 path based on the installed edition in descending

+    rem order (Enterprise, then Professional and finally Community)

+    if exist "%PF%\Microsoft Visual Studio\2019\Enterprise\VC" (

+      set "VC_PATH=Microsoft Visual Studio\2019\Enterprise\VC"

+    ) else if exist "%PF%\Microsoft Visual Studio\2019\Professional\VC" (

+      set "VC_PATH=Microsoft Visual Studio\2019\Professional\VC"

+    ) else (

+      set "VC_PATH=Microsoft Visual Studio\2019\Community\VC"

+    )

+  ) else if /i "%~1" == "x86" (

+    set BUILD_PLATFORM=x86

+  ) else if /i "%~1" == "x64" (

+    set BUILD_PLATFORM=x64

+  ) else if /i "%~1" == "debug" (

+    set BUILD_CONFIG=debug

+  ) else if /i "%~1" == "release" (

+    set BUILD_CONFIG=release

+  ) else if /i "%~1" == "-?" (

+    goto syntax

+  ) else if /i "%~1" == "-h" (

+    goto syntax

+  ) else if /i "%~1" == "-help" (

+    goto syntax

+  ) else (

+    if not defined START_DIR (

+      set START_DIR=%~1

+    ) else (

+      goto unknown

+    )

+  )

+

+  shift & goto parseArgs

+

+:prerequisites

+  rem Compiler is a required parameter

+  if not defined VC_VER goto syntax

+

+  rem Default the start directory if one isn't specified

+  if not defined START_DIR set START_DIR=..\..\wolfssl

+

+  rem Check we have a program files directory

+  if not defined PF goto nopf

+

+  rem Check we have Visual Studio installed

+  if not exist "%PF%\%VC_PATH%" goto novc

+

+  rem Check the start directory exists

+  if not exist "%START_DIR%" goto nowolfssl

+

+:configure

+  if "%BUILD_PLATFORM%" == "" set BUILD_PLATFORM=%OS_PLATFORM%

+

+  if "%BUILD_PLATFORM%" == "x86" (

+    set VCVARS_PLATFORM=x86

+  ) else if "%BUILD_PLATFORM%" == "x64" (

+    if "%VC_VER%" == "10.0" set VCVARS_PLATFORM=%BUILD_PLATFORM%

+    if "%VC_VER%" == "11.0" set VCVARS_PLATFORM=amd64

+    if "%VC_VER%" == "12.0" set VCVARS_PLATFORM=amd64

+    if "%VC_VER%" == "14.0" set VCVARS_PLATFORM=amd64

+    if "%VC_VER%" == "14.1" set VCVARS_PLATFORM=amd64

+    if "%VC_VER%" == "14.2" set VCVARS_PLATFORM=amd64

+  )

+

+:start

+  echo.

+  set SAVED_PATH=%CD%

+

+  if "%VC_VER%" == "14.1" (

+    call "%PF%\%VC_PATH%\Auxiliary\Build\vcvarsall" %VCVARS_PLATFORM%

+  ) else if "%VC_VER%" == "14.2" (

+    call "%PF%\%VC_PATH%\Auxiliary\Build\vcvarsall" %VCVARS_PLATFORM%

+  ) else (

+    call "%PF%\%VC_PATH%\vcvarsall" %VCVARS_PLATFORM%

+  )

+

+  echo.

+  cd /d %SAVED_PATH%

+  if defined START_DIR cd /d %START_DIR%

+  goto %BUILD_PLATFORM%

+

+:x64

+  rem Calculate our output directory

+  set OUTDIR=build\Win64\%VC_DESC%

+  if not exist %OUTDIR% md %OUTDIR%

+

+  if "%BUILD_CONFIG%" == "release" goto x64release

+

+:x64debug

+  rem Perform 64-bit Debug Build

+

+  call :build Debug x64

+  if errorlevel 1 goto error

+

+  call :build "DLL Debug" x64

+  if errorlevel 1 goto error

+

+  if "%BUILD_CONFIG%" == "debug" goto success

+

+:x64release

+  rem Perform 64-bit Release Build

+

+  call :build Release x64

+  if errorlevel 1 goto error

+

+  call :build "DLL Release" x64

+  if errorlevel 1 goto error

+

+  goto success

+

+:x86

+  rem Calculate our output directory

+  set OUTDIR=build\Win32\%VC_DESC%

+  if not exist %OUTDIR% md %OUTDIR%

+

+  if "%BUILD_CONFIG%" == "release" goto x86release

+

+:x86debug

+  rem Perform 32-bit Debug Build

+

+  call :build Debug Win32

+  if errorlevel 1 goto error

+

+  call :build "DLL Debug" Win32

+  if errorlevel 1 goto error

+

+  if "%BUILD_CONFIG%" == "debug" goto success

+

+:x86release

+  rem Perform 32-bit Release Build

+

+  call :build Release Win32

+  if errorlevel 1 goto error

+

+  call :build "DLL Release" Win32

+  if errorlevel 1 goto error

+

+  goto success

+

+:build

+  rem This function builds wolfSSL.

+  rem Usage: CALL :build <configuration> <platform>

+  rem The current directory must be the wolfSSL directory.

+  rem VS Configuration: Debug, Release, DLL Debug or DLL Release.

+  rem VS Platform: Win32 or x64.

+  rem Returns: 1 on fail, 0 on success.

+  rem An informational message should be shown before any return.

+  setlocal

+  set MSBUILD_CONFIG=%~1

+  set MSBUILD_PLATFORM=%~2

+

+  if not exist wolfssl64.sln (

+    echo.

+    echo Error: build: wolfssl64.sln not found in "%CD%"

+    exit /b 1

+  )

+

+  rem OUTDIR isn't a full path, only relative. MSBUILD_OUTDIR must be full and

+  rem not have trailing backslashes, which are handled later.

+  if "%MSBUILD_CONFIG%" == "Debug" (

+    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\LIB Debug"

+  ) else if "%MSBUILD_CONFIG%" == "Release" (

+    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\LIB Release"

+  ) else if "%MSBUILD_CONFIG%" == "DLL Debug" (

+    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\DLL Debug"

+  ) else if "%MSBUILD_CONFIG%" == "DLL Release" (

+    set "MSBUILD_OUTDIR=%CD%\%OUTDIR%\DLL Release"

+  ) else (

+    echo.

+    echo Error: build: Configuration not recognized.

+    exit /b 1

+  )

+

+  if not "%MSBUILD_PLATFORM%" == "Win32" if not "%MSBUILD_PLATFORM%" == "x64" (

+    echo.

+    echo Error: build: Platform not recognized.

+    exit /b 1

+  )

+

+  copy /v /y "%~dp0\wolfssl_options.h" .\cyassl\options.h

+  if %ERRORLEVEL% neq 0 (

+    echo.

+    echo Error: build: Couldn't replace .\cyassl\options.h

+    exit /b 1

+  )

+

+  copy /v /y "%~dp0\wolfssl_options.h" .\wolfssl\options.h

+  if %ERRORLEVEL% neq 0 (

+    echo.

+    echo Error: build: Couldn't replace .\wolfssl\options.h

+    exit /b 1

+  )

+

+  rem Extra trailing \ in Dirs because otherwise it thinks a quote is escaped

+  msbuild wolfssl64.sln ^

+    -p:CustomAfterMicrosoftCommonTargets="%~dp0\wolfssl_override.props" ^

+    -p:Configuration="%MSBUILD_CONFIG%" ^

+    -p:Platform="%MSBUILD_PLATFORM%" ^

+    -p:PlatformToolset="%VC_TOOLSET%" ^

+    -p:OutDir="%MSBUILD_OUTDIR%\\" ^

+    -p:IntDir="%MSBUILD_OUTDIR%\obj\\"

+

+  if %ERRORLEVEL% neq 0 (

+    echo.

+    echo Error: Failed building wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.

+    exit /b 1

+  )

+

+  rem For tests to run properly the wolfSSL directory must remain the current.

+  set "PATH=%MSBUILD_OUTDIR%;%PATH%"

+  "%MSBUILD_OUTDIR%\testsuite.exe"

+

+  if %ERRORLEVEL% neq 0 (

+    echo.

+    echo Error: Failed testing wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.

+    exit /b 1

+  )

+

+  echo.

+  echo Success: Built and tested wolfSSL %MSBUILD_CONFIG%^|%MSBUILD_PLATFORM%.

+  echo.

+  echo.

+  rem This is necessary to export our local variables back to the caller.

+  endlocal & set SUCCESSFUL_BUILDS="%MSBUILD_CONFIG%|%MSBUILD_PLATFORM%" ^

+    %SUCCESSFUL_BUILDS%

+  exit /b 0

+

+:syntax

+  rem Display the help

+  echo.

+  echo Usage: build-wolfssl ^<compiler^> [platform] [configuration] [directory]

+  echo.

+  echo Compiler:

+  echo.

+  echo vc10      - Use Visual Studio 2010

+  echo vc11      - Use Visual Studio 2012

+  echo vc12      - Use Visual Studio 2013

+  echo vc14      - Use Visual Studio 2015

+  echo vc14.1    - Use Visual Studio 2017

+  echo vc14.2    - Use Visual Studio 2019

+  echo.

+  echo Platform:

+  echo.

+  echo x86       - Perform a 32-bit build

+  echo x64       - Perform a 64-bit build

+  echo.

+  echo Configuration:

+  echo.

+  echo debug     - Perform a debug build

+  echo release   - Perform a release build

+  echo.

+  echo Other:

+  echo.

+  echo directory - Specifies the wolfSSL source directory

+  goto error

+

+:unknown

+  echo.

+  echo Error: Unknown argument '%1'

+  goto error

+

+:nodos

+  echo.

+  echo Error: Only a Windows NT based Operating System is supported

+  goto error

+

+:nopf

+  echo.

+  echo Error: Cannot obtain the directory for Program Files

+  goto error

+

+:novc

+  echo.

+  echo Error: %VC_DESC% is not installed

+  goto error

+

+:nox64

+  echo.

+  echo Error: %VC_DESC% does not support 64-bit builds

+  goto error

+

+:nowolfssl

+  echo.

+  echo Error: Cannot locate wolfSSL source directory, expected "%START_DIR%"

+  goto error

+

+:error

+  if "%OS%" == "Windows_NT" endlocal

+  exit /B 1

+

+:success

+  if defined SUCCESSFUL_BUILDS (

+    echo.

+    echo.

+    echo Build complete.

+    echo.

+    echo The following configurations were built and tested successfully:

+    echo.

+    echo %SUCCESSFUL_BUILDS%

+    echo.

+  )

+  cd /d %SAVED_PATH%

+  endlocal

+  exit /B 0

diff --git a/projects/checksrc.bat b/projects/checksrc.bat
index 9b4dc44..3f04f0c 100644
--- a/projects/checksrc.bat
+++ b/projects/checksrc.bat
@@ -1,223 +1,223 @@
-@echo off
-rem ***************************************************************************
-rem *                                  _   _ ____  _
-rem *  Project                     ___| | | |  _ \| |
-rem *                             / __| | | | |_) | |
-rem *                            | (__| |_| |  _ <| |___
-rem *                             \___|\___/|_| \_\_____|
-rem *
-rem * Copyright (C) 2014 - 2020, Steve Holme, <steve_holme@hotmail.com>.
-rem *
-rem * This software is licensed as described in the file COPYING, which
-rem * you should have received as part of this distribution. The terms
-rem * are also available at https://curl.se/docs/copyright.html.
-rem *
-rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-rem * copies of the Software, and permit persons to whom the Software is
-rem * furnished to do so, under the terms of the COPYING file.
-rem *
-rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-rem * KIND, either express or implied.
-rem *
-rem ***************************************************************************
-
-:begin
-  rem Check we are running on a Windows NT derived OS
-  if not "%OS%" == "Windows_NT" goto nodos
-
-  rem Set our variables
-  setlocal
-  set CHECK_LIB=TRUE
-  set CHECK_SRC=TRUE
-  set CHECK_TESTS=TRUE
-  set CHECK_EXAMPLES=TRUE
-  set SRC_DIR=
-  set CUR_DIR=%cd%
-  set ARG0_DIR=%~dp0
-
-:parseArgs
-  if "%~1" == "" goto prerequisites
-
-  if /i "%~1" == "-?" (
-    goto syntax
-  ) else if /i "%~1" == "-h" (
-    goto syntax
-  ) else if /i "%~1" == "-help" (
-    goto syntax
-  ) else if /i "%~1" == "lib" (
-    set CHECK_LIB=TRUE
-    set CHECK_SRC=FALSE
-    set CHECK_TESTS=FALSE
-    set CHECK_EXAMPLES=FALSE
-  ) else if /i "%~1" == "src" (
-    set CHECK_LIB=FALSE
-    set CHECK_SRC=TRUE
-    set CHECK_TESTS=FALSE
-    set CHECK_EXAMPLES=FALSE
-  ) else if /i "%~1" == "tests" (
-    set CHECK_LIB=FALSE
-    set CHECK_SRC=FALSE
-    set CHECK_TESTS=TRUE
-    set CHECK_EXAMPLES=FALSE
-  ) else if /i "%~1" == "examples" (
-    set CHECK_LIB=FALSE
-    set CHECK_SRC=FALSE
-    set CHECK_TESTS=FALSE
-    set CHECK_EXAMPLES=TRUE
-  ) else (
-    if not defined SRC_DIR (
-      set SRC_DIR=%~1%
-    ) else (
-      goto unknown
-    )
-  )
-
-  shift & goto parseArgs
-
-:prerequisites
-  rem Check we have Perl in our path
-  perl --version <NUL 1>NUL 2>&1
-  if errorlevel 1 (
-    rem It isn't so check we have it installed and set the path if it is
-    if exist "%SystemDrive%\Perl" (
-      set "PATH=%SystemDrive%\Perl\bin;%PATH%"
-    ) else (
-      if exist "%SystemDrive%\Perl64" (
-        set "PATH=%SystemDrive%\Perl64\bin;%PATH%"
-      ) else (
-        goto noperl
-      )
-    )
-  )
-
-:configure
-  if "%SRC_DIR%" == "" (
-    rem Are we being executed from the "projects" or main directory?
-    if "%CUR_DIR%\" == "%ARG0_DIR%" (
-      set SRC_DIR=..
-    ) else if exist projects (
-      if exist docs (
-        if exist lib (
-          if exist src (
-            if exist tests (
-              set SRC_DIR=.
-            )
-          )
-        )
-      )
-    )
-  )
-  if not exist "%SRC_DIR%" goto nosrc
-
-:start
-  if "%CHECK_SRC%" == "TRUE" (
-    rem Check the src directory
-    if exist %SRC_DIR%\src (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" -Wtool_hugehelp.c "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" "%%i"
-    )
-  )
-
-  if "%CHECK_LIB%" == "TRUE" (
-    rem Check the lib directory
-    if exist %SRC_DIR%\lib (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" -Wcurl_config.h.cmake -Wcurl_config.h.in -Wcurl_config.h "%%i"
-    )
-
-    rem Check the lib\vauth directory
-    if exist %SRC_DIR%\lib\vauth (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vauth\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vauth" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vauth\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vauth" "%%i"
-    )
-
-    rem Check the lib\vquic directory
-    if exist %SRC_DIR%\lib\vquic (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vquic\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vquic" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vquic\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vquic" "%%i"
-    )
-
-    rem Check the lib\vssh directory
-    if exist %SRC_DIR%\lib\vssh (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vssh\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vssh" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vssh\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vssh" "%%i"
-    )
-
-    rem Check the lib\vtls directory
-    if exist %SRC_DIR%\lib\vtls (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"
-    )
-  )
-
-  if "%CHECK_TESTS%" == "TRUE" (
-    rem Check the tests\libtest directory
-    if exist %SRC_DIR%\tests\libtest (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\libtest\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\libtest" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\libtest\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\libtest" "%%i"
-    )
-
-    rem Check the tests\unit directory
-    if exist %SRC_DIR%\tests\unit (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\unit\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\unit" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\unit\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\unit" "%%i"
-    )
-
-    rem Check the tests\server directory
-    if exist %SRC_DIR%\tests\server (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\server\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\server" "%%i"
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\server\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\server" "%%i"
-    )
-  )
-
-  if "%CHECK_EXAMPLES%" == "TRUE" (
-    rem Check the docs\examples directory
-    if exist %SRC_DIR%\docs\examples (
-      for /f "delims=" %%i in ('dir "%SRC_DIR%\docs\examples\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\docs\examples" -ASNPRINTF "%%i"
-    )
-  )
-
-  goto success
-
-:syntax
-  rem Display the help
-  echo.
-  echo Usage: checksrc [what] [directory]
-  echo.
-  echo What to scan:
-  echo.
-  echo lib       - Scan the libcurl source
-  echo src       - Scan the command-line tool source
-  echo tests     - Scan the library tests and unit tests
-  echo examples  - Scan the examples
-  echo.
-  echo directory - Specifies the curl source directory
-  goto success
-
-:unknown
-  echo.
-  echo Error: Unknown argument '%1'
-  goto error
-
-:nodos
-  echo.
-  echo Error: Only a Windows NT based Operating System is supported
-  goto error
-
-:noperl
-  echo.
-  echo Error: Perl is not installed
-  goto error
-
-:nosrc
-  echo.
-  echo Error: "%SRC_DIR%" does not exist
-  goto error
-
-:error
-  if "%OS%" == "Windows_NT" endlocal
-  exit /B 1
-
-:success
-  endlocal
-  exit /B 0
+@echo off

+rem ***************************************************************************

+rem *                                  _   _ ____  _

+rem *  Project                     ___| | | |  _ \| |

+rem *                             / __| | | | |_) | |

+rem *                            | (__| |_| |  _ <| |___

+rem *                             \___|\___/|_| \_\_____|

+rem *

+rem * Copyright (C) 2014 - 2020, Steve Holme, <steve_holme@hotmail.com>.

+rem *

+rem * This software is licensed as described in the file COPYING, which

+rem * you should have received as part of this distribution. The terms

+rem * are also available at https://curl.se/docs/copyright.html.

+rem *

+rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell

+rem * copies of the Software, and permit persons to whom the Software is

+rem * furnished to do so, under the terms of the COPYING file.

+rem *

+rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY

+rem * KIND, either express or implied.

+rem *

+rem ***************************************************************************

+

+:begin

+  rem Check we are running on a Windows NT derived OS

+  if not "%OS%" == "Windows_NT" goto nodos

+

+  rem Set our variables

+  setlocal

+  set CHECK_LIB=TRUE

+  set CHECK_SRC=TRUE

+  set CHECK_TESTS=TRUE

+  set CHECK_EXAMPLES=TRUE

+  set SRC_DIR=

+  set CUR_DIR=%cd%

+  set ARG0_DIR=%~dp0

+

+:parseArgs

+  if "%~1" == "" goto prerequisites

+

+  if /i "%~1" == "-?" (

+    goto syntax

+  ) else if /i "%~1" == "-h" (

+    goto syntax

+  ) else if /i "%~1" == "-help" (

+    goto syntax

+  ) else if /i "%~1" == "lib" (

+    set CHECK_LIB=TRUE

+    set CHECK_SRC=FALSE

+    set CHECK_TESTS=FALSE

+    set CHECK_EXAMPLES=FALSE

+  ) else if /i "%~1" == "src" (

+    set CHECK_LIB=FALSE

+    set CHECK_SRC=TRUE

+    set CHECK_TESTS=FALSE

+    set CHECK_EXAMPLES=FALSE

+  ) else if /i "%~1" == "tests" (

+    set CHECK_LIB=FALSE

+    set CHECK_SRC=FALSE

+    set CHECK_TESTS=TRUE

+    set CHECK_EXAMPLES=FALSE

+  ) else if /i "%~1" == "examples" (

+    set CHECK_LIB=FALSE

+    set CHECK_SRC=FALSE

+    set CHECK_TESTS=FALSE

+    set CHECK_EXAMPLES=TRUE

+  ) else (

+    if not defined SRC_DIR (

+      set SRC_DIR=%~1%

+    ) else (

+      goto unknown

+    )

+  )

+

+  shift & goto parseArgs

+

+:prerequisites

+  rem Check we have Perl in our path

+  perl --version <NUL 1>NUL 2>&1

+  if errorlevel 1 (

+    rem It isn't so check we have it installed and set the path if it is

+    if exist "%SystemDrive%\Perl" (

+      set "PATH=%SystemDrive%\Perl\bin;%PATH%"

+    ) else (

+      if exist "%SystemDrive%\Perl64" (

+        set "PATH=%SystemDrive%\Perl64\bin;%PATH%"

+      ) else (

+        goto noperl

+      )

+    )

+  )

+

+:configure

+  if "%SRC_DIR%" == "" (

+    rem Are we being executed from the "projects" or main directory?

+    if "%CUR_DIR%\" == "%ARG0_DIR%" (

+      set SRC_DIR=..

+    ) else if exist projects (

+      if exist docs (

+        if exist lib (

+          if exist src (

+            if exist tests (

+              set SRC_DIR=.

+            )

+          )

+        )

+      )

+    )

+  )

+  if not exist "%SRC_DIR%" goto nosrc

+

+:start

+  if "%CHECK_SRC%" == "TRUE" (

+    rem Check the src directory

+    if exist %SRC_DIR%\src (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" -Wtool_hugehelp.c "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\src\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\src" "%%i"

+    )

+  )

+

+  if "%CHECK_LIB%" == "TRUE" (

+    rem Check the lib directory

+    if exist %SRC_DIR%\lib (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib" -Wcurl_config.h.cmake -Wcurl_config.h.in -Wcurl_config.h "%%i"

+    )

+

+    rem Check the lib\vauth directory

+    if exist %SRC_DIR%\lib\vauth (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vauth\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vauth" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vauth\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vauth" "%%i"

+    )

+

+    rem Check the lib\vquic directory

+    if exist %SRC_DIR%\lib\vquic (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vquic\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vquic" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vquic\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vquic" "%%i"

+    )

+

+    rem Check the lib\vssh directory

+    if exist %SRC_DIR%\lib\vssh (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vssh\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vssh" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vssh\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vssh" "%%i"

+    )

+

+    rem Check the lib\vtls directory

+    if exist %SRC_DIR%\lib\vtls (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\lib\vtls\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\lib\vtls" "%%i"

+    )

+  )

+

+  if "%CHECK_TESTS%" == "TRUE" (

+    rem Check the tests\libtest directory

+    if exist %SRC_DIR%\tests\libtest (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\libtest\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\libtest" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\libtest\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\libtest" "%%i"

+    )

+

+    rem Check the tests\unit directory

+    if exist %SRC_DIR%\tests\unit (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\unit\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\unit" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\unit\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\unit" "%%i"

+    )

+

+    rem Check the tests\server directory

+    if exist %SRC_DIR%\tests\server (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\server\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\server" "%%i"

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\tests\server\*.h.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\tests\server" "%%i"

+    )

+  )

+

+  if "%CHECK_EXAMPLES%" == "TRUE" (

+    rem Check the docs\examples directory

+    if exist %SRC_DIR%\docs\examples (

+      for /f "delims=" %%i in ('dir "%SRC_DIR%\docs\examples\*.c.*" /b 2^>NUL') do @perl "%SRC_DIR%\lib\checksrc.pl" "-D%SRC_DIR%\docs\examples" -ASNPRINTF "%%i"

+    )

+  )

+

+  goto success

+

+:syntax

+  rem Display the help

+  echo.

+  echo Usage: checksrc [what] [directory]

+  echo.

+  echo What to scan:

+  echo.

+  echo lib       - Scan the libcurl source

+  echo src       - Scan the command-line tool source

+  echo tests     - Scan the library tests and unit tests

+  echo examples  - Scan the examples

+  echo.

+  echo directory - Specifies the curl source directory

+  goto success

+

+:unknown

+  echo.

+  echo Error: Unknown argument '%1'

+  goto error

+

+:nodos

+  echo.

+  echo Error: Only a Windows NT based Operating System is supported

+  goto error

+

+:noperl

+  echo.

+  echo Error: Perl is not installed

+  goto error

+

+:nosrc

+  echo.

+  echo Error: "%SRC_DIR%" does not exist

+  goto error

+

+:error

+  if "%OS%" == "Windows_NT" endlocal

+  exit /B 1

+

+:success

+  endlocal

+  exit /B 0

diff --git a/projects/generate.bat b/projects/generate.bat
index 5ef562f..840094e 100644
--- a/projects/generate.bat
+++ b/projects/generate.bat
@@ -1,478 +1,478 @@
-@echo off
-rem ***************************************************************************
-rem *                                  _   _ ____  _
-rem *  Project                     ___| | | |  _ \| |
-rem *                             / __| | | | |_) | |
-rem *                            | (__| |_| |  _ <| |___
-rem *                             \___|\___/|_| \_\_____|
-rem *
-rem * Copyright (C) 2014 - 2020, Steve Holme, <steve_holme@hotmail.com>.
-rem *
-rem * This software is licensed as described in the file COPYING, which
-rem * you should have received as part of this distribution. The terms
-rem * are also available at https://curl.se/docs/copyright.html.
-rem *
-rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-rem * copies of the Software, and permit persons to whom the Software is
-rem * furnished to do so, under the terms of the COPYING file.
-rem *
-rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-rem * KIND, either express or implied.
-rem *
-rem ***************************************************************************
-
-:begin
-  rem Check we are running on a Windows NT derived OS
-  if not "%OS%" == "Windows_NT" goto nodos
-
-  rem Set our variables
-  setlocal ENABLEEXTENSIONS
-  set VERSION=ALL
-  set MODE=GENERATE
-
-  rem Check we are not running on a network drive
-  if "%~d0."=="\\." goto nonetdrv
-
-  rem Switch to this batch file's directory
-  cd /d "%~0\.." 1>NUL 2>&1
-
-  rem Check we are running from a curl git repository
-  if not exist ..\GIT-INFO goto norepo
-
-:parseArgs
-  if "%~1" == "" goto start
-
-  if /i "%~1" == "pre" (
-    set VERSION=PRE
-  ) else if /i "%~1" == "vc6" (
-    set VERSION=VC6
-  ) else if /i "%~1" == "vc7" (
-    set VERSION=VC7
-  ) else if /i "%~1" == "vc7.1" (
-    set VERSION=VC7.1
-  ) else if /i "%~1" == "vc8" (
-    set VERSION=VC8
-  ) else if /i "%~1" == "vc9" (
-    set VERSION=VC9
-  ) else if /i "%~1" == "vc10" (
-    set VERSION=VC10
-  ) else if /i "%~1" == "vc11" (
-    set VERSION=VC11
-  ) else if /i "%~1" == "vc12" (
-    set VERSION=VC12
-  ) else if /i "%~1" == "vc14" (
-    set VERSION=VC14
-  ) else if /i "%~1" == "vc15" (
-    set VERSION=VC15
-  ) else if /i "%~1" == "-clean" (
-    set MODE=CLEAN
-  ) else if /i "%~1" == "-?" (
-    goto syntax
-  ) else if /i "%~1" == "-h" (
-    goto syntax
-  ) else if /i "%~1" == "-help" (
-    goto syntax
-  ) else (
-    goto unknown
-  )
-
-  shift & goto parseArgs
-
-:start
-  if exist ..\buildconf.bat (
-    if "%MODE%" == "GENERATE" (
-      call ..\buildconf
-    ) else if "%VERSION%" == "PRE" (
-      call ..\buildconf -clean
-    ) else if "%VERSION%" == "ALL" (
-      call ..\buildconf -clean
-    )
-  )
-  if "%VERSION%" == "PRE" goto success
-  if "%VERSION%" == "VC6" goto vc6
-  if "%VERSION%" == "VC7" goto vc7
-  if "%VERSION%" == "VC7.1" goto vc71
-  if "%VERSION%" == "VC8" goto vc8
-  if "%VERSION%" == "VC9" goto vc9
-  if "%VERSION%" == "VC10" goto vc10
-  if "%VERSION%" == "VC11" goto vc11
-  if "%VERSION%" == "VC12" goto vc12
-  if "%VERSION%" == "VC14" goto vc14
-  if "%VERSION%" == "VC15" goto vc15
-
-:vc6
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC6 project files
-    call :generate dsp Windows\VC6\src\curl.tmpl Windows\VC6\src\curl.dsp
-    call :generate dsp Windows\VC6\lib\libcurl.tmpl Windows\VC6\lib\libcurl.dsp
-  ) else (
-    echo Removing VC6 project files
-    call :clean Windows\VC6\src\curl.dsp
-    call :clean Windows\VC6\lib\libcurl.dsp
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc7
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC7 project files
-    call :generate vcproj1 Windows\VC7\src\curl.tmpl Windows\VC7\src\curl.vcproj
-    call :generate vcproj1 Windows\VC7\lib\libcurl.tmpl Windows\VC7\lib\libcurl.vcproj
-  ) else (
-    echo Removing VC7 project files
-    call :clean Windows\VC7\src\curl.vcproj
-    call :clean Windows\VC7\lib\libcurl.vcproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc71
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC7.1 project files
-    call :generate vcproj1 Windows\VC7.1\src\curl.tmpl Windows\VC7.1\src\curl.vcproj
-    call :generate vcproj1 Windows\VC7.1\lib\libcurl.tmpl Windows\VC7.1\lib\libcurl.vcproj
-  ) else (
-    echo Removing VC7.1 project files
-    call :clean Windows\VC7.1\src\curl.vcproj
-    call :clean Windows\VC7.1\lib\libcurl.vcproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc8
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC8 project files
-    call :generate vcproj2 Windows\VC8\src\curl.tmpl Windows\VC8\src\curl.vcproj
-    call :generate vcproj2 Windows\VC8\lib\libcurl.tmpl Windows\VC8\lib\libcurl.vcproj
-  ) else (
-    echo Removing VC8 project files
-    call :clean Windows\VC8\src\curl.vcproj
-    call :clean Windows\VC8\lib\libcurl.vcproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc9
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC9 project files
-    call :generate vcproj2 Windows\VC9\src\curl.tmpl Windows\VC9\src\curl.vcproj
-    call :generate vcproj2 Windows\VC9\lib\libcurl.tmpl Windows\VC9\lib\libcurl.vcproj
-  ) else (
-    echo Removing VC9 project files
-    call :clean Windows\VC9\src\curl.vcproj
-    call :clean Windows\VC9\lib\libcurl.vcproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc10
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC10 project files
-    call :generate vcxproj Windows\VC10\src\curl.tmpl Windows\VC10\src\curl.vcxproj
-    call :generate vcxproj Windows\VC10\lib\libcurl.tmpl Windows\VC10\lib\libcurl.vcxproj
-  ) else (
-    echo Removing VC10 project files
-    call :clean Windows\VC10\src\curl.vcxproj
-    call :clean Windows\VC10\lib\libcurl.vcxproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc11
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC11 project files
-    call :generate vcxproj Windows\VC11\src\curl.tmpl Windows\VC11\src\curl.vcxproj
-    call :generate vcxproj Windows\VC11\lib\libcurl.tmpl Windows\VC11\lib\libcurl.vcxproj
-  ) else (
-    echo Removing VC11 project files
-    call :clean Windows\VC11\src\curl.vcxproj
-    call :clean Windows\VC11\lib\libcurl.vcxproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc12
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC12 project files
-    call :generate vcxproj Windows\VC12\src\curl.tmpl Windows\VC12\src\curl.vcxproj
-    call :generate vcxproj Windows\VC12\lib\libcurl.tmpl Windows\VC12\lib\libcurl.vcxproj
-  ) else (
-    echo Removing VC12 project files
-    call :clean Windows\VC12\src\curl.vcxproj
-    call :clean Windows\VC12\lib\libcurl.vcxproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc14
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC14 project files
-    call :generate vcxproj Windows\VC14\src\curl.tmpl Windows\VC14\src\curl.vcxproj
-    call :generate vcxproj Windows\VC14\lib\libcurl.tmpl Windows\VC14\lib\libcurl.vcxproj
-  ) else (
-    echo Removing VC14 project files
-    call :clean Windows\VC14\src\curl.vcxproj
-    call :clean Windows\VC14\lib\libcurl.vcxproj
-  )
-
-  if not "%VERSION%" == "ALL" goto success
-
-:vc15
-  echo.
-
-  if "%MODE%" == "GENERATE" (
-    echo Generating VC15 project files
-    call :generate vcxproj Windows\VC15\src\curl.tmpl Windows\VC15\src\curl.vcxproj
-    call :generate vcxproj Windows\VC15\lib\libcurl.tmpl Windows\VC15\lib\libcurl.vcxproj
-  ) else (
-    echo Removing VC15 project files
-    call :clean Windows\VC15\src\curl.vcxproj
-    call :clean Windows\VC15\lib\libcurl.vcxproj
-  )
-
-  goto success
-
-rem Main generate function.
-rem
-rem %1 - Project Type (dsp for VC6, vcproj1 for VC7 and VC7.1, vcproj2 for VC8 and VC9
-rem      or vcxproj for VC10, VC11, VC12, VC14 and VC15)
-rem %2 - Input template file
-rem %3 - Output project file
-rem
-:generate
-  if not exist %2 (
-    echo.
-    echo Error: Cannot open %2
-    exit /B
-  )
-
-  if exist %3 (
-    del %3
-  )
-
-  echo * %CD%\%3
-  for /f "usebackq delims=" %%i in (`"findstr /n ^^ %2"`) do (
-    set "var=%%i"
-    setlocal enabledelayedexpansion
-    set "var=!var:*:=!"
-
-    if "!var!" == "CURL_SRC_C_FILES" (
-      for /f "delims=" %%c in ('dir /b ..\src\*.c') do call :element %1 src "%%c" %3
-    ) else if "!var!" == "CURL_SRC_H_FILES" (
-      for /f "delims=" %%h in ('dir /b ..\src\*.h') do call :element %1 src "%%h" %3
-    ) else if "!var!" == "CURL_SRC_RC_FILES" (
-      for /f "delims=" %%r in ('dir /b ..\src\*.rc') do call :element %1 src "%%r" %3
-    ) else if "!var!" == "CURL_SRC_X_C_FILES" (
-      call :element %1 lib "strtoofft.c" %3
-      call :element %1 lib "nonblock.c" %3
-      call :element %1 lib "warnless.c" %3
-      call :element %1 lib "curl_ctype.c" %3
-      call :element %1 lib "curl_multibyte.c" %3
-      call :element %1 lib "version_win32.c" %3
-      call :element %1 lib "dynbuf.c" %3
-    ) else if "!var!" == "CURL_SRC_X_H_FILES" (
-      call :element %1 lib "config-win32.h" %3
-      call :element %1 lib "curl_setup.h" %3
-      call :element %1 lib "strtoofft.h" %3
-      call :element %1 lib "nonblock.h" %3
-      call :element %1 lib "warnless.h" %3
-      call :element %1 lib "curl_ctype.h" %3
-      call :element %1 lib "curl_multibyte.h" %3
-      call :element %1 lib "version_win32.h" %3
-      call :element %1 lib "dynbuf.h" %3
-    ) else if "!var!" == "CURL_LIB_C_FILES" (
-      for /f "delims=" %%c in ('dir /b ..\lib\*.c') do call :element %1 lib "%%c" %3
-    ) else if "!var!" == "CURL_LIB_H_FILES" (
-      for /f "delims=" %%h in ('dir /b ..\include\curl\*.h') do call :element %1 include\curl "%%h" %3
-      for /f "delims=" %%h in ('dir /b ..\lib\*.h') do call :element %1 lib "%%h" %3
-    ) else if "!var!" == "CURL_LIB_RC_FILES" (
-      for /f "delims=" %%r in ('dir /b ..\lib\*.rc') do call :element %1 lib "%%r" %3
-    ) else if "!var!" == "CURL_LIB_VAUTH_C_FILES" (
-      for /f "delims=" %%c in ('dir /b ..\lib\vauth\*.c') do call :element %1 lib\vauth "%%c" %3
-    ) else if "!var!" == "CURL_LIB_VAUTH_H_FILES" (
-      for /f "delims=" %%h in ('dir /b ..\lib\vauth\*.h') do call :element %1 lib\vauth "%%h" %3
-    ) else if "!var!" == "CURL_LIB_VQUIC_C_FILES" (
-      for /f "delims=" %%c in ('dir /b ..\lib\vquic\*.c') do call :element %1 lib\vquic "%%c" %3
-    ) else if "!var!" == "CURL_LIB_VQUIC_H_FILES" (
-      for /f "delims=" %%h in ('dir /b ..\lib\vquic\*.h') do call :element %1 lib\vquic "%%h" %3
-    ) else if "!var!" == "CURL_LIB_VSSH_C_FILES" (
-      for /f "delims=" %%c in ('dir /b ..\lib\vssh\*.c') do call :element %1 lib\vssh "%%c" %3
-    ) else if "!var!" == "CURL_LIB_VSSH_H_FILES" (
-      for /f "delims=" %%h in ('dir /b ..\lib\vssh\*.h') do call :element %1 lib\vssh "%%h" %3
-    ) else if "!var!" == "CURL_LIB_VTLS_C_FILES" (
-      for /f "delims=" %%c in ('dir /b ..\lib\vtls\*.c') do call :element %1 lib\vtls "%%c" %3
-    ) else if "!var!" == "CURL_LIB_VTLS_H_FILES" (
-      for /f "delims=" %%h in ('dir /b ..\lib\vtls\*.h') do call :element %1 lib\vtls "%%h" %3
-    ) else (
-      echo.!var!>> %3
-    )
-
-    endlocal
-  )
-  exit /B
-
-rem Generates a single file xml element.
-rem
-rem %1 - Project Type (dsp for VC6, vcproj1 for VC7 and VC7.1, vcproj2 for VC8 and VC9
-rem      or vcxproj for VC10, VC11, VC12, VC14 and VC15)
-rem %2 - Directory (src, lib, lib\vauth, lib\vquic, lib\vssh, lib\vtls)
-rem %3 - Source filename
-rem %4 - Output project file
-rem
-:element
-  set "SPACES=    "
-  if "%2" == "lib\vauth" (
-    set "TABS=				"
-  ) else if "%2" == "lib\vquic" (
-    set "TABS=				"
-  ) else if "%2" == "lib\vssh" (
-    set "TABS=				"
-  ) else if "%2" == "lib\vtls" (
-    set "TABS=				"
-  ) else (
-    set "TABS=			"
-  )
-
-  call :extension %3 ext
-
-  if "%1" == "dsp" (
-    echo # Begin Source File>> %4
-    echo.>> %4
-    echo SOURCE=..\..\..\..\%2\%~3>> %4
-    echo # End Source File>> %4
-  ) else if "%1" == "vcproj1" (
-    echo %TABS%^<File>> %4
-    echo %TABS%	RelativePath="..\..\..\..\%2\%~3"^>>> %4
-    echo %TABS%^</File^>>> %4
-  ) else if "%1" == "vcproj2" (
-    echo %TABS%^<File>> %4
-    echo %TABS%	RelativePath="..\..\..\..\%2\%~3">> %4
-    echo %TABS%^>>> %4
-    echo %TABS%^</File^>>> %4
-  ) else if "%1" == "vcxproj" (
-    if "%ext%" == "c" (
-      echo %SPACES%^<ClCompile Include=^"..\..\..\..\%2\%~3^" /^>>> %4
-    ) else if "%ext%" == "h" (
-      echo %SPACES%^<ClInclude Include=^"..\..\..\..\%2\%~3^" /^>>> %4
-    ) else if "%ext%" == "rc" (
-      echo %SPACES%^<ResourceCompile Include=^"..\..\..\..\%2\%~3^" /^>>> %4
-    )
-  )
-
-  exit /B
-
-rem Returns the extension for a given filename.
-rem
-rem %1 - The filename
-rem %2 - The return value
-rem
-:extension
-  set fname=%~1
-  set ename=
-:loop1
-  if "%fname%"=="" (
-    set %2=
-    exit /B
-  )
-
-  if not "%fname:~-1%"=="." (
-    set ename=%fname:~-1%%ename%
-    set fname=%fname:~0,-1%
-    goto loop1
-  )
-
-  set %2=%ename%
-  exit /B
-
-rem Removes the given project file.
-rem
-rem %1 - The filename
-rem
-:clean
-  echo * %CD%\%1
-
-  if exist %1 (
-    del %1
-  )
-
-  exit /B
-
-:syntax
-  rem Display the help
-  echo.
-  echo Usage: generate [what] [-clean]
-  echo.
-  echo What to generate:
-  echo.
-  echo pre       - Prerequisites only
-  echo vc6       - Use Visual Studio 6
-  echo vc7       - Use Visual Studio .NET
-  echo vc7.1     - Use Visual Studio .NET 2003
-  echo vc8       - Use Visual Studio 2005
-  echo vc9       - Use Visual Studio 2008
-  echo vc10      - Use Visual Studio 2010
-  echo vc11      - Use Visual Studio 2012
-  echo vc12      - Use Visual Studio 2013
-  echo vc14      - Use Visual Studio 2015
-  echo vc15      - Use Visual Studio 2017
-  echo.
-  echo -clean    - Removes the project files
-  goto error
-
-:unknown
-  echo.
-  echo Error: Unknown argument '%1'
-  goto error
-
-:nodos
-  echo.
-  echo Error: Only a Windows NT based Operating System is supported
-  goto error
-
-:nonetdrv
-  echo.
-  echo Error: This batch file cannot run from a network drive
-  goto error
-
-:norepo
-  echo.
-  echo Error: This batch file should only be used from a curl git repository
-  goto error
-
-:seterr
-  rem Set the caller's errorlevel.
-  rem %1[opt]: Errorlevel as integer.
-  rem If %1 is empty the errorlevel will be set to 0.
-  rem If %1 is not empty and not an integer the errorlevel will be set to 1.
-  setlocal
-  set EXITCODE=%~1
-  if not defined EXITCODE set EXITCODE=0
-  echo %EXITCODE%|findstr /r "[^0-9\-]" 1>NUL 2>&1
-  if %ERRORLEVEL% EQU 0 set EXITCODE=1
-  exit /b %EXITCODE%
-
-:error
-  if "%OS%" == "Windows_NT" endlocal
-  exit /B 1
-
-:success
-  endlocal
-  exit /B 0
+@echo off

+rem ***************************************************************************

+rem *                                  _   _ ____  _

+rem *  Project                     ___| | | |  _ \| |

+rem *                             / __| | | | |_) | |

+rem *                            | (__| |_| |  _ <| |___

+rem *                             \___|\___/|_| \_\_____|

+rem *

+rem * Copyright (C) 2014 - 2020, Steve Holme, <steve_holme@hotmail.com>.

+rem *

+rem * This software is licensed as described in the file COPYING, which

+rem * you should have received as part of this distribution. The terms

+rem * are also available at https://curl.se/docs/copyright.html.

+rem *

+rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell

+rem * copies of the Software, and permit persons to whom the Software is

+rem * furnished to do so, under the terms of the COPYING file.

+rem *

+rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY

+rem * KIND, either express or implied.

+rem *

+rem ***************************************************************************

+

+:begin

+  rem Check we are running on a Windows NT derived OS

+  if not "%OS%" == "Windows_NT" goto nodos

+

+  rem Set our variables

+  setlocal ENABLEEXTENSIONS

+  set VERSION=ALL

+  set MODE=GENERATE

+

+  rem Check we are not running on a network drive

+  if "%~d0."=="\\." goto nonetdrv

+

+  rem Switch to this batch file's directory

+  cd /d "%~0\.." 1>NUL 2>&1

+

+  rem Check we are running from a curl git repository

+  if not exist ..\GIT-INFO goto norepo

+

+:parseArgs

+  if "%~1" == "" goto start

+

+  if /i "%~1" == "pre" (

+    set VERSION=PRE

+  ) else if /i "%~1" == "vc6" (

+    set VERSION=VC6

+  ) else if /i "%~1" == "vc7" (

+    set VERSION=VC7

+  ) else if /i "%~1" == "vc7.1" (

+    set VERSION=VC7.1

+  ) else if /i "%~1" == "vc8" (

+    set VERSION=VC8

+  ) else if /i "%~1" == "vc9" (

+    set VERSION=VC9

+  ) else if /i "%~1" == "vc10" (

+    set VERSION=VC10

+  ) else if /i "%~1" == "vc11" (

+    set VERSION=VC11

+  ) else if /i "%~1" == "vc12" (

+    set VERSION=VC12

+  ) else if /i "%~1" == "vc14" (

+    set VERSION=VC14

+  ) else if /i "%~1" == "vc15" (

+    set VERSION=VC15

+  ) else if /i "%~1" == "-clean" (

+    set MODE=CLEAN

+  ) else if /i "%~1" == "-?" (

+    goto syntax

+  ) else if /i "%~1" == "-h" (

+    goto syntax

+  ) else if /i "%~1" == "-help" (

+    goto syntax

+  ) else (

+    goto unknown

+  )

+

+  shift & goto parseArgs

+

+:start

+  if exist ..\buildconf.bat (

+    if "%MODE%" == "GENERATE" (

+      call ..\buildconf

+    ) else if "%VERSION%" == "PRE" (

+      call ..\buildconf -clean

+    ) else if "%VERSION%" == "ALL" (

+      call ..\buildconf -clean

+    )

+  )

+  if "%VERSION%" == "PRE" goto success

+  if "%VERSION%" == "VC6" goto vc6

+  if "%VERSION%" == "VC7" goto vc7

+  if "%VERSION%" == "VC7.1" goto vc71

+  if "%VERSION%" == "VC8" goto vc8

+  if "%VERSION%" == "VC9" goto vc9

+  if "%VERSION%" == "VC10" goto vc10

+  if "%VERSION%" == "VC11" goto vc11

+  if "%VERSION%" == "VC12" goto vc12

+  if "%VERSION%" == "VC14" goto vc14

+  if "%VERSION%" == "VC15" goto vc15

+

+:vc6

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC6 project files

+    call :generate dsp Windows\VC6\src\curl.tmpl Windows\VC6\src\curl.dsp

+    call :generate dsp Windows\VC6\lib\libcurl.tmpl Windows\VC6\lib\libcurl.dsp

+  ) else (

+    echo Removing VC6 project files

+    call :clean Windows\VC6\src\curl.dsp

+    call :clean Windows\VC6\lib\libcurl.dsp

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc7

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC7 project files

+    call :generate vcproj1 Windows\VC7\src\curl.tmpl Windows\VC7\src\curl.vcproj

+    call :generate vcproj1 Windows\VC7\lib\libcurl.tmpl Windows\VC7\lib\libcurl.vcproj

+  ) else (

+    echo Removing VC7 project files

+    call :clean Windows\VC7\src\curl.vcproj

+    call :clean Windows\VC7\lib\libcurl.vcproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc71

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC7.1 project files

+    call :generate vcproj1 Windows\VC7.1\src\curl.tmpl Windows\VC7.1\src\curl.vcproj

+    call :generate vcproj1 Windows\VC7.1\lib\libcurl.tmpl Windows\VC7.1\lib\libcurl.vcproj

+  ) else (

+    echo Removing VC7.1 project files

+    call :clean Windows\VC7.1\src\curl.vcproj

+    call :clean Windows\VC7.1\lib\libcurl.vcproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc8

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC8 project files

+    call :generate vcproj2 Windows\VC8\src\curl.tmpl Windows\VC8\src\curl.vcproj

+    call :generate vcproj2 Windows\VC8\lib\libcurl.tmpl Windows\VC8\lib\libcurl.vcproj

+  ) else (

+    echo Removing VC8 project files

+    call :clean Windows\VC8\src\curl.vcproj

+    call :clean Windows\VC8\lib\libcurl.vcproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc9

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC9 project files

+    call :generate vcproj2 Windows\VC9\src\curl.tmpl Windows\VC9\src\curl.vcproj

+    call :generate vcproj2 Windows\VC9\lib\libcurl.tmpl Windows\VC9\lib\libcurl.vcproj

+  ) else (

+    echo Removing VC9 project files

+    call :clean Windows\VC9\src\curl.vcproj

+    call :clean Windows\VC9\lib\libcurl.vcproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc10

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC10 project files

+    call :generate vcxproj Windows\VC10\src\curl.tmpl Windows\VC10\src\curl.vcxproj

+    call :generate vcxproj Windows\VC10\lib\libcurl.tmpl Windows\VC10\lib\libcurl.vcxproj

+  ) else (

+    echo Removing VC10 project files

+    call :clean Windows\VC10\src\curl.vcxproj

+    call :clean Windows\VC10\lib\libcurl.vcxproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc11

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC11 project files

+    call :generate vcxproj Windows\VC11\src\curl.tmpl Windows\VC11\src\curl.vcxproj

+    call :generate vcxproj Windows\VC11\lib\libcurl.tmpl Windows\VC11\lib\libcurl.vcxproj

+  ) else (

+    echo Removing VC11 project files

+    call :clean Windows\VC11\src\curl.vcxproj

+    call :clean Windows\VC11\lib\libcurl.vcxproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc12

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC12 project files

+    call :generate vcxproj Windows\VC12\src\curl.tmpl Windows\VC12\src\curl.vcxproj

+    call :generate vcxproj Windows\VC12\lib\libcurl.tmpl Windows\VC12\lib\libcurl.vcxproj

+  ) else (

+    echo Removing VC12 project files

+    call :clean Windows\VC12\src\curl.vcxproj

+    call :clean Windows\VC12\lib\libcurl.vcxproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc14

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC14 project files

+    call :generate vcxproj Windows\VC14\src\curl.tmpl Windows\VC14\src\curl.vcxproj

+    call :generate vcxproj Windows\VC14\lib\libcurl.tmpl Windows\VC14\lib\libcurl.vcxproj

+  ) else (

+    echo Removing VC14 project files

+    call :clean Windows\VC14\src\curl.vcxproj

+    call :clean Windows\VC14\lib\libcurl.vcxproj

+  )

+

+  if not "%VERSION%" == "ALL" goto success

+

+:vc15

+  echo.

+

+  if "%MODE%" == "GENERATE" (

+    echo Generating VC15 project files

+    call :generate vcxproj Windows\VC15\src\curl.tmpl Windows\VC15\src\curl.vcxproj

+    call :generate vcxproj Windows\VC15\lib\libcurl.tmpl Windows\VC15\lib\libcurl.vcxproj

+  ) else (

+    echo Removing VC15 project files

+    call :clean Windows\VC15\src\curl.vcxproj

+    call :clean Windows\VC15\lib\libcurl.vcxproj

+  )

+

+  goto success

+

+rem Main generate function.

+rem

+rem %1 - Project Type (dsp for VC6, vcproj1 for VC7 and VC7.1, vcproj2 for VC8 and VC9

+rem      or vcxproj for VC10, VC11, VC12, VC14 and VC15)

+rem %2 - Input template file

+rem %3 - Output project file

+rem

+:generate

+  if not exist %2 (

+    echo.

+    echo Error: Cannot open %2

+    exit /B

+  )

+

+  if exist %3 (

+    del %3

+  )

+

+  echo * %CD%\%3

+  for /f "usebackq delims=" %%i in (`"findstr /n ^^ %2"`) do (

+    set "var=%%i"

+    setlocal enabledelayedexpansion

+    set "var=!var:*:=!"

+

+    if "!var!" == "CURL_SRC_C_FILES" (

+      for /f "delims=" %%c in ('dir /b ..\src\*.c') do call :element %1 src "%%c" %3

+    ) else if "!var!" == "CURL_SRC_H_FILES" (

+      for /f "delims=" %%h in ('dir /b ..\src\*.h') do call :element %1 src "%%h" %3

+    ) else if "!var!" == "CURL_SRC_RC_FILES" (

+      for /f "delims=" %%r in ('dir /b ..\src\*.rc') do call :element %1 src "%%r" %3

+    ) else if "!var!" == "CURL_SRC_X_C_FILES" (

+      call :element %1 lib "strtoofft.c" %3

+      call :element %1 lib "nonblock.c" %3

+      call :element %1 lib "warnless.c" %3

+      call :element %1 lib "curl_ctype.c" %3

+      call :element %1 lib "curl_multibyte.c" %3

+      call :element %1 lib "version_win32.c" %3

+      call :element %1 lib "dynbuf.c" %3

+    ) else if "!var!" == "CURL_SRC_X_H_FILES" (

+      call :element %1 lib "config-win32.h" %3

+      call :element %1 lib "curl_setup.h" %3

+      call :element %1 lib "strtoofft.h" %3

+      call :element %1 lib "nonblock.h" %3

+      call :element %1 lib "warnless.h" %3

+      call :element %1 lib "curl_ctype.h" %3

+      call :element %1 lib "curl_multibyte.h" %3

+      call :element %1 lib "version_win32.h" %3

+      call :element %1 lib "dynbuf.h" %3

+    ) else if "!var!" == "CURL_LIB_C_FILES" (

+      for /f "delims=" %%c in ('dir /b ..\lib\*.c') do call :element %1 lib "%%c" %3

+    ) else if "!var!" == "CURL_LIB_H_FILES" (

+      for /f "delims=" %%h in ('dir /b ..\include\curl\*.h') do call :element %1 include\curl "%%h" %3

+      for /f "delims=" %%h in ('dir /b ..\lib\*.h') do call :element %1 lib "%%h" %3

+    ) else if "!var!" == "CURL_LIB_RC_FILES" (

+      for /f "delims=" %%r in ('dir /b ..\lib\*.rc') do call :element %1 lib "%%r" %3

+    ) else if "!var!" == "CURL_LIB_VAUTH_C_FILES" (

+      for /f "delims=" %%c in ('dir /b ..\lib\vauth\*.c') do call :element %1 lib\vauth "%%c" %3

+    ) else if "!var!" == "CURL_LIB_VAUTH_H_FILES" (

+      for /f "delims=" %%h in ('dir /b ..\lib\vauth\*.h') do call :element %1 lib\vauth "%%h" %3

+    ) else if "!var!" == "CURL_LIB_VQUIC_C_FILES" (

+      for /f "delims=" %%c in ('dir /b ..\lib\vquic\*.c') do call :element %1 lib\vquic "%%c" %3

+    ) else if "!var!" == "CURL_LIB_VQUIC_H_FILES" (

+      for /f "delims=" %%h in ('dir /b ..\lib\vquic\*.h') do call :element %1 lib\vquic "%%h" %3

+    ) else if "!var!" == "CURL_LIB_VSSH_C_FILES" (

+      for /f "delims=" %%c in ('dir /b ..\lib\vssh\*.c') do call :element %1 lib\vssh "%%c" %3

+    ) else if "!var!" == "CURL_LIB_VSSH_H_FILES" (

+      for /f "delims=" %%h in ('dir /b ..\lib\vssh\*.h') do call :element %1 lib\vssh "%%h" %3

+    ) else if "!var!" == "CURL_LIB_VTLS_C_FILES" (

+      for /f "delims=" %%c in ('dir /b ..\lib\vtls\*.c') do call :element %1 lib\vtls "%%c" %3

+    ) else if "!var!" == "CURL_LIB_VTLS_H_FILES" (

+      for /f "delims=" %%h in ('dir /b ..\lib\vtls\*.h') do call :element %1 lib\vtls "%%h" %3

+    ) else (

+      echo.!var!>> %3

+    )

+

+    endlocal

+  )

+  exit /B

+

+rem Generates a single file xml element.

+rem

+rem %1 - Project Type (dsp for VC6, vcproj1 for VC7 and VC7.1, vcproj2 for VC8 and VC9

+rem      or vcxproj for VC10, VC11, VC12, VC14 and VC15)

+rem %2 - Directory (src, lib, lib\vauth, lib\vquic, lib\vssh, lib\vtls)

+rem %3 - Source filename

+rem %4 - Output project file

+rem

+:element

+  set "SPACES=    "

+  if "%2" == "lib\vauth" (

+    set "TABS=				"

+  ) else if "%2" == "lib\vquic" (

+    set "TABS=				"

+  ) else if "%2" == "lib\vssh" (

+    set "TABS=				"

+  ) else if "%2" == "lib\vtls" (

+    set "TABS=				"

+  ) else (

+    set "TABS=			"

+  )

+

+  call :extension %3 ext

+

+  if "%1" == "dsp" (

+    echo # Begin Source File>> %4

+    echo.>> %4

+    echo SOURCE=..\..\..\..\%2\%~3>> %4

+    echo # End Source File>> %4

+  ) else if "%1" == "vcproj1" (

+    echo %TABS%^<File>> %4

+    echo %TABS%	RelativePath="..\..\..\..\%2\%~3"^>>> %4

+    echo %TABS%^</File^>>> %4

+  ) else if "%1" == "vcproj2" (

+    echo %TABS%^<File>> %4

+    echo %TABS%	RelativePath="..\..\..\..\%2\%~3">> %4

+    echo %TABS%^>>> %4

+    echo %TABS%^</File^>>> %4

+  ) else if "%1" == "vcxproj" (

+    if "%ext%" == "c" (

+      echo %SPACES%^<ClCompile Include=^"..\..\..\..\%2\%~3^" /^>>> %4

+    ) else if "%ext%" == "h" (

+      echo %SPACES%^<ClInclude Include=^"..\..\..\..\%2\%~3^" /^>>> %4

+    ) else if "%ext%" == "rc" (

+      echo %SPACES%^<ResourceCompile Include=^"..\..\..\..\%2\%~3^" /^>>> %4

+    )

+  )

+

+  exit /B

+

+rem Returns the extension for a given filename.

+rem

+rem %1 - The filename

+rem %2 - The return value

+rem

+:extension

+  set fname=%~1

+  set ename=

+:loop1

+  if "%fname%"=="" (

+    set %2=

+    exit /B

+  )

+

+  if not "%fname:~-1%"=="." (

+    set ename=%fname:~-1%%ename%

+    set fname=%fname:~0,-1%

+    goto loop1

+  )

+

+  set %2=%ename%

+  exit /B

+

+rem Removes the given project file.

+rem

+rem %1 - The filename

+rem

+:clean

+  echo * %CD%\%1

+

+  if exist %1 (

+    del %1

+  )

+

+  exit /B

+

+:syntax

+  rem Display the help

+  echo.

+  echo Usage: generate [what] [-clean]

+  echo.

+  echo What to generate:

+  echo.

+  echo pre       - Prerequisites only

+  echo vc6       - Use Visual Studio 6

+  echo vc7       - Use Visual Studio .NET

+  echo vc7.1     - Use Visual Studio .NET 2003

+  echo vc8       - Use Visual Studio 2005

+  echo vc9       - Use Visual Studio 2008

+  echo vc10      - Use Visual Studio 2010

+  echo vc11      - Use Visual Studio 2012

+  echo vc12      - Use Visual Studio 2013

+  echo vc14      - Use Visual Studio 2015

+  echo vc15      - Use Visual Studio 2017

+  echo.

+  echo -clean    - Removes the project files

+  goto error

+

+:unknown

+  echo.

+  echo Error: Unknown argument '%1'

+  goto error

+

+:nodos

+  echo.

+  echo Error: Only a Windows NT based Operating System is supported

+  goto error

+

+:nonetdrv

+  echo.

+  echo Error: This batch file cannot run from a network drive

+  goto error

+

+:norepo

+  echo.

+  echo Error: This batch file should only be used from a curl git repository

+  goto error

+

+:seterr

+  rem Set the caller's errorlevel.

+  rem %1[opt]: Errorlevel as integer.

+  rem If %1 is empty the errorlevel will be set to 0.

+  rem If %1 is not empty and not an integer the errorlevel will be set to 1.

+  setlocal

+  set EXITCODE=%~1

+  if not defined EXITCODE set EXITCODE=0

+  echo %EXITCODE%|findstr /r "[^0-9\-]" 1>NUL 2>&1

+  if %ERRORLEVEL% EQU 0 set EXITCODE=1

+  exit /b %EXITCODE%

+

+:error

+  if "%OS%" == "Windows_NT" endlocal

+  exit /B 1

+

+:success

+  endlocal

+  exit /B 0

diff --git a/src/Makefile.am b/src/Makefile.am
index 7343731..c8abc93 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -150,3 +150,6 @@
 
 tidy:
 	$(TIDY) $(CURL_CFILES) $(TIDYFLAGS) -- $(curl_CPPFLAGS) $(CPPFLAGS) -DHAVE_CONFIG_H
+
+listhelp:
+	(cd $(top_srcdir)/docs/cmdline-opts && ./gen.pl listhelp *.d) > tool_listhelp.c
diff --git a/src/Makefile.inc b/src/Makefile.inc
index 9839d4f..9fb9946 100644
--- a/src/Makefile.inc
+++ b/src/Makefile.inc
@@ -73,6 +73,7 @@
   tool_homedir.c \
   tool_hugehelp.c \
   tool_libinfo.c \
+  tool_listhelp.c \
   tool_main.c \
   tool_msgs.c \
   tool_operate.c \
diff --git a/src/Makefile.m32 b/src/Makefile.m32
index 380d264..d769bad 100644
--- a/src/Makefile.m32
+++ b/src/Makefile.m32
@@ -187,12 +187,10 @@
 endif
 ifeq ($(findstring -rtmp,$(CFG)),-rtmp)
 RTMP = 1
-SSL = 1
 ZLIB = 1
 endif
 ifeq ($(findstring -ssh2,$(CFG)),-ssh2)
 SSH2 = 1
-SSL = 1
 ZLIB = 1
 endif
 ifeq ($(findstring -ssl,$(CFG)),-ssl)
@@ -242,6 +240,13 @@
 UNICODE = 1
 endif
 
+# SSH2 and RTMP require an SSL library; assume OpenSSL if none specified
+ifneq ($(SSH2)$(RTMP),)
+  ifeq ($(SSL)$(WINSSL),)
+    SSL = 1
+  endif
+endif
+
 INCLUDES = -I. -I../include -I../lib
 ifdef SSL
   ifdef WINSSL
@@ -309,7 +314,7 @@
     endif
   endif
   ifneq "$(wildcard $(OPENSSL_INCLUDE)/openssl/opensslv.h)" "$(OPENSSL_INCLUDE)/openssl/opensslv.h"
-  $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
+    $(error Invalid path to OpenSSL package: $(OPENSSL_PATH))
   endif
   ifndef OPENSSL_LIBPATH
     OPENSSL_LIBS = -lssl -lcrypto
diff --git a/src/tool_cb_prg.c b/src/tool_cb_prg.c
index bb93d15..2a23fd9 100644
--- a/src/tool_cb_prg.c
+++ b/src/tool_cb_prg.c
@@ -125,9 +125,6 @@
                      curl_off_t dltotal, curl_off_t dlnow,
                      curl_off_t ultotal, curl_off_t ulnow)
 {
-  /* The original progress-bar source code was written for curl by Lars Aas,
-     and this new edition inherits some of his concepts. */
-
   struct timeval now = tvnow();
   struct per_transfer *per = clientp;
   struct OperationConfig *config = per->config;
@@ -135,19 +132,28 @@
   curl_off_t total;
   curl_off_t point;
 
-  /* Calculate expected transfer size. initial_size can be less than zero
-     when indicating that we are expecting to get the filesize from the
-     remote */
-  if(bar->initial_size < 0 ||
-     ((CURL_OFF_T_MAX - bar->initial_size) < (dltotal + ultotal)))
+  /* Calculate expected transfer size. initial_size can be less than zero when
+     indicating that we are expecting to get the filesize from the remote */
+  if(bar->initial_size < 0) {
+    if(dltotal || ultotal)
+      total = dltotal + ultotal;
+    else
+      total = CURL_OFF_T_MAX;
+  }
+  else if((CURL_OFF_T_MAX - bar->initial_size) < (dltotal + ultotal))
     total = CURL_OFF_T_MAX;
   else
     total = dltotal + ultotal + bar->initial_size;
 
   /* Calculate the current progress. initial_size can be less than zero when
      indicating that we are expecting to get the filesize from the remote */
-  if(bar->initial_size < 0 ||
-     ((CURL_OFF_T_MAX - bar->initial_size) < (dlnow + ulnow)))
+  if(bar->initial_size < 0) {
+    if(dltotal || ultotal)
+      point = dlnow + ulnow;
+    else
+      point = CURL_OFF_T_MAX;
+  }
+  else if((CURL_OFF_T_MAX - bar->initial_size) < (dlnow + ulnow))
     point = CURL_OFF_T_MAX;
   else
     point = dlnow + ulnow + bar->initial_size;
@@ -215,9 +221,8 @@
   char *colp;
   memset(bar, 0, sizeof(struct ProgressData));
 
-  /* pass this through to progress function so
-   * it can display progress towards total file
-   * not just the part that's left. (21-may-03, dbyron) */
+  /* pass the resume from value through to the progress function so it can
+   * display progress towards total file not just the part that's left. */
   if(config->use_resume)
     bar->initial_size = config->resume_from;
 
diff --git a/src/tool_cfgable.c b/src/tool_cfgable.c
index c3f7cec..34e17ce 100644
--- a/src/tool_cfgable.c
+++ b/src/tool_cfgable.c
@@ -131,6 +131,7 @@
   Curl_safefree(config->proxy_key_passwd);
   Curl_safefree(config->pubkey);
   Curl_safefree(config->hostpubmd5);
+  Curl_safefree(config->hostpubsha256);
   Curl_safefree(config->engine);
   Curl_safefree(config->etag_save_file);
   Curl_safefree(config->etag_compare_file);
diff --git a/src/tool_cfgable.h b/src/tool_cfgable.h
index b00aacb..eff55f9 100644
--- a/src/tool_cfgable.h
+++ b/src/tool_cfgable.h
@@ -158,6 +158,7 @@
   char *proxy_key_passwd;
   char *pubkey;
   char *hostpubmd5;
+  char *hostpubsha256;
   char *engine;
   char *etag_save_file;
   char *etag_compare_file;
diff --git a/src/tool_doswin.c b/src/tool_doswin.c
index 98e13bc..1ad9cdd 100644
--- a/src/tool_doswin.c
+++ b/src/tool_doswin.c
@@ -766,6 +766,8 @@
 
 CURLcode win32_init(void)
 {
+  /* curlx_verify_windows_version must be called during init at least once
+     because it has its own initialization routine. */
   if(curlx_verify_windows_version(6, 0, PLATFORM_WINNT,
                                   VERSION_GREATER_THAN_EQUAL))
     tool_isVistaOrGreater = true;
diff --git a/src/tool_easysrc.c b/src/tool_easysrc.c
index 246d814..85a586d 100644
--- a/src/tool_easysrc.c
+++ b/src/tool_easysrc.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -63,7 +63,7 @@
 /* easysrc_code statements come here */
 static const char *const srchard[]={
   "/* Here is a list of options the curl code used that cannot get generated",
-  "   as source easily. You may select to either not use them or implement",
+  "   as source easily. You may choose to either not use them or implement",
   "   them yourself.",
   "",
   NULL
diff --git a/src/tool_filetime.c b/src/tool_filetime.c
index e31fd59..57ff0c2 100644
--- a/src/tool_filetime.c
+++ b/src/tool_filetime.c
@@ -30,11 +30,6 @@
 #  include <sys/utime.h>
 #endif
 
-#if defined(__GNUC__) && defined(__MINGW32__)
-/* GCC 10 on mingw has issues with this, disable */
-#pragma GCC diagnostic ignored "-Wformat"
-#endif
-
 curl_off_t getfiletime(const char *filename, struct GlobalConfig *global)
 {
   curl_off_t result = -1;
diff --git a/src/tool_formparse.c b/src/tool_formparse.c
index fa81291..3661a97 100644
--- a/src/tool_formparse.c
+++ b/src/tool_formparse.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -347,7 +347,8 @@
  * after call get_parm_word, str either point to string end
  * or point to any of end chars.
  */
-static char *get_param_word(char **str, char **end_pos, char endchar)
+static char *get_param_word(struct OperationConfig *config, char **str,
+                            char **end_pos, char endchar)
 {
   char *ptr = *str;
   /* the first non-space char is here */
@@ -369,6 +370,7 @@
         }
       }
       if(*ptr == '"') {
+        bool trailing_data = FALSE;
         *end_pos = ptr;
         if(escape) {
           /* has escape, we restore the unescaped string here */
@@ -381,8 +383,14 @@
           while(ptr < *end_pos);
           *end_pos = ptr2;
         }
-        while(*ptr && *ptr != ';' && *ptr != endchar)
+        ++ptr;
+        while(*ptr && *ptr != ';' && *ptr != endchar) {
+          if(!ISSPACE(*ptr))
+            trailing_data = TRUE;
           ++ptr;
+        }
+        if(trailing_data)
+          warnf(config->global, "Trailing data after quoted form parameter\n");
         *str = ptr;
         return word_begin + 1;
       }
@@ -501,7 +509,7 @@
   while(ISSPACE(*p))
     p++;
   tp = p;
-  *pdata = get_param_word(&p, &endpos, endchar);
+  *pdata = get_param_word(config, &p, &endpos, endchar);
   /* If not quoted, strip trailing spaces. */
   if(*pdata == tp)
     while(endpos > *pdata && ISSPACE(endpos[-1]))
@@ -540,7 +548,7 @@
       for(p += 9; ISSPACE(*p); p++)
         ;
       tp = p;
-      filename = get_param_word(&p, &endpos, endchar);
+      filename = get_param_word(config, &p, &endpos, endchar);
       /* If not quoted, strip trailing spaces. */
       if(filename == tp)
         while(endpos > filename && ISSPACE(endpos[-1]))
@@ -563,7 +571,7 @@
           p++;
         } while(ISSPACE(*p));
         tp = p;
-        hdrfile = get_param_word(&p, &endpos, endchar);
+        hdrfile = get_param_word(config, &p, &endpos, endchar);
         /* If not quoted, strip trailing spaces. */
         if(hdrfile == tp)
           while(endpos > hdrfile && ISSPACE(endpos[-1]))
@@ -590,7 +598,7 @@
         while(ISSPACE(*p))
           p++;
         tp = p;
-        hdr = get_param_word(&p, &endpos, endchar);
+        hdr = get_param_word(config, &p, &endpos, endchar);
         /* If not quoted, strip trailing spaces. */
         if(hdr == tp)
           while(endpos > hdr && ISSPACE(endpos[-1]))
@@ -612,7 +620,7 @@
       for(p += 8; ISSPACE(*p); p++)
         ;
       tp = p;
-      encoder = get_param_word(&p, &endpos, endchar);
+      encoder = get_param_word(config, &p, &endpos, endchar);
       /* If not quoted, strip trailing spaces. */
       if(encoder == tp)
         while(endpos > encoder && ISSPACE(endpos[-1]))
@@ -629,7 +637,7 @@
     }
     else {
       /* unknown prefix, skip to next block */
-      char *unknown = get_param_word(&p, &endpos, endchar);
+      char *unknown = get_param_word(config, &p, &endpos, endchar);
 
       sep = *p;
       *endpos = '\0';
diff --git a/src/tool_getparam.c b/src/tool_getparam.c
index 641cca2..1fe7d5d 100644
--- a/src/tool_getparam.c
+++ b/src/tool_getparam.c
@@ -241,6 +241,7 @@
   {"Eg", "capath",                   ARG_FILENAME},
   {"Eh", "pubkey",                   ARG_STRING},
   {"Ei", "hostpubmd5",               ARG_STRING},
+  {"EF", "hostpubsha256",            ARG_STRING},
   {"Ej", "crlfile",                  ARG_FILENAME},
   {"Ek", "tlsuser",                  ARG_STRING},
   {"El", "tlspassword",              ARG_STRING},
@@ -1006,8 +1007,9 @@
         config->ftp_filemethod = ftpfilemethod(config, nextarg);
         break;
       case 's': { /* --local-port */
-        char lrange[7];  /* 16bit base 10 is 5 digits, but we allow 6 so that
-                            this catches overflows, not just truncates */
+        /* 16bit base 10 is 5 digits, but we allow 6 so that this catches
+           overflows, not just truncates */
+        char lrange[7]="";
         char *p = nextarg;
         while(ISDIGIT(*p))
           p++;
@@ -1429,7 +1431,7 @@
           char *enc = curl_easy_escape(NULL, postdata, (int)size);
           Curl_safefree(postdata); /* no matter if it worked or not */
           if(enc) {
-            /* replace (in-place) '%20' by '+' acording to RFC1866 */
+            /* replace (in-place) '%20' by '+' according to RFC1866 */
             size_t enclen = replace_url_encoded_space_by_plus(enc);
             /* now make a string with the name from above and append the
                encoded string */
@@ -1601,6 +1603,9 @@
         if(!config->hostpubmd5 || strlen(config->hostpubmd5) != 32)
           return PARAM_BAD_USE;
         break;
+      case 'F': /* --hostpubsha256 sha256 of the host public key */
+        GetStr(&config->hostpubsha256, nextarg);
+        break;
       case 'j': /* CRL file */
         GetStr(&config->crlfile, nextarg);
         break;
@@ -1889,11 +1894,6 @@
       }
       break;
     case 'i':
-      if(config->content_disposition) {
-        warnf(global,
-              "--include and --remote-header-name cannot be combined.\n");
-        return PARAM_BAD_USE;
-      }
       config->show_headers = toggle; /* show the headers as well in the
                                         general output stream */
       break;
@@ -1909,11 +1909,6 @@
         return PARAM_BAD_USE;
       break;
     case 'J': /* --remote-header-name */
-      if(config->show_headers) {
-        warnf(global,
-              "--include and --remote-header-name cannot be combined.\n");
-        return PARAM_BAD_USE;
-      }
       config->content_disposition = toggle;
       break;
     case 'k': /* allow insecure SSL connects */
@@ -2087,7 +2082,7 @@
         if(!config->range)
           return PARAM_NO_MEM;
       }
-      {
+      else {
         /* byte range requested */
         const char *tmp_range = nextarg;
         while(*tmp_range != '\0') {
@@ -2100,7 +2095,6 @@
           }
           tmp_range++;
         }
-        /* byte range requested */
         GetStr(&config->range, nextarg);
       }
       break;
@@ -2393,6 +2387,13 @@
       curlx_unicodefree(orig_opt);
   }
 
+  if(!result && config->content_disposition) {
+    if(config->show_headers)
+      result = PARAM_CONTDISP_SHOW_HEADER;
+    else if(config->resume_from_current)
+      result = PARAM_CONTDISP_RESUME_FROM;
+  }
+
   if(result && result != PARAM_HELP_REQUESTED &&
      result != PARAM_MANUAL_REQUESTED &&
      result != PARAM_VERSION_INFO_REQUESTED &&
diff --git a/src/tool_getparam.h b/src/tool_getparam.h
index 2c24d48..599a0ac 100644
--- a/src/tool_getparam.h
+++ b/src/tool_getparam.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -43,6 +43,8 @@
   PARAM_NO_PREFIX,
   PARAM_NUMBER_TOO_LARGE,
   PARAM_NO_NOT_BOOLEAN,
+  PARAM_CONTDISP_SHOW_HEADER, /* --include and --remote-header-name */
+  PARAM_CONTDISP_RESUME_FROM, /* --continue-at and --remote-header-name */
   PARAM_LAST
 } ParameterError;
 
diff --git a/src/tool_help.c b/src/tool_help.c
index b5e37aa..d49cccd 100644
--- a/src/tool_help.c
+++ b/src/tool_help.c
@@ -38,40 +38,6 @@
 #  define USE_WATT32
 #endif
 
-/*
- * The bitmask output is generated with the following command
- ------------------------------------------------------------
-  cd $srcroot/docs/cmdline-opts
-  ./gen.pl listcats *.d
- */
-
-#define CURLHELP_HIDDEN 1u << 0u
-#define CURLHELP_AUTH 1u << 1u
-#define CURLHELP_CONNECTION 1u << 2u
-#define CURLHELP_CURL 1u << 3u
-#define CURLHELP_DNS 1u << 4u
-#define CURLHELP_FILE 1u << 5u
-#define CURLHELP_FTP 1u << 6u
-#define CURLHELP_HTTP 1u << 7u
-#define CURLHELP_IMAP 1u << 8u
-#define CURLHELP_IMPORTANT 1u << 9u
-#define CURLHELP_MISC 1u << 10u
-#define CURLHELP_OUTPUT 1u << 11u
-#define CURLHELP_POP3 1u << 12u
-#define CURLHELP_POST 1u << 13u
-#define CURLHELP_PROXY 1u << 14u
-#define CURLHELP_SCP 1u << 15u
-#define CURLHELP_SFTP 1u << 16u
-#define CURLHELP_SMTP 1u << 17u
-#define CURLHELP_SSH 1u << 18u
-#define CURLHELP_TELNET 1u << 19u
-#define CURLHELP_TFTP 1u << 20u
-#define CURLHELP_TLS 1u << 21u
-#define CURLHELP_UPLOAD 1u << 22u
-#define CURLHELP_VERBOSE 1u << 23u
-
-typedef unsigned int curlhelp_t;
-
 struct category_descriptors {
   const char *opt;
   const char *desc;
@@ -108,750 +74,7 @@
   {NULL, NULL, CURLHELP_HIDDEN}
 };
 
-/*
- * The help output is generated with the following command
- ---------------------------------------------------------
-
-  cd $srcroot/docs/cmdline-opts
-  ./gen.pl listhelp *.d
- */
-
-struct helptxt {
-  const char *opt;
-  const char *desc;
-  curlhelp_t categories;
-};
-
-
-static const struct helptxt helptext[] = {
-  {"    --abstract-unix-socket <path>",
-   "Connect via abstract Unix domain socket",
-   CURLHELP_CONNECTION},
-  {"    --alt-svc <file name>",
-   "Enable alt-svc with this cache file",
-   CURLHELP_HTTP},
-  {"    --anyauth",
-   "Pick any authentication method",
-   CURLHELP_HTTP | CURLHELP_PROXY | CURLHELP_AUTH},
-  {"-a, --append",
-   "Append to target file when uploading",
-   CURLHELP_FTP | CURLHELP_SFTP},
-  {"    --aws-sigv4 <provider1[:provider2[:region[:service]]]>",
-   "Use AWS V4 signature authentication",
-   CURLHELP_AUTH | CURLHELP_HTTP},
-  {"    --basic",
-   "Use HTTP Basic Authentication",
-   CURLHELP_AUTH},
-  {"    --cacert <file>",
-   "CA certificate to verify peer against",
-   CURLHELP_TLS},
-  {"    --capath <dir>",
-   "CA directory to verify peer against",
-   CURLHELP_TLS},
-  {"-E, --cert <certificate[:password]>",
-   "Client certificate file and password",
-   CURLHELP_TLS},
-  {"    --cert-status",
-   "Verify the status of the server cert via OCSP-staple",
-   CURLHELP_TLS},
-  {"    --cert-type <type>",
-   "Certificate type (DER/PEM/ENG)",
-   CURLHELP_TLS},
-  {"    --ciphers <list of ciphers>",
-   "SSL ciphers to use",
-   CURLHELP_TLS},
-  {"    --compressed",
-   "Request compressed response",
-   CURLHELP_HTTP},
-  {"    --compressed-ssh",
-   "Enable SSH compression",
-   CURLHELP_SCP | CURLHELP_SSH},
-  {"-K, --config <file>",
-   "Read config from a file",
-   CURLHELP_CURL},
-  {"    --connect-timeout <seconds>",
-   "Maximum time allowed for connection",
-   CURLHELP_CONNECTION},
-  {"    --connect-to <HOST1:PORT1:HOST2:PORT2>",
-   "Connect to host",
-   CURLHELP_CONNECTION},
-  {"-C, --continue-at <offset>",
-   "Resumed transfer offset",
-   CURLHELP_CONNECTION},
-  {"-b, --cookie <data|filename>",
-   "Send cookies from string/file",
-   CURLHELP_HTTP},
-  {"-c, --cookie-jar <filename>",
-   "Write cookies to <filename> after operation",
-   CURLHELP_HTTP},
-  {"    --create-dirs",
-   "Create necessary local directory hierarchy",
-   CURLHELP_CURL},
-  {"    --create-file-mode <mode>",
-   "File mode (octal) for created files",
-   CURLHELP_SFTP | CURLHELP_SCP | CURLHELP_FILE | CURLHELP_UPLOAD},
-  {"    --crlf",
-   "Convert LF to CRLF in upload",
-   CURLHELP_FTP | CURLHELP_SMTP},
-  {"    --crlfile <file>",
-   "Get a CRL list in PEM format from the given file",
-   CURLHELP_TLS},
-  {"    --curves <algorithm list>",
-   "(EC) TLS key exchange algorithm(s) to request",
-   CURLHELP_TLS},
-  {"-d, --data <data>",
-   "HTTP POST data",
-   CURLHELP_IMPORTANT | CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
-  {"    --data-ascii <data>",
-   "HTTP POST ASCII data",
-   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
-  {"    --data-binary <data>",
-   "HTTP POST binary data",
-   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
-  {"    --data-raw <data>",
-   "HTTP POST data, '@' allowed",
-   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
-  {"    --data-urlencode <data>",
-   "HTTP POST data url encoded",
-   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
-  {"    --delegation <LEVEL>",
-   "GSS-API delegation permission",
-   CURLHELP_AUTH},
-  {"    --digest",
-   "Use HTTP Digest Authentication",
-   CURLHELP_PROXY | CURLHELP_AUTH | CURLHELP_HTTP},
-  {"-q, --disable",
-   "Disable .curlrc",
-   CURLHELP_CURL},
-  {"    --disable-eprt",
-   "Inhibit using EPRT or LPRT",
-   CURLHELP_FTP},
-  {"    --disable-epsv",
-   "Inhibit using EPSV",
-   CURLHELP_FTP},
-  {"    --disallow-username-in-url",
-   "Disallow username in url",
-   CURLHELP_CURL | CURLHELP_HTTP},
-  {"    --dns-interface <interface>",
-   "Interface to use for DNS requests",
-   CURLHELP_DNS},
-  {"    --dns-ipv4-addr <address>",
-   "IPv4 address to use for DNS requests",
-   CURLHELP_DNS},
-  {"    --dns-ipv6-addr <address>",
-   "IPv6 address to use for DNS requests",
-   CURLHELP_DNS},
-  {"    --dns-servers <addresses>",
-   "DNS server addrs to use",
-   CURLHELP_DNS},
-  {"    --doh-cert-status",
-   "Verify the status of the DoH server cert via OCSP-staple",
-   CURLHELP_DNS | CURLHELP_TLS},
-  {"    --doh-insecure",
-   "Allow insecure DoH server connections",
-   CURLHELP_DNS | CURLHELP_TLS},
-  {"    --doh-url <URL>",
-   "Resolve host names over DoH",
-   CURLHELP_DNS},
-  {"-D, --dump-header <filename>",
-   "Write the received headers to <filename>",
-   CURLHELP_HTTP | CURLHELP_FTP},
-  {"    --egd-file <file>",
-   "EGD socket path for random data",
-   CURLHELP_TLS},
-  {"    --engine <name>",
-   "Crypto engine to use",
-   CURLHELP_TLS},
-  {"    --etag-compare <file>",
-   "Pass an ETag from a file as a custom header",
-   CURLHELP_HTTP},
-  {"    --etag-save <file>",
-   "Parse ETag from a request and save it to a file",
-   CURLHELP_HTTP},
-  {"    --expect100-timeout <seconds>",
-   "How long to wait for 100-continue",
-   CURLHELP_HTTP},
-  {"-f, --fail",
-   "Fail silently (no output at all) on HTTP errors",
-   CURLHELP_IMPORTANT | CURLHELP_HTTP},
-  {"    --fail-early",
-   "Fail on first transfer error, do not continue",
-   CURLHELP_CURL},
-  {"    --fail-with-body",
-   "Fail on HTTP errors but save the body",
-   CURLHELP_HTTP | CURLHELP_OUTPUT},
-  {"    --false-start",
-   "Enable TLS False Start",
-   CURLHELP_TLS},
-  {"-F, --form <name=content>",
-   "Specify multipart MIME data",
-   CURLHELP_HTTP | CURLHELP_UPLOAD},
-  {"    --form-string <name=string>",
-   "Specify multipart MIME data",
-   CURLHELP_HTTP | CURLHELP_UPLOAD},
-  {"    --ftp-account <data>",
-   "Account data string",
-   CURLHELP_FTP | CURLHELP_AUTH},
-  {"    --ftp-alternative-to-user <command>",
-   "String to replace USER [name]",
-   CURLHELP_FTP},
-  {"    --ftp-create-dirs",
-   "Create the remote dirs if not present",
-   CURLHELP_FTP | CURLHELP_SFTP | CURLHELP_CURL},
-  {"    --ftp-method <method>",
-   "Control CWD usage",
-   CURLHELP_FTP},
-  {"    --ftp-pasv",
-   "Use PASV/EPSV instead of PORT",
-   CURLHELP_FTP},
-  {"-P, --ftp-port <address>",
-   "Use PORT instead of PASV",
-   CURLHELP_FTP},
-  {"    --ftp-pret",
-   "Send PRET before PASV",
-   CURLHELP_FTP},
-  {"    --ftp-skip-pasv-ip",
-   "Skip the IP address for PASV",
-   CURLHELP_FTP},
-  {"    --ftp-ssl-ccc",
-   "Send CCC after authenticating",
-   CURLHELP_FTP | CURLHELP_TLS},
-  {"    --ftp-ssl-ccc-mode <active/passive>",
-   "Set CCC mode",
-   CURLHELP_FTP | CURLHELP_TLS},
-  {"    --ftp-ssl-control",
-   "Require SSL/TLS for FTP login, clear for transfer",
-   CURLHELP_FTP | CURLHELP_TLS},
-  {"-G, --get",
-   "Put the post data in the URL and use GET",
-   CURLHELP_HTTP | CURLHELP_UPLOAD},
-  {"-g, --globoff",
-   "Disable URL sequences and ranges using {} and []",
-   CURLHELP_CURL},
-  {"    --happy-eyeballs-timeout-ms <milliseconds>",
-   "Time for IPv6 before trying IPv4",
-   CURLHELP_CONNECTION},
-  {"    --haproxy-protocol",
-   "Send HAProxy PROXY protocol v1 header",
-   CURLHELP_HTTP | CURLHELP_PROXY},
-  {"-I, --head",
-   "Show document info only",
-   CURLHELP_HTTP | CURLHELP_FTP | CURLHELP_FILE},
-  {"-H, --header <header/@file>",
-   "Pass custom header(s) to server",
-   CURLHELP_HTTP},
-  {"-h, --help <category>",
-   "Get help for commands",
-   CURLHELP_IMPORTANT | CURLHELP_CURL},
-  {"    --hostpubmd5 <md5>",
-   "Acceptable MD5 hash of the host public key",
-   CURLHELP_SFTP | CURLHELP_SCP},
-  {"    --hsts <file name>",
-   "Enable HSTS with this cache file",
-   CURLHELP_HTTP},
-  {"    --http0.9",
-   "Allow HTTP 0.9 responses",
-   CURLHELP_HTTP},
-  {"-0, --http1.0",
-   "Use HTTP 1.0",
-   CURLHELP_HTTP},
-  {"    --http1.1",
-   "Use HTTP 1.1",
-   CURLHELP_HTTP},
-  {"    --http2",
-   "Use HTTP 2",
-   CURLHELP_HTTP},
-  {"    --http2-prior-knowledge",
-   "Use HTTP 2 without HTTP/1.1 Upgrade",
-   CURLHELP_HTTP},
-  {"    --http3",
-   "Use HTTP v3",
-   CURLHELP_HTTP},
-  {"    --ignore-content-length",
-   "Ignore the size of the remote resource",
-   CURLHELP_HTTP | CURLHELP_FTP},
-  {"-i, --include",
-   "Include protocol response headers in the output",
-   CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
-  {"-k, --insecure",
-   "Allow insecure server connections when using SSL",
-   CURLHELP_TLS},
-  {"    --interface <name>",
-   "Use network INTERFACE (or address)",
-   CURLHELP_CONNECTION},
-  {"-4, --ipv4",
-   "Resolve names to IPv4 addresses",
-   CURLHELP_CONNECTION | CURLHELP_DNS},
-  {"-6, --ipv6",
-   "Resolve names to IPv6 addresses",
-   CURLHELP_CONNECTION | CURLHELP_DNS},
-  {"-j, --junk-session-cookies",
-   "Ignore session cookies read from file",
-   CURLHELP_HTTP},
-  {"    --keepalive-time <seconds>",
-   "Interval time for keepalive probes",
-   CURLHELP_CONNECTION},
-  {"    --key <key>",
-   "Private key file name",
-   CURLHELP_TLS | CURLHELP_SSH},
-  {"    --key-type <type>",
-   "Private key file type (DER/PEM/ENG)",
-   CURLHELP_TLS},
-  {"    --krb <level>",
-   "Enable Kerberos with security <level>",
-   CURLHELP_FTP},
-  {"    --libcurl <file>",
-   "Dump libcurl equivalent code of this command line",
-   CURLHELP_CURL},
-  {"    --limit-rate <speed>",
-   "Limit transfer speed to RATE",
-   CURLHELP_CONNECTION},
-  {"-l, --list-only",
-   "List only mode",
-   CURLHELP_FTP | CURLHELP_POP3},
-  {"    --local-port <num/range>",
-   "Force use of RANGE for local port numbers",
-   CURLHELP_CONNECTION},
-  {"-L, --location",
-   "Follow redirects",
-   CURLHELP_HTTP},
-  {"    --location-trusted",
-   "Like --location, and send auth to other hosts",
-   CURLHELP_HTTP | CURLHELP_AUTH},
-  {"    --login-options <options>",
-   "Server login options",
-   CURLHELP_IMAP | CURLHELP_POP3 | CURLHELP_SMTP | CURLHELP_AUTH},
-  {"    --mail-auth <address>",
-   "Originator address of the original email",
-   CURLHELP_SMTP},
-  {"    --mail-from <address>",
-   "Mail from this address",
-   CURLHELP_SMTP},
-  {"    --mail-rcpt <address>",
-   "Mail to this address",
-   CURLHELP_SMTP},
-  {"    --mail-rcpt-allowfails",
-   "Allow RCPT TO command to fail for some recipients",
-   CURLHELP_SMTP},
-  {"-M, --manual",
-   "Display the full manual",
-   CURLHELP_CURL},
-  {"    --max-filesize <bytes>",
-   "Maximum file size to download",
-   CURLHELP_CONNECTION},
-  {"    --max-redirs <num>",
-   "Maximum number of redirects allowed",
-   CURLHELP_HTTP},
-  {"-m, --max-time <seconds>",
-   "Maximum time allowed for the transfer",
-   CURLHELP_CONNECTION},
-  {"    --metalink",
-   "Process given URLs as metalink XML file",
-   CURLHELP_MISC},
-  {"    --negotiate",
-   "Use HTTP Negotiate (SPNEGO) authentication",
-   CURLHELP_AUTH | CURLHELP_HTTP},
-  {"-n, --netrc",
-   "Must read .netrc for user name and password",
-   CURLHELP_CURL},
-  {"    --netrc-file <filename>",
-   "Specify FILE for netrc",
-   CURLHELP_CURL},
-  {"    --netrc-optional",
-   "Use either .netrc or URL",
-   CURLHELP_CURL},
-  {"-:, --next",
-   "Make next URL use its separate set of options",
-   CURLHELP_CURL},
-  {"    --no-alpn",
-   "Disable the ALPN TLS extension",
-   CURLHELP_TLS | CURLHELP_HTTP},
-  {"-N, --no-buffer",
-   "Disable buffering of the output stream",
-   CURLHELP_CURL},
-  {"    --no-keepalive",
-   "Disable TCP keepalive on the connection",
-   CURLHELP_CONNECTION},
-  {"    --no-npn",
-   "Disable the NPN TLS extension",
-   CURLHELP_TLS | CURLHELP_HTTP},
-  {"    --no-progress-meter",
-   "Do not show the progress meter",
-   CURLHELP_VERBOSE},
-  {"    --no-sessionid",
-   "Disable SSL session-ID reusing",
-   CURLHELP_TLS},
-  {"    --noproxy <no-proxy-list>",
-   "List of hosts which do not use proxy",
-   CURLHELP_PROXY},
-  {"    --ntlm",
-   "Use HTTP NTLM authentication",
-   CURLHELP_AUTH | CURLHELP_HTTP},
-  {"    --ntlm-wb",
-   "Use HTTP NTLM authentication with winbind",
-   CURLHELP_AUTH | CURLHELP_HTTP},
-  {"    --oauth2-bearer <token>",
-   "OAuth 2 Bearer Token",
-   CURLHELP_AUTH},
-  {"-o, --output <file>",
-   "Write to file instead of stdout",
-   CURLHELP_IMPORTANT | CURLHELP_CURL},
-  {"    --output-dir <dir>",
-   "Directory to save files in",
-   CURLHELP_CURL},
-  {"-Z, --parallel",
-   "Perform transfers in parallel",
-   CURLHELP_CONNECTION | CURLHELP_CURL},
-  {"    --parallel-immediate",
-   "Do not wait for multiplexing (with --parallel)",
-   CURLHELP_CONNECTION | CURLHELP_CURL},
-  {"    --parallel-max <num>",
-   "Maximum concurrency for parallel transfers",
-   CURLHELP_CONNECTION | CURLHELP_CURL},
-  {"    --pass <phrase>",
-   "Pass phrase for the private key",
-   CURLHELP_SSH | CURLHELP_TLS | CURLHELP_AUTH},
-  {"    --path-as-is",
-   "Do not squash .. sequences in URL path",
-   CURLHELP_CURL},
-  {"    --pinnedpubkey <hashes>",
-   "FILE/HASHES Public key to verify peer against",
-   CURLHELP_TLS},
-  {"    --post301",
-   "Do not switch to GET after following a 301",
-   CURLHELP_HTTP | CURLHELP_POST},
-  {"    --post302",
-   "Do not switch to GET after following a 302",
-   CURLHELP_HTTP | CURLHELP_POST},
-  {"    --post303",
-   "Do not switch to GET after following a 303",
-   CURLHELP_HTTP | CURLHELP_POST},
-  {"    --preproxy [protocol://]host[:port]",
-   "Use this proxy first",
-   CURLHELP_PROXY},
-  {"-#, --progress-bar",
-   "Display transfer progress as a bar",
-   CURLHELP_VERBOSE},
-  {"    --proto <protocols>",
-   "Enable/disable PROTOCOLS",
-   CURLHELP_CONNECTION | CURLHELP_CURL},
-  {"    --proto-default <protocol>",
-   "Use PROTOCOL for any URL missing a scheme",
-   CURLHELP_CONNECTION | CURLHELP_CURL},
-  {"    --proto-redir <protocols>",
-   "Enable/disable PROTOCOLS on redirect",
-   CURLHELP_CONNECTION | CURLHELP_CURL},
-  {"-x, --proxy [protocol://]host[:port]",
-   "Use this proxy",
-   CURLHELP_PROXY},
-  {"    --proxy-anyauth",
-   "Pick any proxy authentication method",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --proxy-basic",
-   "Use Basic authentication on the proxy",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --proxy-cacert <file>",
-   "CA certificate to verify peer against for proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-capath <dir>",
-   "CA directory to verify peer against for proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-cert <cert[:passwd]>",
-   "Set client certificate for proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-cert-type <type>",
-   "Client certificate type for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-ciphers <list>",
-   "SSL ciphers to use for proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-crlfile <file>",
-   "Set a CRL list for proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-digest",
-   "Use Digest authentication on the proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-header <header/@file>",
-   "Pass custom header(s) to proxy",
-   CURLHELP_PROXY},
-  {"    --proxy-insecure",
-   "Do HTTPS proxy connections without verifying the proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-key <key>",
-   "Private key for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-key-type <type>",
-   "Private key file type for proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-negotiate",
-   "Use HTTP Negotiate (SPNEGO) authentication on the proxy",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --proxy-ntlm",
-   "Use NTLM authentication on the proxy",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --proxy-pass <phrase>",
-   "Pass phrase for the private key for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
-  {"    --proxy-pinnedpubkey <hashes>",
-   "FILE/HASHES public key to verify proxy with",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-service-name <name>",
-   "SPNEGO proxy service name",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-ssl-allow-beast",
-   "Allow security flaw for interop for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-ssl-auto-client-cert",
-   "Use auto client certificate for proxy (Schannel)",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-tls13-ciphers <ciphersuite list>",
-   "TLS 1.3 proxy cipher suites",
-   CURLHELP_PROXY | CURLHELP_TLS},
-  {"    --proxy-tlsauthtype <type>",
-   "TLS authentication type for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
-  {"    --proxy-tlspassword <string>",
-   "TLS password for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
-  {"    --proxy-tlsuser <name>",
-   "TLS username for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
-  {"    --proxy-tlsv1",
-   "Use TLSv1 for HTTPS proxy",
-   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
-  {"-U, --proxy-user <user:password>",
-   "Proxy user and password",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --proxy1.0 <host[:port]>",
-   "Use HTTP/1.0 proxy on given port",
-   CURLHELP_PROXY},
-  {"-p, --proxytunnel",
-   "Operate through an HTTP proxy tunnel (using CONNECT)",
-   CURLHELP_PROXY},
-  {"    --pubkey <key>",
-   "SSH Public key file name",
-   CURLHELP_SFTP | CURLHELP_SCP | CURLHELP_AUTH},
-  {"-Q, --quote <command>",
-   "Send command(s) to server before transfer",
-   CURLHELP_FTP | CURLHELP_SFTP},
-  {"    --random-file <file>",
-   "File for reading random data from",
-   CURLHELP_MISC},
-  {"-r, --range <range>",
-   "Retrieve only the bytes within RANGE",
-   CURLHELP_HTTP | CURLHELP_FTP | CURLHELP_SFTP | CURLHELP_FILE},
-  {"    --raw",
-   "Do HTTP \"raw\"; no transfer decoding",
-   CURLHELP_HTTP},
-  {"-e, --referer <URL>",
-   "Referrer URL",
-   CURLHELP_HTTP},
-  {"-J, --remote-header-name",
-   "Use the header-provided filename",
-   CURLHELP_OUTPUT},
-  {"-O, --remote-name",
-   "Write output to a file named as the remote file",
-   CURLHELP_IMPORTANT | CURLHELP_OUTPUT},
-  {"    --remote-name-all",
-   "Use the remote file name for all URLs",
-   CURLHELP_OUTPUT},
-  {"-R, --remote-time",
-   "Set the remote file's time on the local output",
-   CURLHELP_OUTPUT},
-  {"-X, --request <command>",
-   "Specify request command to use",
-   CURLHELP_CONNECTION},
-  {"    --request-target <path>",
-   "Specify the target for this request",
-   CURLHELP_HTTP},
-  {"    --resolve <[+]host:port:addr[,addr]...>",
-   "Resolve the host+port to this address",
-   CURLHELP_CONNECTION},
-  {"    --retry <num>",
-   "Retry request if transient problems occur",
-   CURLHELP_CURL},
-  {"    --retry-all-errors",
-   "Retry all errors (use with --retry)",
-   CURLHELP_CURL},
-  {"    --retry-connrefused",
-   "Retry on connection refused (use with --retry)",
-   CURLHELP_CURL},
-  {"    --retry-delay <seconds>",
-   "Wait time between retries",
-   CURLHELP_CURL},
-  {"    --retry-max-time <seconds>",
-   "Retry only within this period",
-   CURLHELP_CURL},
-  {"    --sasl-authzid <identity>",
-   "Identity for SASL PLAIN authentication",
-   CURLHELP_AUTH},
-  {"    --sasl-ir",
-   "Enable initial response in SASL authentication",
-   CURLHELP_AUTH},
-  {"    --service-name <name>",
-   "SPNEGO service name",
-   CURLHELP_MISC},
-  {"-S, --show-error",
-   "Show error even when -s is used",
-   CURLHELP_CURL},
-  {"-s, --silent",
-   "Silent mode",
-   CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
-  {"    --socks4 <host[:port]>",
-   "SOCKS4 proxy on given host + port",
-   CURLHELP_PROXY},
-  {"    --socks4a <host[:port]>",
-   "SOCKS4a proxy on given host + port",
-   CURLHELP_PROXY},
-  {"    --socks5 <host[:port]>",
-   "SOCKS5 proxy on given host + port",
-   CURLHELP_PROXY},
-  {"    --socks5-basic",
-   "Enable username/password auth for SOCKS5 proxies",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --socks5-gssapi",
-   "Enable GSS-API auth for SOCKS5 proxies",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --socks5-gssapi-nec",
-   "Compatibility with NEC SOCKS5 server",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --socks5-gssapi-service <name>",
-   "SOCKS5 proxy service name for GSS-API",
-   CURLHELP_PROXY | CURLHELP_AUTH},
-  {"    --socks5-hostname <host[:port]>",
-   "SOCKS5 proxy, pass host name to proxy",
-   CURLHELP_PROXY},
-  {"-Y, --speed-limit <speed>",
-   "Stop transfers slower than this",
-   CURLHELP_CONNECTION},
-  {"-y, --speed-time <seconds>",
-   "Trigger 'speed-limit' abort after this time",
-   CURLHELP_CONNECTION},
-  {"    --ssl",
-   "Try SSL/TLS",
-   CURLHELP_TLS},
-  {"    --ssl-allow-beast",
-   "Allow security flaw to improve interop",
-   CURLHELP_TLS},
-  {"    --ssl-auto-client-cert",
-   "Use auto client certificate (Schannel)",
-   CURLHELP_TLS},
-  {"    --ssl-no-revoke",
-   "Disable cert revocation checks (Schannel)",
-   CURLHELP_TLS},
-  {"    --ssl-reqd",
-   "Require SSL/TLS",
-   CURLHELP_TLS},
-  {"    --ssl-revoke-best-effort",
-   "Ignore missing/offline cert CRL dist points",
-   CURLHELP_TLS},
-  {"-2, --sslv2",
-   "Use SSLv2",
-   CURLHELP_TLS},
-  {"-3, --sslv3",
-   "Use SSLv3",
-   CURLHELP_TLS},
-  {"    --stderr <file>",
-   "Where to redirect stderr",
-   CURLHELP_VERBOSE},
-  {"    --styled-output",
-   "Enable styled output for HTTP headers",
-   CURLHELP_VERBOSE},
-  {"    --suppress-connect-headers",
-   "Suppress proxy CONNECT response headers",
-   CURLHELP_PROXY},
-  {"    --tcp-fastopen",
-   "Use TCP Fast Open",
-   CURLHELP_CONNECTION},
-  {"    --tcp-nodelay",
-   "Use the TCP_NODELAY option",
-   CURLHELP_CONNECTION},
-  {"-t, --telnet-option <opt=val>",
-   "Set telnet option",
-   CURLHELP_TELNET},
-  {"    --tftp-blksize <value>",
-   "Set TFTP BLKSIZE option",
-   CURLHELP_TFTP},
-  {"    --tftp-no-options",
-   "Do not send any TFTP options",
-   CURLHELP_TFTP},
-  {"-z, --time-cond <time>",
-   "Transfer based on a time condition",
-   CURLHELP_HTTP | CURLHELP_FTP},
-  {"    --tls-max <VERSION>",
-   "Set maximum allowed TLS version",
-   CURLHELP_TLS},
-  {"    --tls13-ciphers <ciphersuite list>",
-   "TLS 1.3 cipher suites to use",
-   CURLHELP_TLS},
-  {"    --tlsauthtype <type>",
-   "TLS authentication type",
-   CURLHELP_TLS | CURLHELP_AUTH},
-  {"    --tlspassword <string>",
-   "TLS password",
-   CURLHELP_TLS | CURLHELP_AUTH},
-  {"    --tlsuser <name>",
-   "TLS user name",
-   CURLHELP_TLS | CURLHELP_AUTH},
-  {"-1, --tlsv1",
-   "Use TLSv1.0 or greater",
-   CURLHELP_TLS},
-  {"    --tlsv1.0",
-   "Use TLSv1.0 or greater",
-   CURLHELP_TLS},
-  {"    --tlsv1.1",
-   "Use TLSv1.1 or greater",
-   CURLHELP_TLS},
-  {"    --tlsv1.2",
-   "Use TLSv1.2 or greater",
-   CURLHELP_TLS},
-  {"    --tlsv1.3",
-   "Use TLSv1.3 or greater",
-   CURLHELP_TLS},
-  {"    --tr-encoding",
-   "Request compressed transfer encoding",
-   CURLHELP_HTTP},
-  {"    --trace <file>",
-   "Write a debug trace to FILE",
-   CURLHELP_VERBOSE},
-  {"    --trace-ascii <file>",
-   "Like --trace, but without hex output",
-   CURLHELP_VERBOSE},
-  {"    --trace-time",
-   "Add time stamps to trace/verbose output",
-   CURLHELP_VERBOSE},
-  {"    --unix-socket <path>",
-   "Connect through this Unix domain socket",
-   CURLHELP_CONNECTION},
-  {"-T, --upload-file <file>",
-   "Transfer local FILE to destination",
-   CURLHELP_IMPORTANT | CURLHELP_UPLOAD},
-  {"    --url <url>",
-   "URL to work with",
-   CURLHELP_CURL},
-  {"-B, --use-ascii",
-   "Use ASCII/text transfer",
-   CURLHELP_MISC},
-  {"-u, --user <user:password>",
-   "Server user and password",
-   CURLHELP_IMPORTANT | CURLHELP_AUTH},
-  {"-A, --user-agent <name>",
-   "Send User-Agent <name> to server",
-   CURLHELP_IMPORTANT | CURLHELP_HTTP},
-  {"-v, --verbose",
-   "Make the operation more talkative",
-   CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
-  {"-V, --version",
-   "Show version number and quit",
-   CURLHELP_IMPORTANT | CURLHELP_CURL},
-  {"-w, --write-out <format>",
-   "Use output FORMAT after completion",
-   CURLHELP_VERBOSE},
-  {"    --xattr",
-   "Store metadata in extended file attributes",
-   CURLHELP_MISC},
-  { NULL, NULL, CURLHELP_HIDDEN }
-};
+extern const struct helptxt helptext[];
 
 struct feat {
   const char *name;
@@ -892,9 +115,26 @@
 static void print_category(curlhelp_t category)
 {
   unsigned int i;
+  size_t longopt = 5;
+  size_t longdesc = 5;
+
+  for(i = 0; helptext[i].opt; ++i) {
+    size_t len;
+    if(!(helptext[i].categories & category))
+      continue;
+    len = strlen(helptext[i].opt);
+    if(len > longopt)
+      longopt = len;
+    len = strlen(helptext[i].desc);
+    if(len > longdesc)
+      longdesc = len;
+  }
+  if(longopt + longdesc > 80)
+    longopt = 80 - longdesc;
+
   for(i = 0; helptext[i].opt; ++i)
     if(helptext[i].categories & category) {
-      printf(" %-18s  %s\n", helptext[i].opt, helptext[i].desc);
+      printf(" %-*s %s\n", (int)longopt, helptext[i].opt, helptext[i].desc);
     }
 }
 
diff --git a/src/tool_help.h b/src/tool_help.h
index 39ea240..1434662 100644
--- a/src/tool_help.h
+++ b/src/tool_help.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -27,4 +27,46 @@
 void tool_list_engines(void);
 void tool_version_info(void);
 
+typedef unsigned int curlhelp_t;
+
+struct helptxt {
+  const char *opt;
+  const char *desc;
+  curlhelp_t categories;
+};
+
+/*
+ * The bitmask output is generated with the following command
+ ------------------------------------------------------------
+  cd $srcroot/docs/cmdline-opts
+  ./gen.pl listcats *.d
+ */
+
+#define CURLHELP_HIDDEN 1u << 0u
+#define CURLHELP_AUTH 1u << 1u
+#define CURLHELP_CONNECTION 1u << 2u
+#define CURLHELP_CURL 1u << 3u
+#define CURLHELP_DNS 1u << 4u
+#define CURLHELP_FILE 1u << 5u
+#define CURLHELP_FTP 1u << 6u
+#define CURLHELP_HTTP 1u << 7u
+#define CURLHELP_IMAP 1u << 8u
+#define CURLHELP_IMPORTANT 1u << 9u
+#define CURLHELP_MISC 1u << 10u
+#define CURLHELP_OUTPUT 1u << 11u
+#define CURLHELP_POP3 1u << 12u
+#define CURLHELP_POST 1u << 13u
+#define CURLHELP_PROXY 1u << 14u
+#define CURLHELP_SCP 1u << 15u
+#define CURLHELP_SFTP 1u << 16u
+#define CURLHELP_SMTP 1u << 17u
+#define CURLHELP_SSH 1u << 18u
+#define CURLHELP_TELNET 1u << 19u
+#define CURLHELP_TFTP 1u << 20u
+#define CURLHELP_TLS 1u << 21u
+#define CURLHELP_UPLOAD 1u << 22u
+#define CURLHELP_VERBOSE 1u << 23u
+
+extern const struct helptxt helptext[];
+
 #endif /* HEADER_CURL_TOOL_HELP_H */
diff --git a/src/tool_helpers.c b/src/tool_helpers.c
index 8cd2ac5..04b0510 100644
--- a/src/tool_helpers.c
+++ b/src/tool_helpers.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -68,6 +68,10 @@
     return "too large number";
   case PARAM_NO_NOT_BOOLEAN:
     return "used '--no-' for option that isn't a boolean";
+  case PARAM_CONTDISP_SHOW_HEADER:
+    return "--include and --remote-header-name cannot be combined";
+  case PARAM_CONTDISP_RESUME_FROM:
+    return "--continue-at and --remote-header-name cannot be combined";
   default:
     return "unknown error";
   }
diff --git a/src/tool_hugehelp.c b/src/tool_hugehelp.c
index f1fb951..a28da1d 100644
--- a/src/tool_hugehelp.c
+++ b/src/tool_hugehelp.c
@@ -21,13 +21,13 @@
 "       curl [options / URLs]\n"
 "\n"
 "DESCRIPTION\n"
-"       curl  is  a tool to transfer data from or to a server, using one of the\n"
-"       supported protocols (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS,  IMAP,\n"
+"       curl  is  a tool for transferring data from or to a server. It supports\n"
+"       these protocols: DICT, FILE, FTP, FTPS, GOPHER, GOPHERS,  HTTP,  HTTPS,\n"
 , stdout);
  fputs(
-"       IMAPS,  LDAP,  LDAPS,  MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP, SFTP,\n"
-"       SMB, SMBS, SMTP, SMTPS, TELNET or TFTP). The  command  is  designed  to\n"
-"       work without user interaction.\n"
+"       IMAP,  IMAPS,  LDAP,  LDAPS, MQTT, POP3, POP3S, RTMP, RTMPS, RTSP, SCP,\n"
+"       SFTP, SMB, SMBS, SMTP, SMTPS, TELNET or TFTP. The command  is  designed\n"
+"       to work without user interaction.\n"
 "\n"
 "       curl offers a busload of useful tricks like proxy support, user authen-\n"
 "       tication, FTP upload, HTTP post, SSL connections, cookies, file  trans-\n"
@@ -40,8 +40,8 @@
 "       libcurl(3) for details.\n"
 "\n"
 "URL\n"
-"       The  URL  syntax is protocol-dependent. You'll find a detailed descrip-\n"
-"       tion in RFC 3986.\n"
+"       The  URL  syntax is protocol-dependent. You find a detailed description\n"
+"       in RFC 3986.\n"
 "\n"
 "       You can specify multiple URLs or parts of URLs  by  writing  part  sets\n"
 "       within braces and quoting the URL as in:\n"
@@ -139,7 +139,8 @@
  fputs(
 "              and levers. With or without using TLS.\n"
 "\n"
-"       GOPHER Retrieve files.\n"
+"       GOPHER(S)\n"
+"              Retrieve files.\n"
 "\n"
 "       HTTP(S)\n"
 "              curl supports HTTP with numerous options and variations. It  can\n"
@@ -157,17 +158,16 @@
 "\n"
 "       MQTT   curl supports MQTT version 3. Downloading over MQTT equals \"sub-\n"
 "              scribe\" to a topic while uploading/posting equals \"publish\" on a\n"
-"              topic.  MQTT  support  is experimental and TLS based MQTT is not\n"
-"              supported (yet).\n"
+"              topic. MQTT over TLS is not supported (yet).\n"
 "\n"
 "       POP3(S)\n"
-"              Downloading from a pop3 server means getting  a  mail.  With  or\n"
+"              Downloading  from  a  pop3  server means getting a mail. With or\n"
 "              without using TLS.\n"
 "\n"
 "       RTMP(S)\n"
 , stdout);
  fputs(
-"              The  Realtime  Messaging  Protocol  is  primarily used to server\n"
+"              The Realtime Messaging Protocol  is  primarily  used  to  server\n"
 "              streaming media and curl can download it.\n"
 "\n"
 "       RTSP   curl supports RTSP 1.0 downloads.\n"
@@ -179,97 +179,98 @@
 "       SMB(S) curl supports SMB version 1 for upload and download.\n"
 "\n"
 "       SMTP(S)\n"
-"              Uploading contents to an SMTP server  means  sending  an  email.\n"
+"              Uploading  contents  to  an  SMTP server means sending an email.\n"
 , stdout);
  fputs(
 "              With or without TLS.\n"
 "\n"
 "       TELNET Telling curl to fetch a telnet URL starts an interactive session\n"
-"              where it sends what it reads  on  stdin  and  outputs  what  the\n"
+"              where  it  sends  what  it  reads  on stdin and outputs what the\n"
 "              server sends it.\n"
 "\n"
 "       TFTP   curl can do TFTP downloads and uploads.\n"
 "\n"
 "PROGRESS METER\n"
-"       curl  normally  displays a progress meter during operations, indicating\n"
-"       the amount of transferred data,  transfer  speeds  and  estimated  time\n"
+"       curl normally displays a progress meter during  operations,  indicating\n"
+"       the  amount  of  transferred  data,  transfer speeds and estimated time\n"
 , stdout);
  fputs(
-"       left,  etc.  The progress meter displays number of bytes and the speeds\n"
-"       are in bytes per second. The suffixes (k, M, G, T, P) are  1024  based.\n"
+"       left, etc. The progress meter displays number of bytes and  the  speeds\n"
+"       are  in  bytes per second. The suffixes (k, M, G, T, P) are 1024 based.\n"
 "       For example 1k is 1024 bytes. 1M is 1048576 bytes.\n"
 "\n"
-"       curl  displays  this  data to the terminal by default, so if you invoke\n"
-"       curl to do an operation and it is about to write data to the  terminal,\n"
+"       curl displays this data to the terminal by default, so  if  you  invoke\n"
+"       curl  to do an operation and it is about to write data to the terminal,\n"
 "       it disables the progress meter as otherwise it would mess up the output\n"
 , stdout);
  fputs(
 "       mixing progress meter and response data.\n"
 "\n"
 "       If you want a progress meter for HTTP POST or PUT requests, you need to\n"
-"       redirect  the  response output to a file, using shell redirect (>), -o,\n"
+"       redirect the response output to a file, using shell redirect  (>),  -o,\n"
 "       --output or similar.\n"
 "\n"
-"       This does not apply to FTP upload as that operation does not  spit  out\n"
+"       This  does  not apply to FTP upload as that operation does not spit out\n"
 "       any response data to the terminal.\n"
 "\n"
-"       If  you  prefer  a  progress  \"bar\"  instead  of the regular meter, -#,\n"
+"       If you prefer a progress  \"bar\"  instead  of  the  regular  meter,  -#,\n"
 , stdout);
  fputs(
-"       --progress-bar is your friend. You can also disable the progress  meter\n"
+"       --progress-bar  is your friend. You can also disable the progress meter\n"
 "       completely with the -s, --silent option.\n"
 "\n"
 "OPTIONS\n"
-"       Options  start  with  one or two dashes. Many of the options require an\n"
+"       Options start with one or two dashes. Many of the  options  require  an\n"
 "       additional value next to them.\n"
 "\n"
-"       The short \"single-dash\" form of the options, -d  for  example,  may  be\n"
+"       The  short  \"single-dash\"  form  of the options, -d for example, may be\n"
 "       used with or without a space between it and its value, although a space\n"
 "       is a recommended separator. The long \"double-dash\" form, -d, --data for\n"
 , stdout);
  fputs(
 "       example, requires a space between it and its value.\n"
 "\n"
-"       Short version options that don't need any additional values can be used\n"
-"       immediately next to each other, like for example you  can  specify  all\n"
-"       the options -O, -L and -v at once as -OLv.\n"
+"       Short version options that do not need any  additional  values  can  be\n"
+"       used  immediately  next to each other, like for example you can specify\n"
+"       all the options -O, -L and -v at once as -OLv.\n"
 "\n"
 "       In general, all boolean options are enabled with --option and yet again\n"
-"       disabled with --no-option. That is, you use the exact same option  name\n"
+"       disabled  with --no-option. That is, you use the exact same option name\n"
 , stdout);
  fputs(
 "       but prefix it with \"no-\". However, in this list we mostly only list and\n"
-"       show the --option version of them. (This concept with --no options  was\n"
-"       added  in  7.19.0.  Previously most options were toggled on/off through\n"
-"       repeated use of the same command line option.)\n"
+"       show the --option version of them.\n"
 "\n"
 "       --abstract-unix-socket <path>\n"
-"              (HTTP) Connect through an abstract Unix domain  socket,  instead\n"
-"              of  using  the  network.  Note: netstat shows the path of an ab-\n"
+"              (HTTP)  Connect  through an abstract Unix domain socket, instead\n"
+"              of using the network.  Note: netstat shows the path  of  an  ab-\n"
+"              stract  socket  prefixed  with  '@', however the <path> argument\n"
+"              should not have this leading character.\n"
+"\n"
+"              Example:\n"
 , stdout);
  fputs(
-"              stract socket prefixed with '@',  however  the  <path>  argument\n"
-"              should not have this leading character.\n"
+"               curl --abstract-unix-socket socketpath https://example.com\n"
 "\n"
 "              Added in 7.53.0.\n"
 "\n"
 "       --alt-svc <file name>\n"
-"              (HTTPS) WARNING: this option is experimental. Do not use in pro-\n"
-"              duction.\n"
+"              (HTTPS) This option enables the alt-svc parser in curl.  If  the\n"
+"              file name points to an existing alt-svc cache file, that will be\n"
+"              used. After a completed transfer, the cache will be saved to the\n"
+"              file name again if it has been modified.\n"
 "\n"
-"              This option enables the alt-svc parser in curl. If the file name\n"
-"              points to an existing alt-svc cache file, that will be used. Af-\n"
 , stdout);
  fputs(
-"              ter a completed transfer, the cache will be saved  to  the  file\n"
-"              name again if it has been modified.\n"
-"\n"
 "              Specify a \"\" file name (zero length) to avoid loading/saving and\n"
 "              make curl just handle the cache in memory.\n"
 "\n"
 "              If this option is used several times, curl  will  load  contents\n"
 "              from all the files but the last one will be used for saving.\n"
 "\n"
+"              Example:\n"
+"               curl --alt-svc svc.txt https://example.com\n"
+"\n"
 "              Added in 7.64.1.\n"
 "\n"
 "       --anyauth\n"
@@ -292,21 +293,27 @@
 "\n"
 "              Used together with -u, --user.\n"
 "\n"
+"              Example:\n"
+"               curl --anyauth --user me:pwd https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              See also --proxy-anyauth, --basic and --digest.\n"
 "\n"
 "       -a, --append\n"
+"              (FTP SFTP) When used in an upload, this makes curl append to the\n"
+"              target  file  instead of overwriting it. If the remote file does\n"
+"              not exist, it will be created.  Note that this flag  is  ignored\n"
+"              by some SFTP servers (including OpenSSH).\n"
+"\n"
+"              Example:\n"
+"               curl --upload-file local --append ftp://example.com/\n"
+"\n"
 , stdout);
  fputs(
-"              (FTP SFTP) When used in an upload, this makes curl append to the\n"
-"              target  file  instead  of  overwriting  it.  If  the remote file\n"
-"              doesn't exist, it will be created.  Note that this flag  is  ig-\n"
-"              nored by some SFTP servers (including OpenSSH).\n"
-"\n"
 "       --aws-sigv4 <provider1[:provider2[:region[:service]]]>\n"
 "              Use AWS V4 signature authentication in the transfer.\n"
 "\n"
-, stdout);
- fputs(
 "              The  provider argument is a string that is used by the algorithm\n"
 "              when creating outgoing authentication headers.\n"
 "\n"
@@ -314,16 +321,21 @@
 "              of  a resources collection (region-code) when the region name is\n"
 "              omitted from the endpoint.\n"
 "\n"
-"              The service argument is a string that points to a function  pro-\n"
-"              vided by a cloud (service-code) when the service name is omitted\n"
 , stdout);
  fputs(
+"              The service argument is a string that points to a function  pro-\n"
+"              vided by a cloud (service-code) when the service name is omitted\n"
 "              from the endpoint.\n"
 "\n"
+"              Example:\n"
+"               curl --aws-sigv4 \"aws:amz:east-2:es\" --user \"key:secret\" https://example.com\n"
+"\n"
 "              Added in 7.75.0.\n"
 "\n"
 "       --basic\n"
 "              (HTTP) Tells curl to use HTTP Basic authentication with the  re-\n"
+, stdout);
+ fputs(
 "              mote host. This is the default and this option is usually point-\n"
 "              less, unless you use it to override a previously set option that\n"
 "              sets  a  different  authentication method (such as --ntlm, --di-\n"
@@ -331,11 +343,14 @@
 "\n"
 "              Used together with -u, --user.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl -u name:password --basic https://example.com\n"
+"\n"
 "              See also --proxy-basic.\n"
 "\n"
 "       --cacert <file>\n"
+, stdout);
+ fputs(
 "              (TLS) Tells curl to use the specified certificate file to verify\n"
 "              the  peer.  The  file  may contain multiple CA certificates. The\n"
 "              certificate(s) must be in PEM format. Normally curl is built  to\n"
@@ -378,29 +393,37 @@
  fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --cacert CA-file.txt https://example.com\n"
+"\n"
 "       --capath <dir>\n"
 "              (TLS) Tells curl to use the specified certificate  directory  to\n"
 "              verify  the  peer.  Multiple paths can be provided by separating\n"
 "              them with \":\" (e.g.  \"path1:path2:path3\"). The certificates must\n"
-"              be  in PEM format, and if curl is built against OpenSSL, the di-\n"
-"              rectory must have been processed using the c_rehash utility sup-\n"
 , stdout);
  fputs(
+"              be  in PEM format, and if curl is built against OpenSSL, the di-\n"
+"              rectory must have been processed using the c_rehash utility sup-\n"
 "              plied  with  OpenSSL.  Using  --capath can allow OpenSSL-powered\n"
 "              curl to make SSL-connections much more  efficiently  than  using\n"
 "              --cacert if the --cacert file contains many CA certificates.\n"
 "\n"
 "              If this option is set, the default capath value will be ignored,\n"
+, stdout);
+ fputs(
 "              and if it is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --capath /local/directory https://example.com\n"
+"\n"
 "       --cert-status\n"
 "              (TLS) Tells curl to verify the status of the server  certificate\n"
-, stdout);
- fputs(
 "              by using the Certificate Status Request (aka. OCSP stapling) TLS\n"
 "              extension.\n"
 "\n"
 "              If this option is enabled and the server sends an invalid  (e.g.\n"
+, stdout);
+ fputs(
 "              expired) response, if the response suggests that the server cer-\n"
 "              tificate has been revoked, or no response at  all  is  received,\n"
 "              the verification fails.\n"
@@ -408,17 +431,23 @@
 "              This  is  currently  only implemented in the OpenSSL, GnuTLS and\n"
 "              NSS backends.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl --cert-status https://example.com\n"
+"\n"
 "              Added in 7.41.0.\n"
 "\n"
 "       --cert-type <type>\n"
+, stdout);
+ fputs(
 "              (TLS) Tells curl what type the provided  client  certificate  is\n"
 "              using. PEM, DER, ENG and P12 are recognized types.  If not spec-\n"
 "              ified, PEM is assumed.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --cert-type PEM --cert file https://example.com\n"
+"\n"
 "              See also -E, --cert, --key and --key-type.\n"
 "\n"
 "       -E, --cert <certificate[:password]>\n"
@@ -428,7 +457,7 @@
 "              when getting a file with HTTPS, FTPS or another SSL-based proto-\n"
 "              col. The certificate must be in PKCS#12 format if  using  Secure\n"
 "              Transport,  or PEM format if using any other engine.  If the op-\n"
-"              tional password isn't specified, it will be queried for  on  the\n"
+"              tional password is not specified, it will be queried for on  the\n"
 "              terminal.  Note  that  this  option assumes a \"certificate\" file\n"
 , stdout);
  fputs(
@@ -487,6 +516,9 @@
  fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --cert certfile --key keyfile https://example.com\n"
+"\n"
 "              See also --cert-type, --key and --key-type.\n"
 "\n"
 "       --ciphers <list of ciphers>\n"
@@ -494,16 +526,24 @@
 "              of ciphers must specify valid ciphers. Read  up  on  SSL  cipher\n"
 "              list details on this URL:\n"
 "\n"
-"               https://curl.se/docs/ssl-ciphers.html\n"
-"\n"
 , stdout);
  fputs(
+"               https://curl.se/docs/ssl-ciphers.html\n"
+"\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --ciphers ECDHE-ECDSA-AES256-CCM8 https://example.com\n"
+"\n"
 "       --compressed-ssh\n"
 "              (SCP SFTP) Enables built-in SSH compression.  This is a request,\n"
 "              not an order; the server may or may not do it.\n"
 "\n"
+"              Example:\n"
+"               curl --compressed-ssh sftp://example.com/\n"
+"\n"
+, stdout);
+ fputs(
 "              Added in 7.56.0.\n"
 "\n"
 "       --compressed\n"
@@ -511,57 +551,61 @@
 "              curl supports, and automatically decompress the content. Headers\n"
 "              are not modified.\n"
 "\n"
+"              If this option is used and the server sends an  unsupported  en-\n"
+"              coding, curl will report an error. This is a request, not an or-\n"
+"              der; the server may or may not deliver data compressed.\n"
+"\n"
+"              Example:\n"
 , stdout);
  fputs(
-"              If this option is used and the server sends an  unsupported  en-\n"
-"              coding, curl will report an error.\n"
+"               curl --compressed https://example.com\n"
 "\n"
 "       -K, --config <file>\n"
-"\n"
-"              Specify  a  text  file  to read curl arguments from. The command\n"
-"              line arguments found in the text file will be used  as  if  they\n"
+"              Specify a text file to read curl  arguments  from.  The  command\n"
+"              line  arguments  found  in the text file will be used as if they\n"
 "              were provided on the command line.\n"
 "\n"
-"              Options  and their parameters must be specified on the same line\n"
+"              Options and their parameters must be specified on the same  line\n"
+"              in the file, separated by whitespace, colon, or the equals sign.\n"
 , stdout);
  fputs(
-"              in the file, separated by whitespace, colon, or the equals sign.\n"
-"              Long  option  names  can  optionally be given in the config file\n"
+"              Long option names can optionally be given  in  the  config  file\n"
 "              without the initial double dashes and if so, the colon or equals\n"
 "              characters can be used as separators. If the option is specified\n"
-"              with one or two dashes, there can be no colon or equals  charac-\n"
+"              with  one or two dashes, there can be no colon or equals charac-\n"
 "              ter between the option and its parameter.\n"
 "\n"
+"              If the parameter contains whitespace (or starts with  :  or  =),\n"
 , stdout);
  fputs(
-"              If  the  parameter  contains whitespace (or starts with : or =),\n"
-"              the parameter must be  enclosed  within  quotes.  Within  double\n"
-"              quotes,  the  following  escape sequences are available: \\\\, \\\",\n"
+"              the  parameter  must  be  enclosed  within quotes. Within double\n"
+"              quotes, the following escape sequences are  available:  \\\\,  \\\",\n"
 "              \\t, \\n, \\r and \\v. A backslash preceding any other letter is ig-\n"
 "              nored.\n"
 "\n"
-"              If  the  first  column  of a config line is a '#' character, the\n"
+"              If the first column of a config line is  a  '#'  character,  the\n"
 "              rest of the line will be treated as a comment.\n"
 "\n"
+"              Only write one option per physical line in the config file.\n"
+"\n"
 , stdout);
  fputs(
-"              Only write one option per physical line in the config file.\n"
-"\n"
-"              Specify the filename to -K, --config as '-' to  make  curl  read\n"
+"              Specify  the  filename  to -K, --config as '-' to make curl read\n"
 "              the file from stdin.\n"
 "\n"
-"              Note  that  to  be able to specify a URL in the config file, you\n"
-"              need to specify it using the --url option,  and  not  by  simply\n"
-"              writing  the  URL  on its own line. So, it could look similar to\n"
+"              Note that to be able to specify a URL in the  config  file,  you\n"
+"              need  to  specify  it  using the --url option, and not by simply\n"
+"              writing the URL on its own line. So, it could  look  similar  to\n"
 "              this:\n"
 "\n"
 "              url = \"https://curl.se/docs/\"\n"
 "\n"
+"              When  curl  is invoked, it (unless -q, --disable is used) checks\n"
 , stdout);
  fputs(
-"              When curl is invoked, it (unless -q, --disable is  used)  checks\n"
-"              for a default config file and uses it if found. The default con-\n"
-"              fig file is checked for in the following places in this order:\n"
+"              for a default config file and uses it if found, even  when  this\n"
+"              option  is  used.  The default config file is checked for in the\n"
+"              following places in this order:\n"
 "\n"
 "              1) Use the CURL_HOME environment variable if set\n"
 "\n"
@@ -570,13 +614,13 @@
 "\n"
 "              3) Use the HOME environment variable if set\n"
 "\n"
+"              4) Non-windows: use getpwuid to find the home directory\n"
 , stdout);
  fputs(
-"              4) Non-windows: use getpwuid to find the home directory\n"
 "\n"
 "              5) Windows: use APPDATA if set\n"
 "\n"
-"              6) Windows: use \"USERPROFILE0lication Data\" if set\n"
+"              6) Windows: use \"USERPROFILE\\Application Data\" if set\n"
 "\n"
 "              7)  On  windows, if there is no .curlrc file in the home dir, it\n"
 "              checks for one in the same dir the curl executable is placed. On\n"
@@ -584,10 +628,10 @@
 "              determined home dir.\n"
 "\n"
 "              # --- Example file ---\n"
-, stdout);
- fputs(
 "              # this is a comment\n"
 "              url = \"example.com\"\n"
+, stdout);
+ fputs(
 "              output = \"curlhere.html\"\n"
 "              user-agent = \"superagent/1.0\"\n"
 "\n"
@@ -600,166 +644,202 @@
 "              This option can be used multiple times to load  multiple  config\n"
 "              files.\n"
 "\n"
+"              Example:\n"
+"               curl --config file.txt https://example.com\n"
+"\n"
 , stdout);
  fputs(
-"       --connect-timeout <seconds>\n"
+"       --connect-timeout <fractional seconds>\n"
 "              Maximum  time  in  seconds  that  you allow curl's connection to\n"
 "              take.  This only limits the connection phase, so  if  curl  con-\n"
 "              nects  within the given period it will continue - if not it will\n"
 "              exit.  Since version 7.32.0, this option accepts decimal values.\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              See also -m, --max-time.\n"
-"\n"
+"              Examples:\n"
 , stdout);
  fputs(
+"               curl --connect-timeout 20 https://example.com\n"
+"               curl --connect-timeout 3.14 https://example.com\n"
+"\n"
+"              See also -m, --max-time.\n"
+"\n"
 "       --connect-to <HOST1:PORT1:HOST2:PORT2>\n"
 "\n"
 "              For  a  request  to  the  given  HOST1:PORT1  pair,  connect  to\n"
 "              HOST2:PORT2 instead.  This option is suitable to direct requests\n"
 "              at a specific server, e.g. at a specific cluster node in a clus-\n"
-"              ter  of  servers. This option is only used to establish the net-\n"
-"              work connection. It does NOT affect the  hostname/port  that  is\n"
 , stdout);
  fputs(
+"              ter  of  servers. This option is only used to establish the net-\n"
+"              work connection. It does NOT affect the  hostname/port  that  is\n"
 "              used for TLS/SSL (e.g. SNI, certificate verification) or for the\n"
 "              application protocols. \"HOST1\" and  \"PORT1\"  may  be  the  empty\n"
 "              string, meaning \"any host/port\". \"HOST2\" and \"PORT2\" may also be\n"
 "              the  empty  string,  meaning   \"use   the   request's   original\n"
 "              host/port\".\n"
-"\n"
-"              A \"host\" specified to this option is compared as a string, so it\n"
 , stdout);
  fputs(
+"\n"
+"              A \"host\" specified to this option is compared as a string, so it\n"
 "              needs to match the name used in request URL. It  can  be  either\n"
 "              numerical such as \"127.0.0.1\" or the full host name such as \"ex-\n"
 "              ample.org\".\n"
 "\n"
 "              This option can be used many times to add many connect rules.\n"
 "\n"
+"              Example:\n"
+"               curl --connect-to example.com:443:example.net:8443 https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              See also --resolve and -H, --header. Added in 7.49.0.\n"
 "\n"
 "       -C, --continue-at <offset>\n"
 "              Continue/Resume a previous file transfer at  the  given  offset.\n"
-, stdout);
- fputs(
 "              The  given  offset  is  the  exact  number of bytes that will be\n"
 "              skipped, counting from the beginning of the source  file  before\n"
 "              it is transferred to the destination.  If used with uploads, the\n"
 "              FTP server command SIZE will not be used by curl.\n"
 "\n"
+, stdout);
+ fputs(
 "              Use \"-C -\" to tell curl to automatically find out  where/how  to\n"
 "              resume  the  transfer. It then uses the given output/input files\n"
 "              to figure that out.\n"
 "\n"
-, stdout);
- fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl -C - https://example.com\n"
+"               curl -C 400 https://example.com\n"
+"\n"
 "              See also -r, --range.\n"
 "\n"
 "       -c, --cookie-jar <filename>\n"
+, stdout);
+ fputs(
 "              (HTTP) Specify to which file you want curl to write all  cookies\n"
 "              after  a  completed  operation. Curl writes all cookies from its\n"
 "              in-memory cookie storage to the given file at the end of  opera-\n"
 "              tions.  If  no  cookies  are known, no data will be written. The\n"
-, stdout);
- fputs(
 "              file will be written using the Netscape cookie file  format.  If\n"
 "              you set the file name to a single dash, \"-\", the cookies will be\n"
+, stdout);
+ fputs(
 "              written to stdout.\n"
 "\n"
 "              This command line option will activate the  cookie  engine  that\n"
 "              makes curl record and use cookies. Another way to activate it is\n"
 "              to use the -b, --cookie option.\n"
 "\n"
-"              If the cookie jar can't be created or written to, the whole curl\n"
+"              If the cookie jar cannot be created or  written  to,  the  whole\n"
+"              curl  operation  will  not fail or even report an error clearly.\n"
+"              Using -v, --verbose will get a warning displayed,  but  that  is\n"
 , stdout);
  fputs(
-"              operation  won't fail or even report an error clearly. Using -v,\n"
-"              --verbose will get a warning displayed, but  that  is  the  only\n"
-"              visible feedback you get about this possibly lethal situation.\n"
+"              the  only  visible  feedback  you get about this possibly lethal\n"
+"              situation.\n"
 "\n"
-"              If  this  option  is used several times, the last specified file\n"
+"              If this option is used several times, the  last  specified  file\n"
 "              name will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl -c store-here.txt https://example.com\n"
+"               curl -c store-here.txt -b read-these https://example.com\n"
+"\n"
 "       -b, --cookie <data|filename>\n"
 "              (HTTP) Pass the data to the HTTP server in the Cookie header. It\n"
 , stdout);
  fputs(
-"              is  supposedly the data previously received from the server in a\n"
-"              \"Set-Cookie:\"  line.   The  data  should  be   in   the   format\n"
+"              is supposedly the data previously received from the server in  a\n"
+"              \"Set-Cookie:\"   line.    The   data  should  be  in  the  format\n"
 "              \"NAME1=VALUE1; NAME2=VALUE2\".\n"
 "\n"
-"              If  no '=' symbol is used in the argument, it is instead treated\n"
+"              If no '=' symbol is used in the argument, it is instead  treated\n"
 "              as a filename to read previously stored cookie from. This option\n"
 "              also activates the cookie engine which will make curl record in-\n"
 , stdout);
  fputs(
-"              coming cookies, which may be handy if you're using this in  com-\n"
-"              bination  with  the  -L,  --location  option  or do multiple URL\n"
-"              transfers on the same invoke. If the file name is exactly a  mi-\n"
+"              coming cookies, which may be handy if you are using this in com-\n"
+"              bination with the -L,  --location  option  or  do  multiple  URL\n"
+"              transfers  on the same invoke. If the file name is exactly a mi-\n"
 "              nus (\"-\"), curl will instead read the contents from stdin.\n"
 "\n"
 "              The file format of the file to read cookies from should be plain\n"
-"              HTTP headers (Set-Cookie style) or the  Netscape/Mozilla  cookie\n"
+"              HTTP  headers  (Set-Cookie style) or the Netscape/Mozilla cookie\n"
 "              file format.\n"
 "\n"
 , stdout);
  fputs(
-"              The  file  specified with -b, --cookie is only used as input. No\n"
-"              cookies will be written to the file. To store cookies,  use  the\n"
+"              The file specified with -b, --cookie is only used as  input.  No\n"
+"              cookies  will  be written to the file. To store cookies, use the\n"
 "              -c, --cookie-jar option.\n"
 "\n"
-"              If you use the Set-Cookie file format and don't specify a domain\n"
-"              then the cookie is not sent since the domain will  never  match.\n"
-"              To  address  this,  set  a domain in Set-Cookie line (doing that\n"
+"              If you use the Set-Cookie file format and do not specify  a  do-\n"
+"              main  then  the  cookie  is not sent since the domain will never\n"
+"              match. To address this, set a domain in Set-Cookie  line  (doing\n"
 , stdout);
  fputs(
-"              will include sub-domains) or preferably: use the  Netscape  for-\n"
-"              mat.\n"
+"              that  will  include sub-domains) or preferably: use the Netscape\n"
+"              format.\n"
 "\n"
 "              This option can be used multiple times.\n"
 "\n"
-"              Users very often want to both read cookies from a file and write\n"
-"              updated cookies back to a file, so using both -b,  --cookie  and\n"
-"              -c, --cookie-jar in the same command line is common.\n"
+"              Users often want to both read cookies from a file and write  up-\n"
+"              dated cookies back to a file, so using both -b, --cookie and -c,\n"
+"              --cookie-jar in the same command line is common.\n"
+"\n"
+"              Examples:\n"
+"               curl -b cookiefile https://example.com\n"
+, stdout);
+ fputs(
+"               curl -b cookiefile -c cookiefile https://example.com\n"
 "\n"
 "       --create-dirs\n"
 "              When used in conjunction with the -o, --output option, curl will\n"
+"              create  the  necessary local directory hierarchy as needed. This\n"
+"              option creates the directories mentioned with the  -o,  --output\n"
+"              option,  nothing  else. If the --output file name uses no direc-\n"
+"              tory, or if the directories it mentions already exist, no direc-\n"
 , stdout);
  fputs(
-"              create the necessary local directory hierarchy as  needed.  This\n"
-"              option  creates  the directories mentioned with the -o, --output\n"
-"              option, nothing else. If the --output file name uses  no  direc-\n"
-"              tory, or if the directories it mentions already exist, no direc-\n"
 "              tories will be created.\n"
 "\n"
 "              Created dirs are made with mode 0750 on unix style file systems.\n"
-, stdout);
- fputs(
-"              To create remote directories when using FTP or SFTP, try  --ftp-\n"
+"              To  create remote directories when using FTP or SFTP, try --ftp-\n"
 "              create-dirs.\n"
 "\n"
+"              Example:\n"
+"               curl --create-dirs --output local/dir/file https://example.com\n"
+"\n"
 "       --create-file-mode <mode>\n"
 "              (SFTP SCP FILE) When curl is used to create files remotely using\n"
-"              one of the supported protocols, this option allows the  user  to\n"
+, stdout);
+ fputs(
+"              one  of  the supported protocols, this option allows the user to\n"
 "              set which 'mode' to set on the file at creation time, instead of\n"
 "              the default 0644.\n"
 "\n"
 "              This option takes an octal number as argument.\n"
 "\n"
-, stdout);
- fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --create-file-mode 0777 -T localfile sftp://example.com/new\n"
+"\n"
 "              See also --ftp-create-dirs. Added in 7.75.0.\n"
 "\n"
-"       --crlf (FTP SMTP)  Convert  LF  to  CRLF  in  upload.  Useful  for  MVS\n"
+, stdout);
+ fputs(
+"       --crlf (FTP  SMTP)  Convert  LF  to  CRLF  in  upload.  Useful  for MVS\n"
 "              (OS/390).\n"
 "\n"
 "              (SMTP added in 7.40.0)\n"
 "\n"
+"              Example:\n"
+"               curl --crlf -T file ftp://example.com/\n"
+"\n"
 "       --crlfile <file>\n"
 "              (TLS) Provide a file using PEM format with a Certificate Revoca-\n"
 "              tion List that may specify peer certificates that are to be con-\n"
@@ -769,149 +849,179 @@
  fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              Added in 7.19.7.\n"
+"              Example:\n"
+"               curl --crlfile rejects.txt https://example.com\n"
 "\n"
 "       --curves <algorithm list>\n"
-"              (TLS)  Tells  curl  to request specific curves to use during SSL\n"
-"              session establishment according to RFC 8422, 5.1.  Multiple  al-\n"
-"              gorithms  can  be  provided  by  separating  them with \":\" (e.g.\n"
-"              \"X25519:P-521\").  The parameter is available identically in  the\n"
+"              (TLS) Tells curl to request specific curves to  use  during  SSL\n"
+"              session  establishment according to RFC 8422, 5.1.  Multiple al-\n"
+"              gorithms can be provided  by  separating  them  with  \":\"  (e.g.\n"
 , stdout);
  fputs(
+"              \"X25519:P-521\").   The parameter is available identically in the\n"
 "              \"openssl s_client/s_server\" utilities.\n"
 "\n"
-"              --curves  allows  a OpenSSL powered curl to make SSL-connections\n"
-"              with exactly the (EC) curve requested by  the  client,  avoiding\n"
+"              --curves allows a OpenSSL powered curl to  make  SSL-connections\n"
+"              with  exactly  the  (EC) curve requested by the client, avoiding\n"
 "              intransparent client/server negotiations.\n"
 "\n"
-"              If  this  option  is  set,  the  default  curves list built into\n"
+"              If this option is  set,  the  default  curves  list  built  into\n"
 "              openssl will be ignored.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --curves X25519 https://example.com\n"
+"\n"
 "              Added in 7.73.0.\n"
 "\n"
 "       --data-ascii <data>\n"
-, stdout);
- fputs(
 "              (HTTP) This is just an alias for -d, --data.\n"
 "\n"
+"              Example:\n"
+"               curl --data-ascii @file https://example.com\n"
+"\n"
 "       --data-binary <data>\n"
-"              (HTTP) This posts data exactly as specified with no  extra  pro-\n"
+"              (HTTP)  This  posts data exactly as specified with no extra pro-\n"
 "              cessing whatsoever.\n"
 "\n"
-"              If  you  start  the data with the letter @, the rest should be a\n"
-"              filename.  Data is posted in a  similar  manner  as  -d,  --data\n"
-"              does,  except  that  newlines and carriage returns are preserved\n"
+"              If you start the data with the letter @, the rest  should  be  a\n"
+, stdout);
+ fputs(
+"              filename.   Data  is  posted  in  a similar manner as -d, --data\n"
+"              does, except that newlines and carriage  returns  are  preserved\n"
 "              and conversions are never done.\n"
 "\n"
+"              Like  -d,  --data the default content-type sent to the server is\n"
+"              application/x-www-form-urlencoded. If you want the  data  to  be\n"
+"              treated as arbitrary binary data by the server then set the con-\n"
 , stdout);
  fputs(
-"              Like -d, --data the default content-type sent to the  server  is\n"
-"              application/x-www-form-urlencoded.  If  you  want the data to be\n"
-"              treated as arbitrary binary data by the server then set the con-\n"
-"              tent-type  to octet-stream: -H \"Content-Type: application/octet-\n"
+"              tent-type to octet-stream: -H \"Content-Type:  application/octet-\n"
 "              stream\".\n"
 "\n"
-"              If this option is used several times,  the  ones  following  the\n"
+"              If  this  option  is  used several times, the ones following the\n"
 "              first will append data as described in -d, --data.\n"
 "\n"
+"              Example:\n"
+"               curl --data-binary @filename https://example.com\n"
+"\n"
+"       --data-raw <data>\n"
+"              (HTTP) This posts data similarly to -d, --data but  without  the\n"
+"              special interpretation of the @ character.\n"
+"\n"
 , stdout);
  fputs(
-"       --data-raw <data>\n"
-"              (HTTP)  This  posts data similarly to -d, --data but without the\n"
-"              special interpretation of the @ character.\n"
+"              Examples:\n"
+"               curl --data-raw \"hello\" https://example.com\n"
+"               curl --data-raw \"@at@at@\" https://example.com\n"
 "\n"
 "              See also -d, --data. Added in 7.43.0.\n"
 "\n"
 "       --data-urlencode <data>\n"
-"              (HTTP) This posts data, similar to the other -d, --data  options\n"
+"              (HTTP)  This posts data, similar to the other -d, --data options\n"
 "              with the exception that this performs URL-encoding.\n"
 "\n"
-"              To  be  CGI-compliant,  the <data> part should begin with a name\n"
+"              To be CGI-compliant, the <data> part should begin  with  a  name\n"
 , stdout);
  fputs(
-"              followed by a separator and a content specification. The  <data>\n"
+"              followed  by a separator and a content specification. The <data>\n"
 "              part can be passed to curl using one of the following syntaxes:\n"
 "\n"
 "              content\n"
-"                     This  will make curl URL-encode the content and pass that\n"
-"                     on. Just be careful so that the content  doesn't  contain\n"
-"                     any  =  or  @  symbols, as that will then make the syntax\n"
+"                     This will make curl URL-encode the content and pass  that\n"
+"                     on.  Just be careful so that the content does not contain\n"
+"                     any = or @ symbols, as that will  then  make  the  syntax\n"
 "                     match one of the other cases below!\n"
 "\n"
 "              =content\n"
 , stdout);
  fputs(
-"                     This will make curl URL-encode the content and pass  that\n"
+"                     This  will make curl URL-encode the content and pass that\n"
 "                     on. The preceding = symbol is not included in the data.\n"
 "\n"
 "              name=content\n"
-"                     This  will make curl URL-encode the content part and pass\n"
-"                     that on. Note that the name part is expected to  be  URL-\n"
+"                     This will make curl URL-encode the content part and  pass\n"
+"                     that  on.  Note that the name part is expected to be URL-\n"
 "                     encoded already.\n"
 "\n"
 "              @filename\n"
-"                     This  will  make  curl load data from the given file (in-\n"
+"                     This will make curl load data from the  given  file  (in-\n"
 , stdout);
  fputs(
-"                     cluding any newlines), URL-encode that data and  pass  it\n"
+"                     cluding  any  newlines), URL-encode that data and pass it\n"
 "                     on in the POST.\n"
 "\n"
 "              name@filename\n"
-"                     This  will  make  curl load data from the given file (in-\n"
-"                     cluding any newlines), URL-encode that data and  pass  it\n"
-"                     on  in  the  POST.  The  name part gets an equal sign ap-\n"
-"                     pended, resulting in  name=urlencoded-file-content.  Note\n"
+"                     This will make curl load data from the  given  file  (in-\n"
+"                     cluding  any  newlines), URL-encode that data and pass it\n"
+"                     on in the POST. The name part  gets  an  equal  sign  ap-\n"
+"                     pended,  resulting  in name=urlencoded-file-content. Note\n"
 , stdout);
  fputs(
 "                     that the name is expected to be URL-encoded already.\n"
-"       See also -d, --data and --data-raw. Added in 7.18.0.\n"
+"\n"
+"       Examples:\n"
+"        curl --data-urlencode name=val https://example.com\n"
+"        curl --data-urlencode =encodethis https://example.com\n"
+"        curl --data-urlencode name@file https://example.com\n"
+"        curl --data-urlencode @fileonly https://example.com\n"
+"\n"
+"       See also -d, --data and --data-raw.\n"
 "\n"
 "       -d, --data <data>\n"
-"              (HTTP  MQTT)  Sends  the specified data in a POST request to the\n"
-"              HTTP server, in the same way that a browser does when a user has\n"
-"              filled  in an HTML form and presses the submit button. This will\n"
-"              cause curl to pass the data to the server using the content-type\n"
+"              (HTTP MQTT) Sends the specified data in a POST  request  to  the\n"
 , stdout);
  fputs(
+"              HTTP server, in the same way that a browser does when a user has\n"
+"              filled in an HTML form and presses the submit button. This  will\n"
+"              cause curl to pass the data to the server using the content-type\n"
 "              application/x-www-form-urlencoded.  Compare to -F, --form.\n"
 "\n"
 "              --data-raw is almost the same but does not have a special inter-\n"
-"              pretation of the @ character. To post data  purely  binary,  you\n"
-"              should  instead use the --data-binary option.  To URL-encode the\n"
+"              pretation  of  the  @ character. To post data purely binary, you\n"
+, stdout);
+ fputs(
+"              should instead use the --data-binary option.  To URL-encode  the\n"
 "              value of a form field you may use --data-urlencode.\n"
 "\n"
-"              If any of these options is used more than once on the same  com-\n"
+"              If  any of these options is used more than once on the same com-\n"
+"              mand line, the data pieces specified  will  be  merged  together\n"
+"              with  a  separating  &-symbol.  Thus,  using  '-d name=daniel -d\n"
+"              skill=lousy'  would  generate  a  post  chunk  that  looks  like\n"
 , stdout);
  fputs(
-"              mand  line,  the  data  pieces specified will be merged together\n"
-"              with a separating  &-symbol.  Thus,  using  '-d  name=daniel  -d\n"
-"              skill=lousy'  would  generate  a  post  chunk  that  looks  like\n"
 "              'name=daniel&skill=lousy'.\n"
 "\n"
-"              If you start the data with the letter @, the rest  should  be  a\n"
-"              file  name  to read the data from, or - if you want curl to read\n"
+"              If  you  start  the data with the letter @, the rest should be a\n"
+"              file name to read the data from, or - if you want curl  to  read\n"
+"              the  data  from  stdin.  Posting data from a file named 'foobar'\n"
+"              would thus be done with -d, --data @foobar. When -d,  --data  is\n"
+"              told  to  read  from a file like that, carriage returns and new-\n"
 , stdout);
  fputs(
-"              the data from stdin. Posting data from  a  file  named  'foobar'\n"
-"              would  thus  be done with -d, --data @foobar. When -d, --data is\n"
-"              told to read from a file like that, carriage  returns  and  new-\n"
-"              lines will be stripped out. If you don't want the @ character to\n"
-"              have a special interpretation use --data-raw instead.\n"
+"              lines will be stripped out. If you do not want the  @  character\n"
+"              to have a special interpretation use --data-raw instead.\n"
 "\n"
-"              See also --data-binary, --data-urlencode  and  --data-raw.  This\n"
+"              Examples:\n"
+"               curl -d \"name=curl\" https://example.com\n"
+"               curl -d \"name=curl\" -d \"tool=cmdline\" https://example.com\n"
+"               curl -d @filename https://example.com\n"
+"\n"
+"              See  also  --data-binary,  --data-urlencode and --data-raw. This\n"
 , stdout);
  fputs(
-"              option  overrides  -F,  --form  and -I, --head and -T, --upload-\n"
+"              option overrides -F, --form and -I,  --head  and  -T,  --upload-\n"
 "              file.\n"
 "\n"
 "       --delegation <LEVEL>\n"
-"              (GSS/kerberos) Set LEVEL to tell the server what it  is  allowed\n"
+"              (GSS/kerberos)  Set  LEVEL to tell the server what it is allowed\n"
 "              to delegate when it comes to user credentials.\n"
 "\n"
-"              none   Don't allow any delegation.\n"
+"              none   Do not allow any delegation.\n"
 "\n"
-"              policy Delegates  if  and only if the OK-AS-DELEGATE flag is set\n"
-"                     in the Kerberos service ticket,  which  is  a  matter  of\n"
+"              policy Delegates if and only if the OK-AS-DELEGATE flag  is  set\n"
+"                     in  the  Kerberos  service  ticket,  which is a matter of\n"
 , stdout);
  fputs(
 "                     realm policy.\n"
@@ -920,105 +1030,139 @@
 "\n"
 "       If this option is used several times, the last one will be used.\n"
 "\n"
-"       --digest\n"
-"              (HTTP)  Enables HTTP Digest authentication. This is an authenti-\n"
-"              cation scheme that prevents the password from  being  sent  over\n"
-"              the  wire in clear text. Use this in combination with the normal\n"
-"              -u, --user option to set user name and password.\n"
+"       Example:\n"
+"        curl --delegation \"none\" https://example.com\n"
 "\n"
+"       --digest\n"
+"              (HTTP) Enables HTTP Digest authentication. This is an  authenti-\n"
+"              cation  scheme  that  prevents the password from being sent over\n"
+"              the wire in clear text. Use this in combination with the  normal\n"
 , stdout);
  fputs(
-"              If this option is used several times,  only  the  first  one  is\n"
+"              -u, --user option to set user name and password.\n"
+"\n"
+"              If  this  option  is  used  several times, only the first one is\n"
 "              used.\n"
 "\n"
-"              See  also  -u, --user, --proxy-digest and --anyauth. This option\n"
+"              Example:\n"
+"               curl -u name:password --digest https://example.com\n"
+"\n"
+"              See also -u, --user, --proxy-digest and --anyauth.  This  option\n"
 "              overrides --basic and --ntlm and --negotiate.\n"
 "\n"
 "       --disable-eprt\n"
 "              (FTP) Tell curl to disable the use of the EPRT and LPRT commands\n"
-"              when doing active FTP transfers. Curl will normally always first\n"
-"              attempt to use EPRT, then LPRT before using PORT, but with  this\n"
 , stdout);
  fputs(
-"              option,  it  will  use PORT right away. EPRT and LPRT are exten-\n"
-"              sions to the original FTP protocol, and  may  not  work  on  all\n"
+"              when doing active FTP transfers. Curl will normally always first\n"
+"              attempt  to use EPRT, then LPRT before using PORT, but with this\n"
+"              option, it will use PORT right away. EPRT and  LPRT  are  exten-\n"
+"              sions  to  the  original  FTP  protocol, and may not work on all\n"
 "              servers, but they enable more functionality in a better way than\n"
 "              the traditional PORT command.\n"
 "\n"
+, stdout);
+ fputs(
 "              --eprt can be used to explicitly enable EPRT again and --no-eprt\n"
 "              is an alias for --disable-eprt.\n"
 "\n"
-"              If  the  server is accessed using IPv6, this option will have no\n"
-, stdout);
- fputs(
+"              If the server is accessed using IPv6, this option will  have  no\n"
 "              effect as EPRT is necessary then.\n"
 "\n"
-"              Disabling EPRT only changes the active behavior. If you want  to\n"
-"              switch  to  passive  mode  you need to not use -P, --ftp-port or\n"
+"              Disabling  EPRT only changes the active behavior. If you want to\n"
+"              switch to passive mode you need to not  use  -P,  --ftp-port  or\n"
 "              force it with --ftp-pasv.\n"
 "\n"
-"       --disable-epsv\n"
-"              (FTP) Tell curl to disable the use of the EPSV command when  do-\n"
-"              ing  passive  FTP transfers. Curl will normally always first at-\n"
+"              Example:\n"
 , stdout);
  fputs(
+"               curl --disable-eprt ftp://example.com/\n"
+"\n"
+"       --disable-epsv\n"
+"              (FTP)  Tell curl to disable the use of the EPSV command when do-\n"
+"              ing passive FTP transfers. Curl will normally always  first  at-\n"
 "              tempt to use EPSV before PASV, but with this option, it will not\n"
 "              try using EPSV.\n"
 "\n"
 "              --epsv can be used to explicitly enable EPSV again and --no-epsv\n"
 "              is an alias for --disable-epsv.\n"
 "\n"
-"              If the server is an IPv6 host, this option will have  no  effect\n"
+, stdout);
+ fputs(
+"              If  the  server is an IPv6 host, this option will have no effect\n"
 "              as EPSV is necessary then.\n"
 "\n"
 "              Disabling EPSV only changes the passive behavior. If you want to\n"
-, stdout);
- fputs(
 "              switch to active mode you need to use -P, --ftp-port.\n"
 "\n"
+"              Example:\n"
+"               curl --disable-epsv ftp://example.com/\n"
+"\n"
 "       -q, --disable\n"
-"              If used as the first parameter on the command line,  the  curlrc\n"
-"              config  file will not be read and used. See the -K, --config for\n"
+"              If  used  as the first parameter on the command line, the curlrc\n"
+, stdout);
+ fputs(
+"              config file will not be read and used. See the -K, --config  for\n"
 "              details on the default config file search path.\n"
 "\n"
+"              Example:\n"
+"               curl -q https://example.com\n"
+"\n"
 "       --disallow-username-in-url\n"
-"              (HTTP) This tells curl to exit if  passed  a  url  containing  a\n"
-"              username.\n"
+"              (HTTP)  This  tells  curl  to  exit if passed a url containing a\n"
+"              username. This is probably most useful when  the  URL  is  being\n"
+"              provided at run-time or similar.\n"
+"\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --disallow-username-in-url https://example.com\n"
 "\n"
 "              See also --proto. Added in 7.61.0.\n"
 "\n"
-, stdout);
- fputs(
 "       --dns-interface <interface>\n"
 "              (DNS)  Tell  curl  to send outgoing DNS requests through <inter-\n"
 "              face>. This option is a counterpart to --interface  (which  does\n"
 "              not  affect  DNS). The supplied string must be an interface name\n"
 "              (not an address).\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --dns-interface eth0 https://example.com\n"
+"\n"
 "              See also --dns-ipv4-addr  and  --dns-ipv6-addr.  --dns-interface\n"
 "              requires  that  the  underlying  libcurl was built to support c-\n"
 "              ares. Added in 7.33.0.\n"
-, stdout);
- fputs(
 "\n"
 "       --dns-ipv4-addr <address>\n"
 "              (DNS) Tell curl to bind to <ip-address> when making IPv4 DNS re-\n"
 "              quests,  so  that  the DNS requests originate from this address.\n"
+, stdout);
+ fputs(
 "              The argument should be a single IPv4 address.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Example:\n"
+"               curl --dns-ipv4-addr 10.1.2.3 https://example.com\n"
+"\n"
 "              See also --dns-interface  and  --dns-ipv6-addr.  --dns-ipv4-addr\n"
 "              requires  that  the  underlying  libcurl was built to support c-\n"
-, stdout);
- fputs(
 "              ares. Added in 7.33.0.\n"
 "\n"
 "       --dns-ipv6-addr <address>\n"
+, stdout);
+ fputs(
 "              (DNS) Tell curl to bind to <ip-address> when making IPv6 DNS re-\n"
 "              quests,  so  that  the DNS requests originate from this address.\n"
 "              The argument should be a single IPv6 address.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Example:\n"
+"               curl --dns-ipv6-addr 2a04:4e42::561 https://example.com\n"
+"\n"
 "              See also --dns-interface  and  --dns-ipv4-addr.  --dns-ipv6-addr\n"
 , stdout);
  fputs(
@@ -1034,35 +1178,50 @@
 , stdout);
  fputs(
 "              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Example:\n"
+"               curl --dns-servers 192.168.0.1,192.168.0.2 https://example.com\n"
+"\n"
 "              --dns-servers  requires that the underlying libcurl was built to\n"
 "              support c-ares. Added in 7.33.0.\n"
 "\n"
 "       --doh-cert-status\n"
 "              (all) Same as --cert-status but used for DoH (DNS-over-HTTPS).\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --doh-cert-status --doh-url https://doh.example https://example.com\n"
+"\n"
 "              Added in 7.76.0.\n"
 "\n"
 "       --doh-insecure\n"
 "              (all) Same as -k, --insecure but used for DoH (DNS-over-HTTPS).\n"
 "\n"
+"              Example:\n"
+"               curl --doh-insecure --doh-url https://doh.example https://example.com\n"
+"\n"
 "              Added in 7.76.0.\n"
 "\n"
 "       --doh-url <URL>\n"
+"              (all) Specifies which DNS-over-HTTPS (DoH) server to use to  re-\n"
 , stdout);
  fputs(
-"              (all) Specifies which DNS-over-HTTPS (DoH) server to use to  re-\n"
 "              solve  hostnames,  instead  of  using  the default name resolver\n"
 "              mechanism. The URL must be HTTPS.\n"
 "\n"
 "              Some SSL options that you set for your transfer  will  apply  to\n"
 "              DoH  since  the  name  lookups take place over SSL. However, the\n"
 "              certificate verification settings are not inherited and  can  be\n"
-, stdout);
- fputs(
 "              controlled separately via --doh-insecure and --doh-cert-status.\n"
 "\n"
+, stdout);
+ fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --doh-url https://doh.example https://example.com\n"
+"\n"
 "              Added in 7.62.0.\n"
 "\n"
 "       -D, --dump-header <filename>\n"
@@ -1077,60 +1236,80 @@
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --dump-header store.txt https://example.com\n"
+"\n"
 "              See also -o, --output.\n"
 "\n"
 "       --egd-file <file>\n"
 "              (TLS) Specify the path name  to  the  Entropy  Gathering  Daemon\n"
+, stdout);
+ fputs(
 "              socket.  The  socket  is  used to seed the random engine for SSL\n"
 "              connections.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl --egd-file /random/here https://example.com\n"
+"\n"
 "              See also --random-file.\n"
 "\n"
 "       --engine <name>\n"
 "              (TLS) Select the OpenSSL crypto engine to use for cipher  opera-\n"
 "              tions. Use --engine list to print a list of build-time supported\n"
 "              engines. Note that not all (and possibly none)  of  the  engines\n"
+, stdout);
+ fputs(
 "              may be available at run-time.\n"
 "\n"
+"              Example:\n"
+"               curl --engine flavor https://example.com\n"
+"\n"
 "       --etag-compare <file>\n"
 "              (HTTP) This option makes a conditional HTTP request for the spe-\n"
-, stdout);
- fputs(
 "              cific ETag read from the given file by sending a custom If-None-\n"
 "              Match header using the stored ETag.\n"
 "\n"
 "              For  correct results, make sure that the specified file contains\n"
+, stdout);
+ fputs(
 "              only a single line with the  desired  ETag.  An  empty  file  is\n"
 "              parsed as an empty ETag.\n"
 "\n"
 "              Use  the  option  --etag-save  to first save the ETag from a re-\n"
 "              sponse, and then use this option to compare  against  the  saved\n"
-, stdout);
- fputs(
 "              ETag in a subsequent request.\n"
 "\n"
+"              Example:\n"
+"               curl --etag-compare etag.txt https://example.com\n"
+"\n"
 "              Added in 7.68.0.\n"
 "\n"
 "       --etag-save <file>\n"
+, stdout);
+ fputs(
 "              (HTTP)  This option saves an HTTP ETag to the specified file. An\n"
 "              ETag is a caching related header,  usually  returned  in  a  re-\n"
 "              sponse.\n"
 "\n"
 "              If no ETag is sent by the server, an empty file is created.\n"
 "\n"
+"              Example:\n"
+"               curl --etag-save storetag.txt https://example.com\n"
+"\n"
 "              Added in 7.68.0.\n"
 "\n"
 "       --expect100-timeout <seconds>\n"
+"              (HTTP) Maximum time in seconds that you allow curl to wait for a\n"
 , stdout);
  fputs(
-"              (HTTP) Maximum time in seconds that you allow curl to wait for a\n"
 "              100-continue response when curl emits an  Expects:  100-continue\n"
 "              header  in  its  request.  By default curl will wait one second.\n"
 "              This option accepts decimal values! When curl stops waiting,  it\n"
 "              will continue as if the response has been received.\n"
 "\n"
+"              Example:\n"
+"               curl --expect100-timeout 2.5 -T file https://example.com\n"
+"\n"
 "              See also --connect-timeout. Added in 7.47.0.\n"
 "\n"
 "       --fail-early\n"
@@ -1162,51 +1341,65 @@
 "              two options, however note -f, --fail is not global and is there-\n"
 "              fore contained by -:, --next.\n"
 "\n"
+"              Example:\n"
+"               curl --fail-early https://example.com https://two.example\n"
+"\n"
 "              Added in 7.52.0.\n"
 "       --fail-with-body\n"
 "              (HTTP)  Return an error on server errors where the HTTP response\n"
-"              code is 400 or greater). In normal cases  when  an  HTTP  server\n"
-"              fails to deliver a document, it returns an HTML document stating\n"
 , stdout);
  fputs(
+"              code is 400 or greater). In normal cases  when  an  HTTP  server\n"
+"              fails to deliver a document, it returns an HTML document stating\n"
 "              so (which often also describes why and  more).  This  flag  will\n"
 "              still allow curl to output and save that content but also to re-\n"
 "              turn error 22.\n"
 "\n"
 "              This is an alternative option to -f,  --fail  which  makes  curl\n"
+, stdout);
+ fputs(
 "              fail for the same circumstances but without saving the content.\n"
 "\n"
+"              Example:\n"
+"               curl --fail-with-body https://example.com\n"
+"\n"
 "              See also -f, --fail. Added in 7.76.0.\n"
 "\n"
 "       -f, --fail\n"
 "              (HTTP)  Fail  silently (no output at all) on server errors. This\n"
-, stdout);
- fputs(
 "              is mostly done to enable scripts etc to better deal with  failed\n"
 "              attempts. In normal cases when an HTTP server fails to deliver a\n"
+, stdout);
+ fputs(
 "              document, it returns an HTML document stating  so  (which  often\n"
 "              also  describes  why and more). This flag will prevent curl from\n"
 "              outputting that and return error 22.\n"
 "\n"
 "              This method is not fail-safe and there are occasions where  non-\n"
-, stdout);
- fputs(
 "              successful response codes will slip through, especially when au-\n"
 "              thentication is involved (response codes 401 and 407).\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --fail https://example.com\n"
+"\n"
 "              See also --fail-with-body.\n"
 "\n"
 "       --false-start\n"
 "              (TLS) Tells curl to use false start during  the  TLS  handshake.\n"
 "              False  start is a mode where a TLS client will start sending ap-\n"
 "              plication data before verifying the server's  Finished  message,\n"
-, stdout);
- fputs(
 "              thus saving a round trip when performing a full handshake.\n"
 "\n"
+, stdout);
+ fputs(
 "              This  is currently only implemented in the NSS and Secure Trans-\n"
 "              port (on iOS 7.0 or later, or OS X 10.9 or later) backends.\n"
 "\n"
+"              Example:\n"
+"               curl --false-start https://example.com\n"
+"\n"
 "              Added in 7.42.0.\n"
 "\n"
 "       --form-string <name=string>\n"
@@ -1219,12 +1412,15 @@
 "              any possibility that the string value may  accidentally  trigger\n"
 "              the '@' or '<' features of -F, --form.\n"
 "\n"
+"              Example:\n"
+"               curl --form-string \"data\" https://example.com\n"
+"\n"
 "              See also -F, --form.\n"
 "\n"
 "       -F, --form <name=content>\n"
-"              (HTTP  SMTP  IMAP) For HTTP protocol family, this lets curl emu-\n"
 , stdout);
  fputs(
+"              (HTTP  SMTP  IMAP) For HTTP protocol family, this lets curl emu-\n"
 "              late a filled-in form in which a user  has  pressed  the  submit\n"
 "              button.  This  causes  curl  to POST data using the Content-Type\n"
 "              multipart/form-data according to RFC 2388.\n"
@@ -1232,26 +1428,26 @@
 "              For SMTP and IMAP protocols, this is the means to compose a mul-\n"
 "              tipart mail message to transmit.\n"
 "\n"
-"              This  enables  uploading of binary files etc. To force the 'con-\n"
 , stdout);
  fputs(
+"              This  enables  uploading of binary files etc. To force the 'con-\n"
 "              tent' part to be a file, prefix the file name with an @ sign. To\n"
 "              just get the content part from a file, prefix the file name with\n"
 "              the symbol <. The difference between @ and  <  is  then  that  @\n"
 "              makes  a  file  get attached in the post as a file upload, while\n"
 "              the < makes a text field and just get the contents for that text\n"
-"              field from a file.\n"
-"\n"
 , stdout);
  fputs(
+"              field from a file.\n"
+"\n"
 "              Tell  curl to read content from stdin instead of a file by using\n"
 "              - as filename. This goes for both @ and < constructs. When stdin\n"
 "              is used, the contents is buffered in memory first by curl to de-\n"
 "              termine its size and allow a possible resend.  Defining a part's\n"
 "              data from a named non-regular file (such as a named pipe or sim-\n"
-"              ilar) is unfortunately not subject to buffering and will be  ef-\n"
 , stdout);
  fputs(
+"              ilar) is unfortunately not subject to buffering and will be  ef-\n"
 "              fectively  read at transmission time; since the full size is un-\n"
 "              known before the transfer starts, such data is sent as chunks by\n"
 "              HTTP and rejected by IMAP.\n"
@@ -1260,10 +1456,10 @@
 "              name of the form-field to which the file  portrait.jpg  will  be\n"
 "              the input:\n"
 "\n"
-"               curl -F profile=@portrait.jpg https://example.com/upload.cgi\n"
-"\n"
 , stdout);
  fputs(
+"               curl -F profile=@portrait.jpg https://example.com/upload.cgi\n"
+"\n"
 "              Example:  send your name and shoe size in two text fields to the\n"
 "              server:\n"
 "\n"
@@ -1275,9 +1471,9 @@
 "\n"
 "               curl -F \"story=<hugefile.txt\" https://example.com/\n"
 "\n"
-"              You can also  tell  curl  what  Content-Type  to  use  by  using\n"
 , stdout);
  fputs(
+"              You can also  tell  curl  what  Content-Type  to  use  by  using\n"
 "              'type=', in a manner similar to:\n"
 "\n"
 "               curl -F \"web=@index.html;type=text/html\" example.com\n"
@@ -1291,9 +1487,9 @@
 "\n"
 "               curl -F \"file=@localfile;filename=nameinpost\" example.com\n"
 "\n"
-"              If filename/path contains ',' or ';', it must be quoted by  dou-\n"
 , stdout);
  fputs(
+"              If filename/path contains ',' or ';', it must be quoted by  dou-\n"
 "              ble-quotes like:\n"
 "\n"
 "               curl  -F \"file=@\\\"local,file\\\";filename=\\\"name;in;post\\\"\" exam-\n"
@@ -1306,10 +1502,10 @@
 "\n"
 "              Note  that  if  a  filename/path is quoted by double-quotes, any\n"
 "              double-quote or backslash within the filename must be escaped by\n"
-"              backslash.\n"
-"\n"
 , stdout);
  fputs(
+"              backslash.\n"
+"\n"
 "              Quoting  must  also  be  applied to non-file data if it contains\n"
 "              semicolons, leading/trailing spaces or leading double quotes:\n"
 "\n"
@@ -1386,53 +1582,64 @@
 "\n"
 "              This option can be used multiple times.\n"
 "\n"
+"              Example:\n"
+"               curl --form \"name=curl\" --form \"file=@loadthis\" https://example.com\n"
+"\n"
 "              This  option  overrides  -d, --data and -I, --head and -T, --up-\n"
 "              load-file.\n"
 "\n"
 "       --ftp-account <data>\n"
-"              (FTP) When an FTP server asks for \"account data\" after user name\n"
-"              and  password has been provided, this data is sent off using the\n"
 , stdout);
  fputs(
+"              (FTP) When an FTP server asks for \"account data\" after user name\n"
+"              and  password has been provided, this data is sent off using the\n"
 "              ACCT command.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              Added in 7.13.0.\n"
+"              Example:\n"
+"               curl --ftp-account \"mr.robot\" ftp://example.com/\n"
 "\n"
 "       --ftp-alternative-to-user <command>\n"
 "              (FTP) If authenticating with the USER and PASS  commands  fails,\n"
+, stdout);
+ fputs(
 "              send  this  command.   When  connecting  to  Tumbleweed's Secure\n"
 "              Transport server over FTPS using  a  client  certificate,  using\n"
 "              \"SITE  AUTH\"  will tell the server to retrieve the username from\n"
-, stdout);
- fputs(
 "              the certificate.\n"
-"              Added in 7.15.5.\n"
+"\n"
+"              Example:\n"
+"               curl --ftp-alternative-to-user \"U53r\" ftp://example.com\n"
 "\n"
 "       --ftp-create-dirs\n"
 "              (FTP SFTP) When an FTP or SFTP URL/operation uses  a  path  that\n"
-"              doesn't  currently exist on the server, the standard behavior of\n"
+, stdout);
+ fputs(
+"              does not currently exist on the server, the standard behavior of\n"
 "              curl is to fail. Using this option, curl will instead attempt to\n"
 "              create missing directories.\n"
 "\n"
+"              Example:\n"
+"               curl --ftp-create-dirs -T file ftp://example.com/remote/path/file\n"
+"\n"
 "              See also --create-dirs.\n"
 "\n"
 "       --ftp-method <method>\n"
+"              (FTP)  Control what method curl should use to reach a file on an\n"
 , stdout);
  fputs(
-"              (FTP)  Control what method curl should use to reach a file on an\n"
 "              FTP(S) server. The method argument should be one of the  follow-\n"
 "              ing alternatives:\n"
 "\n"
 "              multicwd\n"
 "                     curl  does  a  single CWD operation for each path part in\n"
-"                     the given URL. For deep hierarchies this means very  many\n"
-"                     commands.  This  is  how RFC 1738 says it should be done.\n"
+"                     the given URL. For deep hierarchies this means many  com-\n"
+"                     mands.  This is how RFC 1738 says it should be done. This\n"
+"                     is the default but the slowest behavior.\n"
+"\n"
 , stdout);
  fputs(
-"                     This is the default but the slowest behavior.\n"
-"\n"
 "              nocwd  curl does no CWD at all. curl will do  SIZE,  RETR,  STOR\n"
 "                     etc and give a full path to the server for all these com-\n"
 "                     mands. This is the fastest behavior.\n"
@@ -1440,44 +1647,50 @@
 "              singlecwd\n"
 "                     curl does one CWD with the full target directory and then\n"
 "                     operates  on  the  file  \"normally\" (like in the multicwd\n"
+"                     case). This is somewhat  more  standards  compliant  than\n"
 , stdout);
  fputs(
-"                     case). This is somewhat  more  standards  compliant  than\n"
 "                     'nocwd' but without the full penalty of 'multicwd'.\n"
 "\n"
-"       Added in 7.15.1.\n"
+"       Examples:\n"
+"        curl --ftp-method multicwd ftp://example.com/dir1/dir2/file\n"
+"        curl --ftp-method nocwd ftp://example.com/dir1/dir2/file\n"
+"        curl --ftp-method singlecwd ftp://example.com/dir1/dir2/file\n"
 "\n"
 "       --ftp-pasv\n"
 "              (FTP)  Use  passive mode for the data connection. Passive is the\n"
 "              internal default behavior, but using this option can be used  to\n"
+, stdout);
+ fputs(
 "              override a previous -P, --ftp-port option.\n"
 "\n"
 "              If  this  option  is  used  several times, only the first one is\n"
-, stdout);
- fputs(
-"              used. Undoing an enforced passive really isn't  doable  but  you\n"
+"              used. Undoing an enforced passive really is not doable  but  you\n"
 "              must then instead enforce the correct -P, --ftp-port again.\n"
 "\n"
 "              Passive mode means that curl will try the EPSV command first and\n"
 "              then PASV, unless --disable-epsv is used.\n"
-"              See also --disable-epsv. Added in 7.11.0.\n"
 "\n"
-"       -P, --ftp-port <address>\n"
-"              (FTP) Reverses the default initiator/listener  roles  when  con-\n"
+"              Example:\n"
+"               curl --ftp-pasv ftp://example.com/\n"
 , stdout);
  fputs(
+"\n"
+"              See also --disable-epsv.\n"
+"       -P, --ftp-port <address>\n"
+"              (FTP) Reverses the default initiator/listener  roles  when  con-\n"
 "              necting  with  FTP. This option makes curl use active mode. curl\n"
 "              then tells the server to connect back to the client's  specified\n"
 "              address and port, while passive mode asks the server to setup an\n"
 "              IP address and port for it to connect to.  <address>  should  be\n"
 "              one of:\n"
 "\n"
+, stdout);
+ fputs(
 "              interface\n"
 "                     e.g.  \"eth0\"  to specify which interface's IP address you\n"
 "                     want to use (Unix only)\n"
 "\n"
-, stdout);
- fputs(
 "              IP address\n"
 "                     e.g. \"192.168.10.1\" to specify the exact IP address\n"
 "\n"
@@ -1487,55 +1700,68 @@
 "              -      make curl pick the same IP address that is  already  used\n"
 "                     for the control connection\n"
 "\n"
-"       If  this  option is used several times, the last one will be used. Dis-\n"
-"       able the use of PORT with --ftp-pasv. Disable the attempt  to  use  the\n"
 , stdout);
  fputs(
+"       If  this  option is used several times, the last one will be used. Dis-\n"
+"       able the use of PORT with --ftp-pasv. Disable the attempt  to  use  the\n"
 "       EPRT  command  instead  of PORT by using --disable-eprt. EPRT is really\n"
 "       PORT++.\n"
 "\n"
-"       Since 7.19.5, you can append \":[start]-[end]\" to the right of  the  ad-\n"
-"       dress,  to tell curl what TCP port range to use. That means you specify\n"
-"       a port range, from a lower to a higher number. A single number works as\n"
-"       well,  but do note that it increases the risk of failure since the port\n"
-"       may not be available.\n"
+"       You can also append \":[start]-[end]\" to the right of  the  address,  to\n"
+"       tell  curl  what  TCP  port range to use. That means you specify a port\n"
+"       range, from a lower to a higher number. A single number works as  well,\n"
+, stdout);
+ fputs(
+"       but  do  note  that it increases the risk of failure since the port may\n"
+"       not be available.\n"
+"\n"
+"       Examples:\n"
+"        curl -P - ftp:/example.com\n"
+"        curl -P eth0 ftp:/example.com\n"
+"        curl -P 192.168.0.2 ftp:/example.com\n"
 "\n"
 "       See also --ftp-pasv and --disable-eprt.\n"
 "\n"
-, stdout);
- fputs(
 "       --ftp-pret\n"
 "              (FTP) Tell curl to send a PRET command before PASV  (and  EPSV).\n"
 "              Certain  FTP  servers,  mainly drftpd, require this non-standard\n"
+, stdout);
+ fputs(
 "              command for directory listings as well as up  and  downloads  in\n"
 "              PASV mode.\n"
 "\n"
-"              Added in 7.20.0.\n"
+"              Example:\n"
+"               curl --ftp-pret ftp://example.com/\n"
 "\n"
 "       --ftp-skip-pasv-ip\n"
 "              (FTP) Tell curl to not use the IP address the server suggests in\n"
 "              its response to curl's PASV command when curl connects the  data\n"
-, stdout);
- fputs(
 "              connection.  Instead curl will re-use the same IP address it al-\n"
 "              ready uses for the control connection.\n"
 "\n"
+, stdout);
+ fputs(
 "              Since curl 7.74.0 this option is enabled by default.\n"
 "\n"
 "              This option has no effect if PORT, EPRT or EPSV is used  instead\n"
 "              of PASV.\n"
+"              Example:\n"
+"               curl --ftp-skip-pasv-ip ftp://example.com/\n"
 "\n"
-"              See also --ftp-pasv. Added in 7.14.2.\n"
+"              See also --ftp-pasv.\n"
 "\n"
 "       --ftp-ssl-ccc-mode <active/passive>\n"
 "              (FTP)  Sets the CCC mode. The passive mode will not initiate the\n"
+"              shutdown, but instead wait for the server to do it, and will not\n"
 , stdout);
  fputs(
-"              shutdown, but instead wait for the server to do it, and will not\n"
 "              reply to the shutdown from the server. The active mode initiates\n"
 "              the shutdown and waits for a reply from the server.\n"
 "\n"
-"              See also --ftp-ssl-ccc. Added in 7.16.2.\n"
+"              Example:\n"
+"               curl --ftp-ssl-ccc-mode active --ftp-ssl-ccc ftps://example.com/\n"
+"\n"
+"              See also --ftp-ssl-ccc.\n"
 "\n"
 "       --ftp-ssl-ccc\n"
 "              (FTP) Use CCC (Clear Command Channel)  Shuts  down  the  SSL/TLS\n"
@@ -1545,50 +1771,63 @@
 "              munication will be unencrypted. This allows NAT routers to  fol-\n"
 "              low the FTP transaction. The default mode is passive.\n"
 "\n"
-"              See also --ssl and --ftp-ssl-ccc-mode. Added in 7.16.1.\n"
+"              Example:\n"
+"               curl --ftp-ssl-ccc ftps://example.com/\n"
+"              See also --ssl and --ftp-ssl-ccc-mode.\n"
 "\n"
 "       --ftp-ssl-control\n"
 "              (FTP)  Require  SSL/TLS  for  the FTP login, clear for transfer.\n"
 "              Allows secure authentication, but non-encrypted  data  transfers\n"
-"              for  efficiency.   Fails the transfer if the server doesn't sup-\n"
 , stdout);
  fputs(
+"              for  efficiency.  Fails the transfer if the server does not sup-\n"
 "              port SSL/TLS.\n"
 "\n"
-"              Added in 7.16.0.\n"
+"              Example:\n"
+"               curl --ftp-ssl-control ftp://example.com\n"
 "\n"
 "       -G, --get\n"
 "              When used, this option will make all  data  specified  with  -d,\n"
 "              --data,  --data-binary or --data-urlencode to be used in an HTTP\n"
 "              GET request instead of the POST request that otherwise would  be\n"
-"              used. The data will be appended to the URL with a '?' separator.\n"
-"              If  used  in combination with -I, --head, the POST data will in-\n"
 , stdout);
  fputs(
+"              used. The data will be appended to the URL with a '?' separator.\n"
+"              If  used  in combination with -I, --head, the POST data will in-\n"
 "              stead be appended to the URL with a HEAD request.\n"
 "\n"
 "              If this option is used several times,  only  the  first  one  is\n"
-"              used.  This is because undoing a GET doesn't make sense, but you\n"
+"              used. This is because undoing a GET does not make sense, but you\n"
 "              should then instead enforce the alternative method you prefer.\n"
 "\n"
+"              Examples:\n"
+, stdout);
+ fputs(
+"               curl --get https://example.com\n"
+"               curl --get -d \"tool=curl\" -d \"age=old\" https://example.com\n"
+"               curl --get -I -d \"tool=curl\" https://example.com\n"
+"\n"
 "       -g, --globoff\n"
 "              This option switches off the \"URL globbing parser\". When you set\n"
 "              this  option, you can specify URLs that contain the letters {}[]\n"
+"              without having curl itself interpret them. Note that these  let-\n"
 , stdout);
  fputs(
-"              without having curl itself interpret them. Note that these  let-\n"
 "              ters  are  not  normal legal URL contents but they should be en-\n"
 "              coded according to the URI standard.\n"
 "\n"
+"              Example:\n"
+"               curl -g \"https://example.com/{[]}}}}\"\n"
+"\n"
 "       --happy-eyeballs-timeout-ms <milliseconds>\n"
-"              Happy eyeballs is an algorithm that attempts to connect to  both\n"
-"              IPv4  and  IPv6  addresses for dual-stack hosts, preferring IPv6\n"
-"              first for the number of milliseconds. If the IPv6 address cannot\n"
+"              Happy Eyeballs is an algorithm that attempts to connect to  both\n"
+"              IPv4  and  IPv6  addresses  for  dual-stack hosts, giving IPv6 a\n"
+"              head-start of the specified number of milliseconds. If the  IPv6\n"
 , stdout);
  fputs(
-"              be  connected  to  within that time then a connection attempt is\n"
-"              made to the IPv4 address in parallel. The first connection to be\n"
-"              established is the one that is used.\n"
+"              address  cannot be connected to within that time, then a connec-\n"
+"              tion attempt is made to the IPv4 address in parallel. The  first\n"
+"              connection to be established is the one that is used.\n"
 "\n"
 "              The  range of suggested useful values is limited. Happy Eyeballs\n"
 "              RFC 6555 says \"It is RECOMMENDED  that  connection  attempts  be\n"
@@ -1600,899 +1839,1143 @@
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --happy-eyeballs-timeout-ms 500 https://example.com\n"
+"\n"
 "              Added in 7.59.0.\n"
 "\n"
 "       --haproxy-protocol\n"
 "              (HTTP)  Send a HAProxy PROXY protocol v1 header at the beginning\n"
-"              of the connection. This is used by some load balancers  and  re-\n"
-"              verse proxies to indicate the client's true IP address and port.\n"
 , stdout);
  fputs(
+"              of the connection. This is used by some load balancers  and  re-\n"
+"              verse proxies to indicate the client's true IP address and port.\n"
 "              This  option is primarily useful when sending test requests to a\n"
 "              service that expects this header.\n"
 "\n"
+"              Example:\n"
+"               curl --haproxy-protocol https://example.com\n"
+"\n"
 "              Added in 7.60.0.\n"
 "\n"
 "       -I, --head\n"
 "              (HTTP FTP FILE) Fetch the headers only! HTTP-servers feature the\n"
+, stdout);
+ fputs(
 "              command  HEAD which this uses to get nothing but the header of a\n"
 "              document. When used on an FTP or FILE file,  curl  displays  the\n"
 "              file size and last modification time only.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl -I https://example.com\n"
 "       -H, --header <header/@file>\n"
 "              (HTTP)  Extra header to include in the request when sending HTTP\n"
 "              to a server. You may specify any number of extra  headers.  Note\n"
+, stdout);
+ fputs(
 "              that if you should add a custom header that has the same name as\n"
 "              one of the internal ones curl would  use,  your  externally  set\n"
 "              header will be used instead of the internal one. This allows you\n"
-, stdout);
- fputs(
 "              to make even trickier stuff than curl  would  normally  do.  You\n"
 "              should  not  replace internally set headers without knowing per-\n"
-"              fectly well what you're doing. Remove an internal header by giv-\n"
-"              ing  a  replacement  without  content  on  the right side of the\n"
-"              colon, as in: -H \"Host:\". If you send the custom header with no-\n"
-"              value  then its header must be terminated with a semicolon, such\n"
+"              fectly well what you are doing. Remove  an  internal  header  by\n"
 , stdout);
  fputs(
+"              giving  a  replacement  without content on the right side of the\n"
+"              colon, as in: -H \"Host:\". If you send the custom header with no-\n"
+"              value  then its header must be terminated with a semicolon, such\n"
 "              as -H \"X-Custom-Header;\" to send \"X-Custom-Header:\".\n"
 "\n"
 "              curl will make sure that each header  you  add/replace  is  sent\n"
 "              with the proper end-of-line marker, you should thus not add that\n"
+, stdout);
+ fputs(
 "              as a part of the header content: do not add newlines or carriage\n"
 "              returns, they will only mess things up for you.\n"
 "\n"
 "              This  option can take an argument in @filename style, which then\n"
-, stdout);
- fputs(
 "              adds a header for each line in the input  file.  Using  @-  will\n"
 "              make curl read the header file from stdin. Added in 7.55.0.\n"
 "\n"
 "              You  need  --proxy-header  to send custom headers intended for a\n"
 "              HTTP proxy. Added in 7.37.0.\n"
 "\n"
+, stdout);
+ fputs(
 "              Passing on a \"Transfer-Encoding: chunked\" header  when  doing  a\n"
 "              HTTP  request  with a request body, will make curl send the data\n"
 "              using chunked encoding.\n"
 "\n"
-"              Example:\n"
-"\n"
-, stdout);
- fputs(
-"               curl -H \"X-First-Name: Joe\" http://example.com/\n"
-"\n"
 "              WARNING: headers set with this option will be  set  in  all  re-\n"
 "              quests  - even after redirects are followed, like when told with\n"
 "              -L, --location. This can lead to the header being sent to  other\n"
+, stdout);
+ fputs(
 "              hosts  than  the  original  host, so sensitive headers should be\n"
 "              used with caution combined with following redirects.\n"
 "\n"
-, stdout);
- fputs(
 "              This option can be used  multiple  times  to  add/replace/remove\n"
 "              multiple headers.\n"
 "\n"
+"              Examples:\n"
+"               curl -H \"X-First-Name: Joe\" https://example.com\n"
+"               curl -H \"User-Agent: yes-please/2000\" https://example.com\n"
+"               curl -H \"Host:\" https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              See also -A, --user-agent and -e, --referer.\n"
 "\n"
 "       -h, --help <category>\n"
 "              Usage  help.  This  lists all commands of the <category>.  If no\n"
 "              arg was provided, curl will display the most  important  command\n"
 "              line  arguments.   If the argument \"all\" was provided, curl will\n"
-, stdout);
- fputs(
 "              display all options available.  If the argument  \"category\"  was\n"
 "              provided, curl will display all categories and their meanings.\n"
 "\n"
+, stdout);
+ fputs(
+"              Example:\n"
+"               curl --help all\n"
+"\n"
 "       --hostpubmd5 <md5>\n"
 "              (SFTP  SCP)  Pass a string containing 32 hexadecimal digits. The\n"
 "              string should be the 128 bit MD5 checksum of the  remote  host's\n"
 "              public key, curl will refuse the connection with the host unless\n"
 "              the md5sums match.\n"
 "\n"
-"              Added in 7.17.1.\n"
+"              Example:\n"
+"               curl --hostpubmd5 e5c1c49020640a5ab0f2034854c321a8 sftp://example.com/\n"
 "\n"
+"       --hostpubsha256 <sha256>\n"
 , stdout);
  fputs(
-"       --hsts <file name>\n"
-"              (HTTPS) WARNING: this option is experimental. Do not use in pro-\n"
-"              duction.\n"
+"              (SFTP SCP) Pass a string containing a Base64-encoded SHA256 hash\n"
+"              of the remote host's public key. Curl will refuse the connection\n"
+"              with the host unless the hashes match.\n"
 "\n"
-"              This  option  enables  HSTS  for  the transfer. If the file name\n"
-"              points to an existing HSTS cache file, that will be used.  After\n"
-"              a  completed  transfer, the cache will be saved to the file name\n"
-"              again if it has been modified.\n"
+"              Example:\n"
+"               curl --hostpubsha256 NDVkMTQxMGQ1ODdmMjQ3MjczYjAyOTY5MmRkMjVmNDQ= sftp://example.com/\n"
+"\n"
+"              Added in 7.80.0.\n"
+"\n"
+"       --hsts <file name>\n"
+"              (HTTPS) This option enables HSTS for the transfer. If  the  file\n"
+, stdout);
+ fputs(
+"              name  points  to an existing HSTS cache file, that will be used.\n"
+"              After a completed transfer, the cache will be saved to the  file\n"
+"              name again if it has been modified.\n"
 "\n"
 "              Specify a \"\" file name (zero length) to avoid loading/saving and\n"
-, stdout);
- fputs(
 "              make curl just handle HSTS in memory.\n"
 "\n"
-"              If  this  option  is used several times, curl will load contents\n"
+"              If this option is used several times, curl  will  load  contents\n"
 "              from all the files but the last one will be used for saving.\n"
 "\n"
+, stdout);
+ fputs(
+"              Example:\n"
+"               curl --hsts cache.txt https://example.com\n"
+"\n"
 "              Added in 7.74.0.\n"
 "\n"
 "       --http0.9\n"
 "              (HTTP) Tells curl to be fine with HTTP version 0.9 response.\n"
 "\n"
-"              HTTP/0.9 is a completely headerless response and  therefore  you\n"
-"              can  also  connect with this to non-HTTP servers and still get a\n"
-, stdout);
- fputs(
+"              HTTP/0.9  is  a completely headerless response and therefore you\n"
+"              can also connect with this to non-HTTP servers and still  get  a\n"
 "              response since curl will simply transparently downgrade - if al-\n"
 "              lowed.\n"
 "\n"
+, stdout);
+ fputs(
 "              Since curl 7.66.0, HTTP/0.9 is disabled by default.\n"
 "\n"
+"              Example:\n"
+"               curl --http0.9 https://example.com\n"
+"\n"
+"              Added in 7.64.0.\n"
+"\n"
 "       -0, --http1.0\n"
-"              (HTTP)  Tells  curl to use HTTP version 1.0 instead of using its\n"
+"              (HTTP) Tells curl to use HTTP version 1.0 instead of  using  its\n"
 "              internally preferred HTTP version.\n"
 "\n"
+"              Example:\n"
+"               curl --http1.0 https://example.com\n"
+"\n"
 "              This option overrides --http1.1 and --http2.\n"
 "\n"
 "       --http1.1\n"
-"              (HTTP) Tells curl to use HTTP version 1.1.\n"
-"\n"
 , stdout);
  fputs(
-"              This option  overrides  -0,  --http1.0  and  --http2.  Added  in\n"
+"              (HTTP) Tells curl to use HTTP version 1.1.\n"
+"\n"
+"              Example:\n"
+"               curl --http1.1 https://example.com\n"
+"\n"
+"              This  option  overrides  -0,  --http1.0  and  --http2.  Added in\n"
 "              7.33.0.\n"
 "\n"
 "       --http2-prior-knowledge\n"
-"              (HTTP)  Tells  curl  to  issue  its  non-TLS HTTP requests using\n"
-"              HTTP/2 without HTTP/1.1 Upgrade.  It  requires  prior  knowledge\n"
-"              that  the  server  supports HTTP/2 straight away. HTTPS requests\n"
-"              will still do HTTP/2 the standard way with  negotiated  protocol\n"
-"              version in the TLS handshake.\n"
-"\n"
+"              (HTTP) Tells curl to  issue  its  non-TLS  HTTP  requests  using\n"
+"              HTTP/2  without  HTTP/1.1  Upgrade.  It requires prior knowledge\n"
 , stdout);
  fputs(
+"              that the server supports HTTP/2 straight  away.  HTTPS  requests\n"
+"              will  still  do HTTP/2 the standard way with negotiated protocol\n"
+"              version in the TLS handshake.\n"
+"\n"
+"              Example:\n"
+"               curl --http2-prior-knowledge https://example.com\n"
+"\n"
 "              --http2-prior-knowledge requires that the underlying libcurl was\n"
 "              built to support HTTP/2. This option overrides --http1.1 and -0,\n"
+, stdout);
+ fputs(
 "              --http1.0 and --http2. Added in 7.49.0.\n"
 "\n"
 "       --http2\n"
 "              (HTTP) Tells curl to use HTTP version 2.\n"
 "\n"
-"              See also --http1.1 and --http3. --http2 requires that the under-\n"
-"              lying libcurl was built to support HTTP/2. This option overrides\n"
+"              For HTTPS, this means curl will attempt to negotiate  HTTP/2  in\n"
+"              the TLS handshake. curl does this by default.\n"
+"\n"
+"              For HTTP, this means curl will attempt to upgrade the request to\n"
+"              HTTP/2 using the Upgrade: request header.\n"
+"\n"
+"              Example:\n"
+"               curl --http2 https://example.com\n"
+"\n"
 , stdout);
  fputs(
-"              --http1.1  and  -0, --http1.0 and --http2-prior-knowledge. Added\n"
+"              See also --http1.1 and --http3. --http2 requires that the under-\n"
+"              lying libcurl was built to support HTTP/2. This option overrides\n"
+"              --http1.1 and -0, --http1.0 and  --http2-prior-knowledge.  Added\n"
 "              in 7.33.0.\n"
 "\n"
 "       --http3\n"
-"              (HTTP) WARNING: this option is experimental. Do not use in  pro-\n"
+"              (HTTP)  WARNING: this option is experimental. Do not use in pro-\n"
 "              duction.\n"
 "\n"
-"              Tells  curl  to use HTTP version 3 directly to the host and port\n"
-"              number used in the URL. A normal HTTP/3 transaction will be done\n"
-"              to  a  host and then get redirected via Alt-Svc, but this option\n"
+"              Tells curl to use HTTP version 3 directly to the host  and  port\n"
 , stdout);
  fputs(
-"              allows a user to circumvent that when you know that  the  target\n"
+"              number used in the URL. A normal HTTP/3 transaction will be done\n"
+"              to a host and then get redirected via Alt-Svc, but  this  option\n"
+"              allows  a  user to circumvent that when you know that the target\n"
 "              speaks HTTP/3 on the given host and port.\n"
 "\n"
-"              This  option  will make curl fail if a QUIC connection cannot be\n"
-"              established, it cannot fall back to a lower HTTP version on  its\n"
+"              This option will make curl fail if a QUIC connection  cannot  be\n"
+"              established,  it cannot fall back to a lower HTTP version on its\n"
 "              own.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --http3 https://example.com\n"
+"\n"
 "              See also --http1.1 and --http2. --http3 requires that the under-\n"
 "              lying libcurl was built to support HTTP/3. This option overrides\n"
-, stdout);
- fputs(
 "              --http1.1 and -0, --http1.0 and --http2 and --http2-prior-knowl-\n"
 "              edge. Added in 7.66.0.\n"
 "\n"
 "       --ignore-content-length\n"
-"              (FTP HTTP) For HTTP, Ignore the Content-Length header.  This  is\n"
-"              particularly  useful  for servers running Apache 1.x, which will\n"
-"              report incorrect Content-Length for files larger  than  2  giga-\n"
-"              bytes.\n"
-"\n"
-"              For  FTP (since 7.46.0), skip the RETR command to figure out the\n"
+"              (FTP  HTTP)  For HTTP, Ignore the Content-Length header. This is\n"
 , stdout);
  fputs(
+"              particularly useful for servers running Apache 1.x,  which  will\n"
+"              report  incorrect  Content-Length  for files larger than 2 giga-\n"
+"              bytes.\n"
+"\n"
+"              For FTP (since 7.46.0), skip the RETR command to figure out  the\n"
 "              size before downloading a file.\n"
 "\n"
-"              This option doesn't work if libcurl was built to use  hyper  for\n"
-"              HTTP.\n"
+"              This  option  does not work for HTTP if libcurl was built to use\n"
+"              hyper.\n"
 "\n"
+"              Example:\n"
+"               curl --ignore-content-length https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "       -i, --include\n"
-"              Include  the  HTTP  response headers in the output. The HTTP re-\n"
-"              sponse headers can include things  like  server  name,  cookies,\n"
+"              Include the HTTP response headers in the output.  The  HTTP  re-\n"
+"              sponse  headers  can  include  things like server name, cookies,\n"
 "              date of the document, HTTP version and more...\n"
 "\n"
 "              To view the request headers, consider the -v, --verbose option.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl -i https://example.com\n"
+"\n"
 "              See also -v, --verbose.\n"
 "\n"
 "       -k, --insecure\n"
-"              (TLS) By default, every SSL connection curl makes is verified to\n"
-"              be secure. This option allows curl to proceed and  operate  even\n"
-"              for server connections otherwise considered insecure.\n"
-"\n"
-"              The  server  connection  is verified by making sure the server's\n"
-"              certificate contains the right name  and  verifies  successfully\n"
-"              using the cert store.\n"
-"\n"
 , stdout);
  fputs(
+"              (TLS) By default, every SSL connection curl makes is verified to\n"
+"              be  secure.  This option allows curl to proceed and operate even\n"
+"              for server connections otherwise considered insecure.\n"
+"\n"
+"              The server connection is verified by making  sure  the  server's\n"
+"              certificate  contains  the  right name and verifies successfully\n"
+"              using the cert store.\n"
+"\n"
 "              See this online resource for further details:\n"
+, stdout);
+ fputs(
 "               https://curl.se/docs/sslcerts.html\n"
 "\n"
+"              WARNING: this makes the transfer insecure.\n"
+"\n"
+"              Example:\n"
+"               curl --insecure https://example.com\n"
+"\n"
 "              See also --proxy-insecure and --cacert.\n"
 "\n"
 "       --interface <name>\n"
-"\n"
-"              Perform  an operation using a specified interface. You can enter\n"
-"              interface name, IP address or host name. An example  could  look\n"
+"              Perform an operation using a specified interface. You can  enter\n"
+"              interface  name,  IP address or host name. An example could look\n"
 "              like:\n"
 "\n"
-"               curl --interface eth0:1 https://www.example.com/\n"
-"\n"
 , stdout);
  fputs(
+"               curl --interface eth0:1 https://www.example.com/\n"
+"\n"
 "              If this option is used several times, the last one will be used.\n"
-"              On  Linux  it can be used to specify a VRF, but the binary needs\n"
-"              to either have CAP_NET_RAW or to be run as root.  More  informa-\n"
-"              tion   about  Linux  VRF:  https://www.kernel.org/doc/Documenta-\n"
+"              On Linux it can be used to specify a VRF, but the  binary  needs\n"
+"              to  either  have CAP_NET_RAW or to be run as root. More informa-\n"
+"              tion  about  Linux  VRF:   https://www.kernel.org/doc/Documenta-\n"
 "              tion/networking/vrf.txt\n"
 "\n"
+"              Example:\n"
+"               curl --interface eth0 https://example.com\n"
+, stdout);
+ fputs(
+"\n"
 "              See also --dns-interface.\n"
 "\n"
 "       -4, --ipv4\n"
-"              This option tells curl to resolve names to IPv4 addresses  only,\n"
-, stdout);
- fputs(
+"              This  option tells curl to resolve names to IPv4 addresses only,\n"
 "              and not for example try IPv6.\n"
 "\n"
-"              See  also  --http1.1  and  --http2.  This  option  overrides -6,\n"
+"              Example:\n"
+"               curl --ipv4 https://example.com\n"
+"\n"
+"              See also  --http1.1  and  --http2.  This  option  overrides  -6,\n"
 "              --ipv6.\n"
 "\n"
 "       -6, --ipv6\n"
-"              This option tells curl to resolve names to IPv6 addresses  only,\n"
+"              This  option tells curl to resolve names to IPv6 addresses only,\n"
 "              and not for example try IPv4.\n"
 "\n"
-"              See  also  --http1.1  and  --http2.  This  option  overrides -4,\n"
+, stdout);
+ fputs(
+"              Example:\n"
+"               curl --ipv6 https://example.com\n"
+"\n"
+"              See also  --http1.1  and  --http2.  This  option  overrides  -4,\n"
 "              --ipv4.\n"
 "\n"
 "       -j, --junk-session-cookies\n"
-, stdout);
- fputs(
 "              (HTTP) When curl is told to read cookies from a given file, this\n"
 "              option will make it discard all \"session cookies\". This will ba-\n"
-"              sically have the same effect as if a  new  session  is  started.\n"
-"              Typical  browsers  always  discard  session cookies when they're\n"
+"              sically  have  the  same  effect as if a new session is started.\n"
+, stdout);
+ fputs(
+"              Typical browsers always discard session cookies  when  they  are\n"
 "              closed down.\n"
 "\n"
+"              Example:\n"
+"               curl --junk-session-cookies -b cookies.txt https://example.com\n"
+"\n"
 "              See also -b, --cookie and -c, --cookie-jar.\n"
 "\n"
 "       --keepalive-time <seconds>\n"
+"              This  option sets the time a connection needs to remain idle be-\n"
+"              fore sending keepalive probes and the  time  between  individual\n"
 , stdout);
  fputs(
-"              This option sets the time a connection needs to remain idle  be-\n"
-"              fore  sending  keepalive  probes and the time between individual\n"
 "              keepalive probes. It is currently effective on operating systems\n"
 "              offering  the  TCP_KEEPIDLE  and  TCP_KEEPINTVL  socket  options\n"
-"              (meaning Linux, recent AIX, HP-UX and more). This option has  no\n"
+"              (meaning  Linux, recent AIX, HP-UX and more). This option has no\n"
 "              effect if --no-keepalive is used.\n"
 "\n"
-, stdout);
- fputs(
 "              If this option is used several times, the last one will be used.\n"
 "              If unspecified, the option defaults to 60 seconds.\n"
 "\n"
-"              Added in 7.18.0.\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --keepalive-time 20 https://example.com\n"
 "\n"
 "       --key-type <type>\n"
-"              (TLS) Private key file type. Specify which type your --key  pro-\n"
-"              vided  private  key  is. DER, PEM, and ENG are supported. If not\n"
+"              (TLS)  Private key file type. Specify which type your --key pro-\n"
+"              vided private key is. DER, PEM, and ENG are  supported.  If  not\n"
 "              specified, PEM is assumed.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --key-type DER --key here https://example.com\n"
+"\n"
+"       --key <key>\n"
 , stdout);
  fputs(
-"       --key <key>\n"
 "              (TLS SSH) Private key file name. Allows you to provide your pri-\n"
-"              vate  key in this separate file. For SSH, if not specified, curl\n"
-"              tries  the  following  candidates  in  order:   '~/.ssh/id_rsa',\n"
+"              vate key in this separate file. For SSH, if not specified,  curl\n"
+"              tries   the  following  candidates  in  order:  '~/.ssh/id_rsa',\n"
 "              '~/.ssh/id_dsa', './id_rsa', './id_dsa'.\n"
 "\n"
-"              If  curl is built against OpenSSL library, and the engine pkcs11\n"
+"              If curl is built against OpenSSL library, and the engine  pkcs11\n"
 "              is available, then a PKCS#11 URI (RFC 7512) can be used to spec-\n"
 , stdout);
  fputs(
-"              ify  a  private key located in a PKCS#11 device. A string begin-\n"
-"              ning with \"pkcs11:\" will be interpreted as a PKCS#11 URI.  If  a\n"
+"              ify a private key located in a PKCS#11 device. A  string  begin-\n"
+"              ning  with  \"pkcs11:\" will be interpreted as a PKCS#11 URI. If a\n"
 "              PKCS#11 URI is provided, then the --engine option will be set as\n"
-"              \"pkcs11\" if none was provided and the --key-type option will  be\n"
+"              \"pkcs11\"  if none was provided and the --key-type option will be\n"
 "              set as \"ENG\" if none was provided.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"       --krb <level>\n"
+"              Example:\n"
 , stdout);
  fputs(
-"              (FTP)  Enable Kerberos authentication and use. The level must be\n"
+"               curl --cert certificate --key here https://example.com\n"
+"\n"
+"       --krb <level>\n"
+"              (FTP) Enable Kerberos authentication and use. The level must  be\n"
 "              entered and should be one of 'clear', 'safe', 'confidential', or\n"
-"              'private'.  Should  you  use  a  level that is not one of these,\n"
+"              'private'. Should you use a level that  is  not  one  of  these,\n"
 "              'private' will instead be used.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
-"              --krb requires that the underlying libcurl was built to  support\n"
+"\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --krb clear ftp://example.com/\n"
+"\n"
+"              --krb  requires that the underlying libcurl was built to support\n"
 "              Kerberos.\n"
 "\n"
 "       --libcurl <file>\n"
+"              Append this option to any ordinary curl command  line,  and  you\n"
+"              will  get  libcurl-using  C source code written to the file that\n"
+"              does the equivalent of what your command-line operation does!\n"
+"\n"
+"              This option is global and does not need to be specified for each\n"
 , stdout);
  fputs(
-"              Append  this  option  to any ordinary curl command line, and you\n"
-"              will get libcurl-using C source code written to  the  file  that\n"
-"              does the equivalent of what your command-line operation does!\n"
+"              use of -:, --next.\n"
 "\n"
 "              If  this  option is used several times, the last given file name\n"
 "              will be used.\n"
 "\n"
-"              Added in 7.16.1.\n"
+"              Example:\n"
+"               curl --libcurl client.c https://example.com\n"
 "\n"
 "       --limit-rate <speed>\n"
 "              Specify the maximum transfer rate you want curl  to  use  -  for\n"
+"              both downloads and uploads. This feature is useful if you have a\n"
+"              limited pipe and you would like your transfer not  to  use  your\n"
 , stdout);
  fputs(
-"              both downloads and uploads. This feature is useful if you have a\n"
-"              limited pipe and you'd like your transfer not to use your entire\n"
-"              bandwidth. To make it slower than it otherwise would be.\n"
+"              entire bandwidth. To make it slower than it otherwise would be.\n"
 "\n"
 "              The  given speed is measured in bytes/second, unless a suffix is\n"
 "              appended.  Appending 'k' or 'K' will count the number  as  kilo-\n"
 "              bytes,  'm' or 'M' makes it megabytes, while 'g' or 'G' makes it\n"
+"              gigabytes. The suffixes (k, M, G, T, P) are 1024 based. For  ex-\n"
+"              ample 1k is 1024. Examples: 200K, 3m and 1G.\n"
+"\n"
 , stdout);
  fputs(
-"              gigabytes. Examples: 200K, 3m and 1G.\n"
+"              The rate limiting logic works on averaging the transfer speed to\n"
+"              no more than the set threshold over a period  of  multiple  sec-\n"
+"              onds.\n"
 "\n"
-"              If you also use the -Y, --speed-limit option, that  option  will\n"
+"              If  you  also use the -Y, --speed-limit option, that option will\n"
 "              take precedence and might cripple the rate-limiting slightly, to\n"
 "              help keeping the speed-limit logic working.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"       -l, --list-only\n"
-"              (FTP POP3) (FTP) When listing  an  FTP  directory,  this  switch\n"
+"              Examples:\n"
 , stdout);
  fputs(
-"              forces  a  name-only view. This is especially useful if the user\n"
-"              wants to machine-parse the contents of an  FTP  directory  since\n"
-"              the normal directory view doesn't use a standard look or format.\n"
-"              When used like this, the option causes an  NLST  command  to  be\n"
-"              sent to the server instead of LIST.\n"
+"               curl --limit-rate 100K https://example.com\n"
+"               curl --limit-rate 1000 https://example.com\n"
+"               curl --limit-rate 10M https://example.com\n"
 "\n"
-"              Note:  Some  FTP  servers  list  only files in their response to\n"
+"       -l, --list-only\n"
+"              (FTP  POP3)  (FTP)  When  listing  an FTP directory, this switch\n"
+"              forces a name-only view. This is especially useful if  the  user\n"
+"              wants  to  machine-parse  the contents of an FTP directory since\n"
 , stdout);
  fputs(
+"              the normal directory view does not use a standard look  or  for-\n"
+"              mat.  When  used like this, the option causes an NLST command to\n"
+"              be sent to the server instead of LIST.\n"
+"\n"
+"              Note: Some FTP servers list only  files  in  their  response  to\n"
 "              NLST; they do not include sub-directories and symbolic links.\n"
 "\n"
-"              (POP3) When retrieving a specific email from POP3,  this  switch\n"
-"              forces  a  LIST command to be performed instead of RETR. This is\n"
-"              particularly useful if the user wants to see if a specific  mes-\n"
+"              (POP3)  When  retrieving a specific email from POP3, this switch\n"
+, stdout);
+ fputs(
+"              forces a LIST command to be performed instead of RETR.  This  is\n"
+"              particularly  useful if the user wants to see if a specific mes-\n"
 "              sage-id exists on the server and what size it is.\n"
 "\n"
-"              Note:  When combined with -X, --request, this option can be used\n"
-, stdout);
- fputs(
-"              to send a UIDL command instead, so the user may use the  email's\n"
-"              unique  identifier  rather  than  its message-id to make the re-\n"
+"              Note: When combined with -X, --request, this option can be  used\n"
+"              to  send a UIDL command instead, so the user may use the email's\n"
+"              unique identifier rather than its message-id  to  make  the  re-\n"
 "              quest.\n"
 "\n"
-"              Added in 4.0.\n"
+, stdout);
+ fputs(
+"              Example:\n"
+"               curl --list-only ftp://example.com/dir/\n"
 "\n"
 "       --local-port <num/range>\n"
-"              Set a preferred single number or range (FROM-TO) of  local  port\n"
+"              Set  a  preferred single number or range (FROM-TO) of local port\n"
 "              numbers to use for the connection(s).  Note that port numbers by\n"
-"              nature are a scarce resource that will be busy at times so  set-\n"
-, stdout);
- fputs(
-"              ting  this range to something too narrow might cause unnecessary\n"
+"              nature  are a scarce resource that will be busy at times so set-\n"
+"              ting this range to something too narrow might cause  unnecessary\n"
 "              connection setup failures.\n"
 "\n"
-"              Added in 7.15.2.\n"
-"\n"
-"       --location-trusted\n"
-"              (HTTP) Like -L, --location, but will allow sending  the  name  +\n"
-"              password to all hosts that the site may redirect to. This may or\n"
-"              may not introduce a security breach if the site redirects you to\n"
-"              a  site  to which you'll send your authentication info (which is\n"
+"              Example:\n"
 , stdout);
  fputs(
+"               curl --local-port 1000-3000 https://example.com\n"
+"\n"
+"       --location-trusted\n"
+"              (HTTP)  Like  -L,  --location, but will allow sending the name +\n"
+"              password to all hosts that the site may redirect to. This may or\n"
+"              may not introduce a security breach if the site redirects you to\n"
+"              a site to which you will send your authentication info (which is\n"
 "              plaintext in the case of HTTP Basic authentication).\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --location-trusted -u user:password https://example.com\n"
+"\n"
 "              See also -u, --user.\n"
 "\n"
 "       -L, --location\n"
-"              (HTTP) If the server reports that the requested page  has  moved\n"
+"              (HTTP)  If  the server reports that the requested page has moved\n"
 "              to a different location (indicated with a Location: header and a\n"
-"              3XX response code), this option will make curl redo the  request\n"
-"              on  the  new  place.  If used together with -i, --include or -I,\n"
+"              3XX  response code), this option will make curl redo the request\n"
+"              on the new place. If used together with  -i,  --include  or  -I,\n"
 , stdout);
  fputs(
 "              --head, headers from all requested pages will be shown. When au-\n"
-"              thentication  is  used,  curl  only sends its credentials to the\n"
-"              initial host. If a redirect takes curl to a different  host,  it\n"
-"              won't  be  able to intercept the user+password. See also --loca-\n"
-"              tion-trusted on how to change this. You can limit the amount  of\n"
-"              redirects to follow by using the --max-redirs option.\n"
+"              thentication is used, curl only sends  its  credentials  to  the\n"
+"              initial  host.  If a redirect takes curl to a different host, it\n"
+"              will not be able to intercept the user+password. See also  --lo-\n"
+"              cation-trusted  on  how to change this. You can limit the amount\n"
+"              of redirects to follow by using the --max-redirs option.\n"
 "\n"
 , stdout);
  fputs(
-"              When  curl  follows  a redirect and if the request is a POST, it\n"
-"              will do the following request with a GET if  the  HTTP  response\n"
-"              was  301,  302,  or  303. If the response code was any other 3xx\n"
+"              When curl follows a redirect and if the request is  a  POST,  it\n"
+"              will  send the following request with a GET if the HTTP response\n"
+"              was 301, 302, or 303. If the response code  was  any  other  3xx\n"
 "              code, curl will re-send the following request using the same un-\n"
 "              modified method.\n"
 "\n"
 "              You can tell curl to not change POST requests to GET after a 30x\n"
 , stdout);
  fputs(
-"              response by using the dedicated  options  for  that:  --post301,\n"
+"              response  by  using  the  dedicated options for that: --post301,\n"
 "              --post302 and --post303.\n"
 "\n"
-"              The  method  set  with  -X,  --request overrides the method curl\n"
+"              The method set with -X,  --request  overrides  the  method  curl\n"
 "              would otherwise select to use.\n"
 "\n"
+"              Example:\n"
+"               curl -L https://example.com\n"
+"\n"
 "       --login-options <options>\n"
-"              (IMAP POP3 SMTP) Specify the login options to use during  server\n"
+"              (IMAP  POP3 SMTP) Specify the login options to use during server\n"
 "              authentication.\n"
 "\n"
-"              You  can  use login options to specify protocol specific options\n"
 , stdout);
  fputs(
-"              that may be used during authentication. At  present  only  IMAP,\n"
-"              POP3  and SMTP support login options. For more information about\n"
-"              login options please see RFC  2384,  RFC  5092  and  IETF  draft\n"
+"              You can use login options to specify protocol  specific  options\n"
+"              that  may  be  used during authentication. At present only IMAP,\n"
+"              POP3 and SMTP support login options. For more information  about\n"
+"              login  options  please  see  RFC  2384,  RFC 5092 and IETF draft\n"
 "              draft-earhart-url-smtp-00.txt\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --login-options 'AUTH=*' imap://example.com\n"
+"\n"
 "              Added in 7.34.0.\n"
 "\n"
 "       --mail-auth <address>\n"
-, stdout);
- fputs(
-"              (SMTP)  Specify  a  single address. This will be used to specify\n"
-"              the authentication address (identity)  of  a  submitted  message\n"
+"              (SMTP) Specify a single address. This will be  used  to  specify\n"
+"              the  authentication  address  (identity)  of a submitted message\n"
 "              that is being relayed to another server.\n"
 "\n"
-"              See also --mail-rcpt and --mail-from. Added in 7.25.0.\n"
+"              Example:\n"
+"               curl --mail-auth user@example.come -T mail smtp://example.com/\n"
 "\n"
+"              See also --mail-rcpt and --mail-from.\n"
+"\n"
+, stdout);
+ fputs(
 "       --mail-from <address>\n"
-"              (SMTP)  Specify  a single address that the given mail should get\n"
+"              (SMTP) Specify a single address that the given mail  should  get\n"
 "              sent from.\n"
 "\n"
-"              See also --mail-rcpt and --mail-auth. Added in 7.20.0.\n"
+"              Example:\n"
+"               curl --mail-from user@example.com -T mail smtp://example.com/\n"
 "\n"
-, stdout);
- fputs(
+"              See also --mail-rcpt and --mail-auth.\n"
+"\n"
 "       --mail-rcpt-allowfails\n"
 "              (SMTP) When sending data to multiple recipients, by default curl\n"
-"              will  abort  SMTP conversation if at least one of the recipients\n"
+"              will abort SMTP conversation if at least one of  the  recipients\n"
+, stdout);
+ fputs(
 "              causes RCPT TO command to return an error.\n"
 "\n"
-"              The default behavior can be changed by  passing  --mail-rcpt-al-\n"
-"              lowfails  command-line option which will make curl ignore errors\n"
+"              The  default  behavior can be changed by passing --mail-rcpt-al-\n"
+"              lowfails command-line option which will make curl ignore  errors\n"
 "              and proceed with the remaining valid recipients.\n"
 "\n"
+"              If  all  recipients  trigger  RCPT  TO failures and this flag is\n"
+"              specified, curl will still abort the SMTP conversation  and  re-\n"
 , stdout);
  fputs(
-"              In case when all recipients cause RCPT TO command to fail,  curl\n"
-"              will  abort SMTP conversation and return the error received from\n"
-"              to the last RCPT TO command.  Added in 7.69.0.\n"
+"              turn the error received from to the last RCPT TO command.\n"
+"\n"
+"              Example:\n"
+"               curl --mail-rcpt-allowfails --mail-rcpt dest@example.com smtp://example.com\n"
+"\n"
+"              Added in 7.69.0.\n"
 "\n"
 "       --mail-rcpt <address>\n"
-"              (SMTP) Specify a single address, user name or mailing list name.\n"
-"              Repeat this option several times to send to multiple recipients.\n"
-"              When  performing a mail transfer, the recipient should specify a\n"
+"              (SMTP)  Specify  a  single  e-mail address, user name or mailing\n"
+"              list name. Repeat this option several times to send to  multiple\n"
+"              recipients.\n"
+"\n"
 , stdout);
  fputs(
-"              valid email address to send the mail to.\n"
-"\n"
-"              When performing an address verification (VRFY command), the  re-\n"
-"              cipient  should  be  specified as the user name or user name and\n"
+"              When  performing an address verification (VRFY command), the re-\n"
+"              cipient should be specified as the user name or  user  name  and\n"
 "              domain (as per Section 3.5 of RFC5321). (Added in 7.34.0)\n"
 "\n"
 "              When performing a mailing list expand (EXPN command), the recip-\n"
-"              ient  should  be  specified using the mailing list name, such as\n"
-, stdout);
- fputs(
+"              ient should be specified using the mailing list  name,  such  as\n"
 "              \"Friends\" or \"London-Office\".  (Added in 7.34.0)\n"
 "\n"
-"              Added in 7.20.0.\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --mail-rcpt user@example.net smtp://example.com\n"
 "\n"
 "       -M, --manual\n"
 "              Manual. Display the huge help text.\n"
 "\n"
+"              Example:\n"
+"               curl --manual\n"
+"\n"
 "       --max-filesize <bytes>\n"
-"              Specify the maximum size (in bytes) of a file  to  download.  If\n"
-"              the  file requested is larger than this value, the transfer will\n"
-"              not start and curl will return with exit code 63.\n"
+"              (FTP HTTP MQTT) Specify the maximum size (in bytes) of a file to\n"
+"              download. If the file requested is larger than this  value,  the\n"
+"              transfer will not start and curl will return with exit code 63.\n"
 "\n"
 , stdout);
  fputs(
-"              A size modifier may be used. For example, Appending 'k'  or  'K'\n"
-"              will  count  the  number  as  kilobytes,  'm'  or  'M'  makes it\n"
-"              megabytes, while 'g' or 'G' makes it gigabytes. Examples:  200K,\n"
+"              A  size  modifier may be used. For example, Appending 'k' or 'K'\n"
+"              will count  the  number  as  kilobytes,  'm'  or  'M'  makes  it\n"
+"              megabytes,  while 'g' or 'G' makes it gigabytes. Examples: 200K,\n"
 "              3m and 1G. (Added in 7.58.0)\n"
 "\n"
-"              NOTE:  For protocols where the size is not known in advance (in-\n"
-"              cluding FTP and HTTP) this option has no effect even if the file\n"
+"              NOTE: The file size is not always known prior to  download,  and\n"
+"              for such files this option has no effect even if the file trans-\n"
 , stdout);
  fputs(
-"              transfer ends up being larger than the given limit.\n"
+"              fer ends up being larger than this given limit.  Example:\n"
+"               curl --max-filesize 100K https://example.com\n"
 "\n"
 "              See also --limit-rate.\n"
 "\n"
 "       --max-redirs <num>\n"
-"              (HTTP)  Set  maximum  number of redirections to follow. When -L,\n"
-"              --location is used, to prevent  curl  from  following  too  many\n"
-"              redirects,  by  default,  the  limit is set to 50 redirects. Set\n"
+"              (HTTP) Set maximum number of redirections to  follow.  When  -L,\n"
+"              --location  is  used,  to  prevent  curl from following too many\n"
+"              redirects, by default, the limit is set  to  50  redirects.  Set\n"
 "              this option to -1 to make it unlimited.\n"
 "\n"
 , stdout);
  fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"       -m, --max-time <seconds>\n"
-"              Maximum time in seconds that you allow the  whole  operation  to\n"
-"              take.   This is useful for preventing your batch jobs from hang-\n"
-"              ing for hours due to slow networks or links going  down.   Since\n"
-"              7.32.0, this option accepts decimal values, but the actual time-\n"
+"              Example:\n"
+"               curl --max-redirs 3 --location https://example.com\n"
+"\n"
+"       -m, --max-time <fractional seconds>\n"
+"              Maximum  time  in  seconds that you allow the whole operation to\n"
+"              take.  This is useful for preventing your batch jobs from  hang-\n"
+"              ing  for  hours due to slow networks or links going down.  Since\n"
 , stdout);
  fputs(
+"              7.32.0, this option accepts decimal values, but the actual time-\n"
 "              out will decrease in accuracy as the specified timeout increases\n"
 "              in decimal precision.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl --max-time 10 https://example.com\n"
+"               curl --max-time 2.92 https://example.com\n"
+"\n"
 "              See also --connect-timeout.\n"
 "\n"
 "       --metalink\n"
-"              This  option was previously used to specify a metalink resource.\n"
-"              Metalink support has been disabled in curl since 7.78.0 for  se-\n"
+, stdout);
+ fputs(
+"              This option was previously used to specify a metalink  resource.\n"
+"              Metalink  support has been disabled in curl since 7.78.0 for se-\n"
 "              curity reasons.\n"
 "\n"
-"              Added in 7.27.0.\n"
+"              Example:\n"
+"               curl --metalink file https://example.com\n"
 "\n"
 "       --negotiate\n"
-, stdout);
- fputs(
 "              (HTTP) Enables Negotiate (SPNEGO) authentication.\n"
 "\n"
-"              This  option  requires a library built with GSS-API or SSPI sup-\n"
-"              port. Use -V, --version  to  see  if  your  curl  supports  GSS-\n"
-"              API/SSPI or SPNEGO.\n"
-"\n"
-"              When  using this option, you must also provide a fake -u, --user\n"
-"              option to activate the authentication code properly.  Sending  a\n"
-"              '-u  :'  is  enough  as  the user name and password from the -u,\n"
+"              This option requires a library built with GSS-API or  SSPI  sup-\n"
 , stdout);
  fputs(
-"              --user option aren't actually used.\n"
+"              port.  Use  -V,  --version  to  see  if  your curl supports GSS-\n"
+"              API/SSPI or SPNEGO.\n"
 "\n"
-"              If this option is used several times,  only  the  first  one  is\n"
+"              When using this option, you must also provide a fake -u,  --user\n"
+"              option  to  activate the authentication code properly. Sending a\n"
+"              '-u :' is enough as the user name  and  password  from  the  -u,\n"
+"              --user option are not actually used.\n"
+"\n"
+"              If  this  option  is  used  several times, only the first one is\n"
+, stdout);
+ fputs(
 "              used.\n"
 "\n"
+"              Example:\n"
+"               curl --negotiate -u : https://example.com\n"
+"\n"
 "              See also --basic, --ntlm, --anyauth and --proxy-negotiate.\n"
 "\n"
 "       --netrc-file <filename>\n"
-"              This  option  is similar to -n, --netrc, except that you provide\n"
-"              the path (absolute or relative) to  the  netrc  file  that  curl\n"
+"              This option is similar to -n, --netrc, except that  you  provide\n"
+"              the  path  (absolute  or  relative)  to the netrc file that curl\n"
 "              should use.  You can only specify one netrc file per invocation.\n"
 , stdout);
  fputs(
-"              If several --netrc-file options are provided, the last one  will\n"
+"              If  several --netrc-file options are provided, the last one will\n"
 "              be used.\n"
 "\n"
 "              It will abide by --netrc-optional if specified.\n"
 "\n"
-"              This option overrides -n, --netrc. Added in 7.21.5.\n"
+"              Example:\n"
+"               curl --netrc-file netrc https://example.com\n"
+"\n"
+"              This option overrides -n, --netrc.\n"
 "\n"
 "       --netrc-optional\n"
-"              Very  similar  to  -n, --netrc, but this option makes the .netrc\n"
-"              usage optional and not mandatory as the -n, --netrc option does.\n"
+"              Similar to -n, --netrc, but this option makes the  .netrc  usage\n"
+"              optional and not mandatory as the -n, --netrc option does.\n"
+"\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --netrc-optional https://example.com\n"
 "\n"
 "              See also --netrc-file. This option overrides -n, --netrc.\n"
 "\n"
-, stdout);
- fputs(
 "       -n, --netrc\n"
-"              Makes curl scan the .netrc  (_netrc  on  Windows)  file  in  the\n"
+"              Makes  curl  scan  the  .netrc  (_netrc  on Windows) file in the\n"
 "              user's home directory for login name and password. This is typi-\n"
-"              cally used for FTP on Unix. If used with HTTP, curl will  enable\n"
-"              user  authentication. See netrc(5) and ftp(1) for details on the\n"
-"              file format. Curl will not complain if that  file  doesn't  have\n"
-"              the  right  permissions  (it should be neither world- nor group-\n"
+"              cally  used for FTP on Unix. If used with HTTP, curl will enable\n"
+"              user authentication. See netrc(5) and ftp(1) for details on  the\n"
 , stdout);
  fputs(
-"              readable). The environment variable \"HOME\" is used to  find  the\n"
+"              file  format.  Curl will not complain if that file does not have\n"
+"              the right permissions (it should be neither  world-  nor  group-\n"
+"              readable).  The  environment variable \"HOME\" is used to find the\n"
 "              home directory.\n"
 "\n"
-"              A  quick and very simple example of how to setup a .netrc to al-\n"
-"              low curl to FTP to the machine host.domain.com  with  user  name\n"
-"              'myself' and password 'secret' should look similar to:\n"
+"              A quick and simple example of how to setup  a  .netrc  to  allow\n"
+"              curl  to  FTP to the machine host.domain.com with user name 'my-\n"
+"              self' and password 'secret' should look similar to:\n"
 "\n"
+, stdout);
+ fputs(
 "              machine host.domain.com login myself password secret\n"
 "\n"
+"              Example:\n"
+"               curl --netrc https://example.com\n"
+"\n"
 "       -:, --next\n"
-, stdout);
- fputs(
 "              Tells curl to use a separate operation for the following URL and\n"
-"              associated options. This allows you  to  send  several  URL  re-\n"
-"              quests,  each with their own specific options, for example, such\n"
+"              associated  options.  This  allows  you  to send several URL re-\n"
+"              quests, each with their own specific options, for example,  such\n"
 "              as different user names or custom requests for each.\n"
 "\n"
-"              -:, --next will reset all local options  and  only  global  ones\n"
-"              will  have  their values survive over to the operation following\n"
 , stdout);
  fputs(
-"              the -:, --next instruction. Global options  include  -v,  --ver-\n"
+"              -:,  --next  will  reset  all local options and only global ones\n"
+"              will have their values survive over to the  operation  following\n"
+"              the  -:,  --next  instruction. Global options include -v, --ver-\n"
 "              bose, --trace, --trace-ascii and --fail-early.\n"
 "\n"
-"              For  example,  you can do both a GET and a POST in a single com-\n"
+"              For example, you can do both a GET and a POST in a  single  com-\n"
 "              mand line:\n"
 "\n"
 "               curl www1.example.com --next -d postthis www2.example.com\n"
 "\n"
+, stdout);
+ fputs(
+"              Examples:\n"
+"               curl https://example.com --next -d postthis www2.example.com\n"
+"               curl -I https://example.com --next https://example.net/\n"
+"\n"
 "              Added in 7.36.0.\n"
 "\n"
 "       --no-alpn\n"
-"              (HTTPS) Disable the ALPN TLS extension. ALPN is enabled  by  de-\n"
+"              (HTTPS)  Disable  the ALPN TLS extension. ALPN is enabled by de-\n"
+"              fault if libcurl was built with an  SSL  library  that  supports\n"
+"              ALPN.  ALPN is used by a libcurl that supports HTTP/2 to negoti-\n"
 , stdout);
  fputs(
-"              fault  if  libcurl  was  built with an SSL library that supports\n"
-"              ALPN. ALPN is used by a libcurl that supports HTTP/2 to  negoti-\n"
 "              ate HTTP/2 support with the server during https sessions.\n"
 "\n"
-"              See  also  --no-npn and --http2. --no-alpn requires that the un-\n"
+"              Example:\n"
+"               curl --no-alpn https://example.com\n"
+"\n"
+"              See also --no-npn and --http2. --no-alpn requires that  the  un-\n"
 "              derlying libcurl was built to support TLS. Added in 7.36.0.\n"
 "\n"
 "       -N, --no-buffer\n"
 "              Disables the buffering of the output stream. In normal work sit-\n"
+"              uations, curl will use a standard buffered  output  stream  that\n"
 , stdout);
  fputs(
-"              uations,  curl  will  use a standard buffered output stream that\n"
 "              will have the effect that it will output the data in chunks, not\n"
-"              necessarily  exactly  when  the data arrives.  Using this option\n"
+"              necessarily exactly when the data arrives.   Using  this  option\n"
 "              will disable that buffering.\n"
 "\n"
-"              Note that this is the negated option name  documented.  You  can\n"
+"              Note  that  this  is the negated option name documented. You can\n"
 "              thus use --buffer to enforce the buffering.\n"
 "\n"
+"              Example:\n"
+"               curl --no-buffer https://example.com\n"
+"\n"
 "       --no-keepalive\n"
 , stdout);
  fputs(
-"              Disables  the  use  of keepalive messages on the TCP connection.\n"
+"              Disables the use of keepalive messages on  the  TCP  connection.\n"
 "              curl otherwise enables them by default.\n"
 "\n"
-"              Note that this is the negated option name  documented.  You  can\n"
+"              Note  that  this  is the negated option name documented. You can\n"
 "              thus use --keepalive to enforce keepalive.\n"
 "\n"
+"              Example:\n"
+"               curl --no-keepalive https://example.com\n"
+"\n"
 "       --no-npn\n"
 "              (HTTPS) Disable the NPN TLS extension. NPN is enabled by default\n"
-"              if libcurl was built with an SSL library that supports NPN.  NPN\n"
 , stdout);
  fputs(
-"              is  used  by  a libcurl that supports HTTP/2 to negotiate HTTP/2\n"
+"              if  libcurl was built with an SSL library that supports NPN. NPN\n"
+"              is used by a libcurl that supports HTTP/2  to  negotiate  HTTP/2\n"
 "              support with the server during https sessions.\n"
 "\n"
-"              See also --no-alpn and --http2. --no-npn requires that  the  un-\n"
+"              Example:\n"
+"               curl --no-npn https://example.com\n"
+"\n"
+"              See  also  --no-alpn and --http2. --no-npn requires that the un-\n"
 "              derlying libcurl was built to support TLS. Added in 7.36.0.\n"
 "\n"
 "       --no-progress-meter\n"
-"              Option to switch off the progress meter output without muting or\n"
-"              otherwise affecting warning and informational messages like  -s,\n"
 , stdout);
  fputs(
+"              Option to switch off the progress meter output without muting or\n"
+"              otherwise  affecting warning and informational messages like -s,\n"
 "              --silent does.\n"
 "\n"
-"              Note  that  this  is the negated option name documented. You can\n"
+"              Note that this is the negated option name  documented.  You  can\n"
 "              thus use --progress-meter to enable the progress meter again.\n"
 "\n"
+"              Example:\n"
+"               curl --no-progress-meter -o store https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              See also -v, --verbose and -s, --silent. Added in 7.67.0.\n"
 "\n"
 "       --no-sessionid\n"
-"              (TLS) Disable curl's use of SSL session-ID caching.  By  default\n"
-"              all  transfers are done using the cache. Note that while nothing\n"
-, stdout);
- fputs(
-"              should ever get hurt by attempting  to  reuse  SSL  session-IDs,\n"
+"              (TLS)  Disable curl's use of SSL session-ID caching.  By default\n"
+"              all transfers are done using the cache. Note that while  nothing\n"
+"              should  ever  get  hurt  by attempting to reuse SSL session-IDs,\n"
 "              there seem to be broken SSL implementations in the wild that may\n"
 "              require you to disable this in order for you to succeed.\n"
 "\n"
-"              Note that this is the negated option name  documented.  You  can\n"
+, stdout);
+ fputs(
+"              Note  that  this  is the negated option name documented. You can\n"
 "              thus use --sessionid to enforce session-ID caching.\n"
 "\n"
-"              Added in 7.16.0.\n"
+"              Example:\n"
+"               curl --no-sessionid https://example.com\n"
 "\n"
 "       --noproxy <no-proxy-list>\n"
+"              Comma-separated list of hosts for which not to use a  proxy,  if\n"
+"              one  is  specified.  The  only wildcard is a single * character,\n"
+"              which matches all hosts, and  effectively  disables  the  proxy.\n"
 , stdout);
  fputs(
-"              Comma-separated  list  of hosts for which not to use a proxy, if\n"
-"              one is specified. The only wildcard is  a  single  *  character,\n"
-"              which  matches  all  hosts,  and effectively disables the proxy.\n"
-"              Each name in this list is matched as either a domain which  con-\n"
-"              tains  the  hostname,  or  the hostname itself. For example, lo-\n"
-"              cal.com would match local.com, local.com:80, and  www.local.com,\n"
-, stdout);
- fputs(
+"              Each  name in this list is matched as either a domain which con-\n"
+"              tains the hostname, or the hostname  itself.  For  example,  lo-\n"
+"              cal.com  would match local.com, local.com:80, and www.local.com,\n"
 "              but not www.notlocal.com.\n"
 "\n"
-"              Since  7.53.0,  This  option overrides the environment variables\n"
-"              that disable the proxy ('no_proxy' and 'NO_PROXY').  If  there's\n"
-"              an  environment  variable disabling a proxy, you can set the no-\n"
+"              Since 7.53.0, This option overrides  the  environment  variables\n"
+"              that  disable  the proxy ('no_proxy' and 'NO_PROXY'). If there's\n"
+, stdout);
+ fputs(
+"              an environment variable disabling a proxy, you can set  the  no-\n"
 "              proxy list to \"\" to override it.\n"
 "\n"
-"              Added in 7.19.4.\n"
+"              Example:\n"
+"               curl --noproxy \"www.example\" https://example.com\n"
 "\n"
 "       --ntlm-wb\n"
 "              (HTTP) Enables NTLM much in the style --ntlm does, but hand over\n"
+"              the authentication to the separate binary  ntlmauth  application\n"
+"              that is executed when needed.\n"
+"\n"
+"              Example:\n"
 , stdout);
  fputs(
-"              the  authentication  to the separate binary ntlmauth application\n"
-"              that is executed when needed.\n"
+"               curl --ntlm-wb -u user:password https://example.com\n"
 "\n"
 "              See also --ntlm and --proxy-ntlm.\n"
 "\n"
-"       --ntlm (HTTP) Enables  NTLM  authentication.  The  NTLM  authentication\n"
+"       --ntlm (HTTP)  Enables  NTLM  authentication.  The  NTLM authentication\n"
 "              method was designed by Microsoft and is used by IIS web servers.\n"
-"              It is a proprietary protocol, reverse-engineered by clever  peo-\n"
+"              It  is a proprietary protocol, reverse-engineered by clever peo-\n"
 "              ple and implemented in curl based on their efforts. This kind of\n"
 , stdout);
  fputs(
-"              behavior should not be endorsed, you should  encourage  everyone\n"
-"              who  uses  NTLM to switch to a public and documented authentica-\n"
+"              behavior  should  not be endorsed, you should encourage everyone\n"
+"              who uses NTLM to switch to a public and  documented  authentica-\n"
 "              tion method instead, such as Digest.\n"
 "\n"
-"              If you want to enable NTLM for your proxy  authentication,  then\n"
+"              If  you  want to enable NTLM for your proxy authentication, then\n"
 "              use --proxy-ntlm.\n"
 "\n"
-"              If  this  option  is  used  several times, only the first one is\n"
+"              If this option is used several times,  only  the  first  one  is\n"
 "              used.\n"
 "\n"
+"              Example:\n"
 , stdout);
  fputs(
-"              See also  --proxy-ntlm.  --ntlm  requires  that  the  underlying\n"
-"              libcurl  was built to support TLS. This option overrides --basic\n"
+"               curl --ntlm -u user:password https://example.com\n"
+"\n"
+"              See  also  --proxy-ntlm.  --ntlm  requires  that  the underlying\n"
+"              libcurl was built to support TLS. This option overrides  --basic\n"
 "              and --negotiate and --digest and --anyauth.\n"
 "\n"
 "       --oauth2-bearer <token>\n"
-"              (IMAP POP3 SMTP HTTP) Specify the Bearer  Token  for  OAUTH  2.0\n"
-"              server  authentication.  The Bearer Token is used in conjunction\n"
-"              with the user name which can be specified as part of  the  --url\n"
+"              (IMAP  POP3  SMTP  HTTP)  Specify the Bearer Token for OAUTH 2.0\n"
+"              server authentication. The Bearer Token is used  in  conjunction\n"
 , stdout);
  fputs(
+"              with  the  user name which can be specified as part of the --url\n"
 "              or -u, --user options.\n"
 "\n"
-"              The  Bearer  Token  and user name are formatted according to RFC\n"
+"              The Bearer Token and user name are formatted  according  to  RFC\n"
 "              6750.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --oauth2-bearer \"mF_9.B5f-4.1JqM\" https://example.com\n"
+"\n"
+"              Added in 7.33.0.\n"
+"\n"
 "       --output-dir <dir>\n"
 "\n"
-"              This option specifies the directory in  which  files  should  be\n"
-"              stored, when -O, --remote-name or -o, --output are used.\n"
-"\n"
-"              The  given  output directory is used for all URLs and output op-\n"
 , stdout);
  fputs(
+"              This  option  specifies  the  directory in which files should be\n"
+"              stored, when -O, --remote-name or -o, --output are used.\n"
+"\n"
+"              The given output directory is used for all URLs and  output  op-\n"
 "              tions on the command line, up until the first -:, --next.\n"
 "\n"
-"              If the specified target directory doesn't exist,  the  operation\n"
+"              If  the specified target directory does not exist, the operation\n"
 "              will fail unless --create-dirs is also used.\n"
 "\n"
+, stdout);
+ fputs(
 "              If this option is used multiple times, the last specified direc-\n"
 "              tory will be used.\n"
 "\n"
-"              See also -O, --remote-name and -J,  --remote-header-name.  Added\n"
+"              Example:\n"
+"               curl --output-dir \"tmp\" -O https://example.com\n"
+"\n"
+"              See  also  -O, --remote-name and -J, --remote-header-name. Added\n"
 "              in 7.73.0.\n"
 "\n"
 "       -o, --output <file>\n"
-, stdout);
- fputs(
 "              Write output to <file> instead of stdout. If you are using {} or\n"
 "              [] to fetch multiple documents, you should quote the URL and you\n"
-"              can  use  '#' followed by a number in the <file> specifier. That\n"
-"              variable will be replaced with the current string  for  the  URL\n"
+, stdout);
+ fputs(
+"              can use '#' followed by a number in the <file>  specifier.  That\n"
+"              variable  will  be  replaced with the current string for the URL\n"
 "              being fetched. Like in:\n"
 "\n"
 "               curl \"http://{one,two}.example.com\" -o \"file_#1.txt\"\n"
 "\n"
 "              or use several variables like:\n"
 "\n"
-, stdout);
- fputs(
 "               curl \"http://{site,host}.host[1-5].com\" -o \"#1_#2\"\n"
 "\n"
-"              You  may use this option as many times as the number of URLs you\n"
-"              have. For example, if you specify two URLs on the  same  command\n"
+"              You may use this option as many times as the number of URLs  you\n"
+, stdout);
+ fputs(
+"              have.  For  example, if you specify two URLs on the same command\n"
 "              line, you can use it like this:\n"
 "\n"
 "                curl -o aa example.com -o bb example.net\n"
 "\n"
-"              and  the  order  of  the -o options and the URLs doesn't matter,\n"
-"              just that the first -o is for the first URL and so  on,  so  the\n"
-, stdout);
- fputs(
+"              and the order of the -o options and the URLs  does  not  matter,\n"
+"              just  that  the  first -o is for the first URL and so on, so the\n"
 "              above command line can also be written as\n"
 "\n"
 "                curl example.com example.net -o aa -o bb\n"
 "\n"
-"              See  also  the --create-dirs option to create the local directo-\n"
-"              ries dynamically. Specifying the output as '-' (a  single  dash)\n"
+, stdout);
+ fputs(
+"              See also the --create-dirs option to create the  local  directo-\n"
+"              ries  dynamically.  Specifying the output as '-' (a single dash)\n"
 "              will force the output to be done to stdout.\n"
 "\n"
+"              To  suppress  response  bodies,  you  can  redirect  output   to\n"
+"              /dev/null:\n"
+"\n"
+"                curl example.com -o /dev/null\n"
+"\n"
+"              Or for Windows use nul:\n"
+"                curl example.com -o nul\n"
+"\n"
+"              Examples:\n"
+, stdout);
+ fputs(
+"               curl -o file https://example.com\n"
+"               curl \"http://{one,two}.example.com\" -o \"file_#1.txt\"\n"
+"               curl \"http://{site,host}.host[1-5].com\" -o \"#1_#2\"\n"
+"               curl -o file https://example.com -o file2 https://example.net\n"
+"\n"
 "              See  also -O, --remote-name, --remote-name-all and -J, --remote-\n"
 "              header-name.\n"
 "\n"
 "       --parallel-immediate\n"
+"              When doing parallel transfers, this option  will  instruct  curl\n"
 , stdout);
  fputs(
-"              When doing parallel transfers, this option  will  instruct  curl\n"
 "              that it should rather prefer opening up more connections in par-\n"
 "              allel at once rather than waiting to see if new transfers can be\n"
 "              added as multiplexed streams on another connection.\n"
 "\n"
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
+"              Example:\n"
+"               curl --parallel-immediate -Z https://example.com -o file1 https://example.com -o file2\n"
+"\n"
+, stdout);
+ fputs(
 "              See also -Z, --parallel and --parallel-max. Added in 7.68.0.\n"
 "\n"
 "       --parallel-max <num>\n"
-"              When  asked to do parallel transfers, using -Z, --parallel, this\n"
-, stdout);
- fputs(
+"              When asked to do parallel transfers, using -Z, --parallel,  this\n"
 "              option controls the maximum amount of transfers to do simultane-\n"
 "              ously.\n"
 "\n"
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
 "              The default is 50.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --parallel-max 100 -Z https://example.com ftp://example.com/\n"
+"\n"
 "              See also -Z, --parallel. Added in 7.66.0.\n"
 "\n"
 "       -Z, --parallel\n"
 "              Makes  curl perform its transfers in parallel as compared to the\n"
 "              regular serial manner.\n"
 "\n"
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --parallel https://example.com -o file1 https://example.com -o file2\n"
+"\n"
 "              Added in 7.66.0.\n"
 "\n"
 "       --pass <phrase>\n"
 "              (SSH TLS) Passphrase for the private key.\n"
 "\n"
-, stdout);
- fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --pass secret --key file https://example.com\n"
+"\n"
 "       --path-as-is\n"
-"              Tell curl to not handle sequences of /../ or /./  in  the  given\n"
-"              URL  path.  Normally curl will squash or merge them according to\n"
+"              Tell  curl  to  not handle sequences of /../ or /./ in the given\n"
+, stdout);
+ fputs(
+"              URL path. Normally curl will squash or merge them  according  to\n"
 "              standards but with this option set you tell it not to do that.\n"
 "\n"
+"              Example:\n"
+"               curl --path-as-is https://example.com/../../etc/passwd\n"
+"\n"
 "              Added in 7.42.0.\n"
 "\n"
 "       --pinnedpubkey <hashes>\n"
-"              (TLS) Tells curl to  use  the  specified  public  key  file  (or\n"
+"              (TLS)  Tells  curl  to  use  the  specified  public key file (or\n"
+"              hashes) to verify the peer. This can be a path to a  file  which\n"
 , stdout);
  fputs(
-"              hashes)  to  verify the peer. This can be a path to a file which\n"
 "              contains a single public key in PEM or DER format, or any number\n"
 "              of base64 encoded sha256 hashes preceded by 'sha256//' and sepa-\n"
-"              rated by ';'\n"
+"              rated by ';'.\n"
 "\n"
-"              When negotiating a TLS or SSL connection,  the  server  sends  a\n"
-"              certificate  indicating  its identity. A public key is extracted\n"
+"              When  negotiating  a  TLS  or SSL connection, the server sends a\n"
+"              certificate indicating its identity. A public key  is  extracted\n"
+"              from  this certificate and if it does not exactly match the pub-\n"
 , stdout);
  fputs(
-"              from this certificate and if it does not exactly match the  pub-\n"
-"              lic  key provided to this option, curl will abort the connection\n"
+"              lic key provided to this option, curl will abort the  connection\n"
 "              before sending or receiving any data.\n"
 "\n"
 "              PEM/DER support:\n"
@@ -2508,61 +2991,73 @@
 "\n"
 "              7.47.0: mbedtls\n"
 "\n"
-, stdout);
- fputs(
 "              Other SSL backends not supported.\n"
 "\n"
+, stdout);
+ fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl --pinnedpubkey keyfile https://example.com\n"
+"               curl --pinnedpubkey 'sha256//ce118b51897f4452dc' https://example.com\n"
+"\n"
+"              Added in 7.39.0.\n"
+"\n"
 "       --post301\n"
 "              (HTTP) Tells curl to respect RFC 7231/6.4.2 and not convert POST\n"
 "              requests into GET requests when following a 301 redirection. The\n"
-"              non-RFC behavior is ubiquitous in web browsers, so curl does the\n"
-"              conversion by default to maintain consistency. However, a server\n"
 , stdout);
  fputs(
-"              may require a POST to remain a POST after  such  a  redirection.\n"
+"              non-RFC behavior is ubiquitous in web browsers, so curl does the\n"
+"              conversion by default to maintain consistency. However, a server\n"
+"              may  require  a  POST to remain a POST after such a redirection.\n"
 "              This option is meaningful only when using -L, --location.\n"
 "\n"
-"              See  also  --post302,  --post303  and  -L,  --location. Added in\n"
-"              7.17.1.\n"
+"              Example:\n"
+"               curl --post301 --location -d \"data\" https://example.com\n"
+"\n"
+"              See also --post302, --post303 and -L, --location.\n"
 "\n"
 "       --post302\n"
-"              (HTTP) Tells curl to respect RFC 7231/6.4.3 and not convert POST\n"
-"              requests into GET requests when following a 302 redirection. The\n"
 , stdout);
  fputs(
+"              (HTTP) Tells curl to respect RFC 7231/6.4.3 and not convert POST\n"
+"              requests into GET requests when following a 302 redirection. The\n"
 "              non-RFC behavior is ubiquitous in web browsers, so curl does the\n"
 "              conversion by default to maintain consistency. However, a server\n"
 "              may require a POST to remain a POST after  such  a  redirection.\n"
 "              This option is meaningful only when using -L, --location.\n"
 "\n"
-"              See  also  --post301,  --post303  and  -L,  --location. Added in\n"
-"              7.19.1.\n"
-"\n"
-"       --post303\n"
+"              Example:\n"
 , stdout);
  fputs(
+"               curl --post302 --location -d \"data\" https://example.com\n"
+"\n"
+"              See also --post301, --post303 and -L, --location.\n"
+"\n"
+"       --post303\n"
 "              (HTTP) Tells curl to violate RFC 7231/6.4.4 and not convert POST\n"
-"              requests  into  GET  requests when following 303 redirections. A\n"
+"              requests into GET requests when following  303  redirections.  A\n"
 "              server may require a POST to remain a POST after a 303 redirect-\n"
 "              ion. This option is meaningful only when using -L, --location.\n"
 "\n"
-"              See  also  --post302,  --post301  and  -L,  --location. Added in\n"
-"              7.26.0.\n"
-"\n"
-"       --preproxy [protocol://]host[:port]\n"
+"              Example:\n"
 , stdout);
  fputs(
+"               curl --post303 --location -d \"data\" https://example.com\n"
+"\n"
+"              See also --post302, --post301 and -L, --location.\n"
+"\n"
+"       --preproxy [protocol://]host[:port]\n"
 "              Use the specified SOCKS proxy before connecting to  an  HTTP  or\n"
 "              HTTPS  -x,  --proxy.  In  such a case curl first connects to the\n"
 "              SOCKS proxy and then connects (through SOCKS)  to  the  HTTP  or\n"
 "              HTTPS proxy. Hence pre proxy.\n"
 "\n"
-"              The pre proxy string should be specified with a protocol:// pre-\n"
-"              fix to  specify  alternative  proxy  protocols.  Use  socks4://,\n"
 , stdout);
  fputs(
+"              The pre proxy string should be specified with a protocol:// pre-\n"
+"              fix to  specify  alternative  proxy  protocols.  Use  socks4://,\n"
 "              socks4a://,  socks5://  or  socks5h://  to  request the specific\n"
 "              SOCKS version to be used. No protocol specified will  make  curl\n"
 "              default to SOCKS4.\n"
@@ -2570,82 +3065,88 @@
 "              If  the  port number is not specified in the proxy string, it is\n"
 "              assumed to be 1080.\n"
 "\n"
-"              User and password that might be provided in the proxy string are\n"
-"              URL  decoded by curl. This allows you to pass in special charac-\n"
 , stdout);
  fputs(
+"              User and password that might be provided in the proxy string are\n"
+"              URL  decoded by curl. This allows you to pass in special charac-\n"
 "              ters such as @ by using %40 or pass in a colon with %3a.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --preproxy socks5://proxy.example -x http://http.example https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       -#, --progress-bar\n"
+, stdout);
+ fputs(
 "              Make curl display transfer progress as a simple progress bar in-\n"
 "              stead of the standard, more informational, meter.\n"
 "\n"
 "              This  progress  bar draws a single line of '#' characters across\n"
-, stdout);
- fputs(
 "              the screen and shows a percentage if the transfer size is known.\n"
 "              For  transfers  without  a  known size, there will be space ship\n"
 "              (-=o=-) that moves back and forth but only while data  is  being\n"
+, stdout);
+ fputs(
 "              transferred, with a set of flying hash sign symbols on top.\n"
 "\n"
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
+"              Example:\n"
+"               curl -# -O https://example.com\n"
+"\n"
 "       --proto-default <protocol>\n"
 "              Tells curl to use protocol for any URL missing a scheme name.\n"
 "\n"
-"              Example:\n"
+"              An unknown or unsupported  protocol  causes  error  CURLE_UNSUP-\n"
+"              PORTED_PROTOCOL (1).\n"
 "\n"
 , stdout);
  fputs(
-"               curl --proto-default https ftp.mozilla.org\n"
-"\n"
-"              An  unknown  or  unsupported  protocol causes error CURLE_UNSUP-\n"
-"              PORTED_PROTOCOL (1).\n"
-"\n"
 "              This option does not change the default proxy protocol (http).\n"
 "\n"
-"              Without this option curl would make a guess based on  the  host,\n"
-"              see --url for details.\n"
+"              Without this option set, curl guesses protocol based on the host\n"
+"              name, see --url for details.\n"
+"\n"
+"              Example:\n"
+"               curl --proto-default https ftp.example.com\n"
 "\n"
 "              Added in 7.45.0.\n"
 "\n"
 "       --proto-redir <protocols>\n"
+"              Tells curl to limit what protocols it may use on redirect.  Pro-\n"
 , stdout);
  fputs(
-"              Tells  curl to limit what protocols it may use on redirect. Pro-\n"
-"              tocols denied by --proto are not overridden by this option.  See\n"
+"              tocols  denied by --proto are not overridden by this option. See\n"
 "              --proto for how protocols are represented.\n"
 "\n"
 "              Example, allow only HTTP and HTTPS on redirect:\n"
 "\n"
 "               curl --proto-redir -all,http,https http://example.com\n"
 "\n"
-"              By default curl will allow HTTP, HTTPS, FTP and FTPS on redirect\n"
+"              By default curl will only allow HTTP, HTTPS, FTP and FTPS on re-\n"
+"              direct (since 7.65.2). Specifying all or +all enables all proto-\n"
+"              cols on redirects, which is not good for security.\n"
+"\n"
 , stdout);
  fputs(
-"              (7.65.2).  Older versions of curl allowed all protocols on redi-\n"
-"              rect  except several disabled for security reasons: Since 7.19.4\n"
-"              FILE and SCP are disabled, and since 7.40.0  SMB  and  SMBS  are\n"
-"              also  disabled.  Specifying all or +all enables all protocols on\n"
-"              redirect, including those disabled for security.\n"
-"\n"
-"              Added in 7.20.2.\n"
+"              Example:\n"
+"               curl --proto-redir =http,https https://example.com\n"
 "\n"
 "       --proto <protocols>\n"
-, stdout);
- fputs(
 "              Tells curl to limit what protocols it  may  use  for  transfers.\n"
 "              Protocols  are evaluated left to right, are comma separated, and\n"
 "              are each a protocol name or 'all', optionally prefixed  by  zero\n"
 "              or more modifiers. Available modifiers are:\n"
 "\n"
 "              +  Permit this protocol in addition to protocols already permit-\n"
-"                 ted (this is the default if no modifier is used).\n"
-"\n"
 , stdout);
  fputs(
+"                 ted (this is the default if no modifier is used).\n"
+"\n"
 "              -  Deny this protocol, removing it from the  list  of  protocols\n"
 "                 already permitted.\n"
 "\n"
@@ -2657,9 +3158,9 @@
 "\n"
 "              --proto -ftps  uses the default protocols, but disables ftps\n"
 "\n"
-"              --proto -all,https,+http\n"
 , stdout);
  fputs(
+"              --proto -all,https,+http\n"
 "                             only enables http and https\n"
 "\n"
 "              --proto =http,https\n"
@@ -2676,194 +3177,283 @@
 "              is  the same as concatenating the protocols into one instance of\n"
 "              the option.\n"
 "\n"
-"              See also --proto-redir and --proto-default. Added in 7.20.2.\n"
+"              Example:\n"
+"               curl --proto =http,https,sftp https://example.com\n"
+"\n"
+"              See also --proto-redir and --proto-default.\n"
 "\n"
 "       --proxy-anyauth\n"
 "              Tells curl to pick a suitable authentication method when  commu-\n"
+, stdout);
+ fputs(
 "              nicating  with  the  given HTTP proxy. This might cause an extra\n"
 "              request/response round-trip.\n"
 "\n"
-, stdout);
- fputs(
-"              See also -x, --proxy, --proxy-basic and --proxy-digest. Added in\n"
-"              7.13.2.\n"
+"              Example:\n"
+"               curl --proxy-anyauth --proxy-user user:passwd -x proxy https://example.com\n"
+"\n"
+"              See also -x, --proxy, --proxy-basic and --proxy-digest.\n"
 "\n"
 "       --proxy-basic\n"
-"              Tells  curl  to use HTTP Basic authentication when communicating\n"
+"              Tells curl to use HTTP Basic authentication  when  communicating\n"
 "              with the given proxy. Use --basic for enabling HTTP Basic with a\n"
-"              remote  host.  Basic  is  the default authentication method curl\n"
+, stdout);
+ fputs(
+"              remote host. Basic is the  default  authentication  method  curl\n"
 "              uses with proxies.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-basic --proxy-user user:passwd -x proxy https://example.com\n"
+"\n"
 "              See also -x, --proxy, --proxy-anyauth and --proxy-digest.\n"
 "\n"
 "       --proxy-cacert <file>\n"
-, stdout);
- fputs(
 "              Same as --cacert but used in HTTPS proxy context.\n"
 "\n"
-"              See also --proxy-capath, --cacert,  --capath  and  -x,  --proxy.\n"
+"              Example:\n"
+"               curl --proxy-cacert CA-file.txt -x https://proxy https://example.com\n"
+"\n"
+, stdout);
+ fputs(
+"              See  also  --proxy-capath,  --cacert,  --capath and -x, --proxy.\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-capath <dir>\n"
 "              Same as --capath but used in HTTPS proxy context.\n"
 "\n"
-"              See  also  --proxy-cacert,  -x,  --proxy  and --capath. Added in\n"
+"              Example:\n"
+"               curl --proxy-capath /local/directory -x https://proxy https://example.com\n"
+"\n"
+"              See also --proxy-cacert, -x,  --proxy  and  --capath.  Added  in\n"
 "              7.52.0.\n"
 "\n"
 "       --proxy-cert-type <type>\n"
-"              Same as --cert-type but used in HTTPS proxy context.\n"
-"\n"
 , stdout);
  fputs(
+"              Same as --cert-type but used in HTTPS proxy context.\n"
+"\n"
+"              Example:\n"
+"               curl --proxy-cert-type PEM --proxy-cert file -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-cert <cert[:passwd]>\n"
 "              Same as -E, --cert but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-cert file -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-ciphers <list>\n"
+, stdout);
+ fputs(
 "              Same as --ciphers but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-ciphers ECDHE-ECDSA-AES256-CCM8 -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-crlfile <file>\n"
 "              Same as --crlfile but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-crlfile rejects.txt -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-digest\n"
 , stdout);
  fputs(
-"              Tells curl to use HTTP Digest authentication when  communicating\n"
+"              Tells  curl to use HTTP Digest authentication when communicating\n"
 "              with the given proxy. Use --digest for enabling HTTP Digest with\n"
 "              a remote host.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-digest --proxy-user user:passwd -x proxy https://example.com\n"
+"\n"
 "              See also -x, --proxy, --proxy-anyauth and --proxy-basic.\n"
 "\n"
 "       --proxy-header <header/@file>\n"
-"              (HTTP) Extra header to include in the request when sending  HTTP\n"
-"              to a proxy. You may specify any number of extra headers. This is\n"
+"              (HTTP)  Extra header to include in the request when sending HTTP\n"
 , stdout);
  fputs(
-"              the equivalent option to -H, --header but is for proxy  communi-\n"
-"              cation  only  like  in CONNECT requests when you want a separate\n"
-"              header sent to the proxy to what is sent to  the  actual  remote\n"
+"              to a proxy. You may specify any number of extra headers. This is\n"
+"              the  equivalent option to -H, --header but is for proxy communi-\n"
+"              cation only like in CONNECT requests when you  want  a  separate\n"
+"              header  sent  to  the proxy to what is sent to the actual remote\n"
 "              host.\n"
 "\n"
-"              curl  will  make  sure  that each header you add/replace is sent\n"
+"              curl will make sure that each header  you  add/replace  is  sent\n"
 "              with the proper end-of-line marker, you should thus not add that\n"
-"              as a part of the header content: do not add newlines or carriage\n"
 , stdout);
  fputs(
+"              as a part of the header content: do not add newlines or carriage\n"
 "              returns, they will only mess things up for you.\n"
 "\n"
-"              Headers specified with this option will not be included  in  re-\n"
+"              Headers  specified  with this option will not be included in re-\n"
 "              quests that curl knows will not be sent to a proxy.\n"
 "\n"
-"              Starting  in  7.55.0, this option can take an argument in @file-\n"
-"              name style, which then adds a header for each line in the  input\n"
+"              Starting in 7.55.0, this option can take an argument  in  @file-\n"
+"              name  style, which then adds a header for each line in the input\n"
+, stdout);
+ fputs(
 "              file. Using @- will make curl read the header file from stdin.\n"
 "\n"
+"              This option can be used  multiple  times  to  add/replace/remove\n"
+"              multiple headers.\n"
+"\n"
+"              Examples:\n"
+"               curl --proxy-header \"X-First-Name: Joe\" -x http://proxy https://example.com\n"
+"               curl --proxy-header \"User-Agent: surprise\" -x http://proxy https://example.com\n"
+"               curl --proxy-header \"Host:\" -x http://proxy https://example.com\n"
+"\n"
 , stdout);
  fputs(
-"              This  option  can  be  used multiple times to add/replace/remove\n"
-"              multiple headers.\n"
-"\n"
 "              Added in 7.37.0.\n"
 "       --proxy-insecure\n"
 "              Same as -k, --insecure but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-insecure -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-key-type <type>\n"
 "              Same as --key-type but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-key-type DER --proxy-key here -x https://proxy https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-key <key>\n"
 "              Same as --key but used in HTTPS proxy context.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl --proxy-key here -x https://proxy https://example.com\n"
+"\n"
+"              Added in 7.52.0.\n"
+"\n"
 "       --proxy-negotiate\n"
-"              Tells curl to use HTTP Negotiate  (SPNEGO)  authentication  when\n"
+"              Tells  curl  to  use HTTP Negotiate (SPNEGO) authentication when\n"
 "              communicating with the given proxy. Use --negotiate for enabling\n"
 "              HTTP Negotiate (SPNEGO) with a remote host.\n"
 "\n"
-"              See also --proxy-anyauth and --proxy-basic. Added in 7.17.1.\n"
-"\n"
-"       --proxy-ntlm\n"
-"              Tells curl to use HTTP NTLM  authentication  when  communicating\n"
-"              with the given proxy. Use --ntlm for enabling NTLM with a remote\n"
 , stdout);
  fputs(
+"              Example:\n"
+"               curl --proxy-negotiate --proxy-user user:passwd -x proxy https://example.com\n"
+"\n"
+"              See also --proxy-anyauth and --proxy-basic.\n"
+"\n"
+"       --proxy-ntlm\n"
+"              Tells  curl  to  use HTTP NTLM authentication when communicating\n"
+"              with the given proxy. Use --ntlm for enabling NTLM with a remote\n"
 "              host.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-ntlm --proxy-user user:passwd -x http://proxy https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              See also --proxy-negotiate and --proxy-anyauth.\n"
 "\n"
 "       --proxy-pass <phrase>\n"
 "              Same as --pass but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-pass secret --proxy-key here -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-pinnedpubkey <hashes>\n"
-"              (TLS) Tells curl to  use  the  specified  public  key  file  (or\n"
-"              hashes)  to verify the proxy. This can be a path to a file which\n"
-"              contains a single public key in PEM or DER format, or any number\n"
+"              (TLS)  Tells  curl  to  use  the  specified  public key file (or\n"
+"              hashes) to verify the proxy. This can be a path to a file  which\n"
 , stdout);
  fputs(
+"              contains a single public key in PEM or DER format, or any number\n"
 "              of base64 encoded sha256 hashes preceded by 'sha256//' and sepa-\n"
-"              rated by ';'\n"
+"              rated by ';'.\n"
 "\n"
-"              When negotiating a TLS or SSL connection,  the  server  sends  a\n"
-"              certificate  indicating  its identity. A public key is extracted\n"
-"              from this certificate and if it does not exactly match the  pub-\n"
-"              lic  key provided to this option, curl will abort the connection\n"
+"              When  negotiating  a  TLS  or SSL connection, the server sends a\n"
+"              certificate indicating its identity. A public key  is  extracted\n"
+"              from  this certificate and if it does not exactly match the pub-\n"
+, stdout);
+ fputs(
+"              lic key provided to this option, curl will abort the  connection\n"
 "              before sending or receiving any data.\n"
 "\n"
-, stdout);
- fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl --proxy-pinnedpubkey keyfile https://example.com\n"
+"               curl --proxy-pinnedpubkey 'sha256//ce118b51897f4452dc' https://example.com\n"
+"\n"
+"              Added in 7.59.0.\n"
+"\n"
 "       --proxy-service-name <name>\n"
-"              This option allows you to change the service name for proxy  ne-\n"
+, stdout);
+ fputs(
+"              This  option allows you to change the service name for proxy ne-\n"
 "              gotiation.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-service-name \"shrubbery\" -x proxy https://example.com\n"
+"\n"
 "              Added in 7.43.0.\n"
 "\n"
 "       --proxy-ssl-allow-beast\n"
 "              Same as --ssl-allow-beast but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-ssl-allow-beast -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
-"       --proxy-ssl-auto-client-cert\n"
 , stdout);
  fputs(
+"       --proxy-ssl-auto-client-cert\n"
 "              Same as --ssl-auto-client-cert but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-ssl-auto-client-cert -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.77.0.\n"
 "\n"
 "       --proxy-tls13-ciphers <ciphersuite list>\n"
-"              (TLS)  Specifies which cipher suites to use in the connection to\n"
+"              (TLS) Specifies which cipher suites to use in the connection  to\n"
 "              your HTTPS proxy when it negotiates TLS 1.3. The list of ciphers\n"
-"              suites  must  specify  valid  ciphers. Read up on TLS 1.3 cipher\n"
+, stdout);
+ fputs(
+"              suites must specify valid ciphers. Read up  on  TLS  1.3  cipher\n"
 "              suite details on this URL:\n"
 "\n"
 "               https://curl.se/docs/ssl-ciphers.html\n"
 "\n"
-, stdout);
- fputs(
-"              This option is currently used only when curl  is  built  to  use\n"
+"              This  option  is  currently  used only when curl is built to use\n"
 "              OpenSSL 1.1.1 or later. If you are using a different SSL backend\n"
-"              you can try setting TLS 1.3 cipher suites by using the  --proxy-\n"
+"              you  can try setting TLS 1.3 cipher suites by using the --proxy-\n"
 "              ciphers option.\n"
 "\n"
+, stdout);
+ fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-tls13-ciphers TLS_AES_128_GCM_SHA256 -x proxy https://example.com\n"
+"\n"
+"              Added in 7.61.0.\n"
+"\n"
 "       --proxy-tlsauthtype <type>\n"
 "              Same as --tlsauthtype but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-tlsauthtype SRP -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 , stdout);
@@ -2871,73 +3461,84 @@
 "       --proxy-tlspassword <string>\n"
 "              Same as --tlspassword but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-tlspassword passwd -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-tlsuser <name>\n"
 "              Same as --tlsuser but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-tlsuser smith -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --proxy-tlsv1\n"
+, stdout);
+ fputs(
 "              Same as -1, --tlsv1 but used in HTTPS proxy context.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy-tlsv1 -x https://proxy https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       -U, --proxy-user <user:password>\n"
-, stdout);
- fputs(
-"              Specify  the user name and password to use for proxy authentica-\n"
+"              Specify the user name and password to use for proxy  authentica-\n"
 "              tion.\n"
 "\n"
-"              If you use a Windows SSPI-enabled curl binary and do either  Ne-\n"
-"              gotiate  or NTLM authentication then you can tell curl to select\n"
+"              If  you use a Windows SSPI-enabled curl binary and do either Ne-\n"
+"              gotiate or NTLM authentication then you can tell curl to  select\n"
+, stdout);
+ fputs(
 "              the user name and password from your environment by specifying a\n"
 "              single colon with this option: \"-U :\".\n"
 "\n"
 "              On systems where it works, curl will hide the given option argu-\n"
+"              ment  from  process listings. This is not enough to protect cre-\n"
+"              dentials from possibly getting seen by other users on  the  same\n"
+"              system  as  they will still be visible for a brief moment before\n"
 , stdout);
  fputs(
-"              ment from process listings. This is not enough to  protect  cre-\n"
-"              dentials  from  possibly getting seen by other users on the same\n"
-"              system as they will still be visible for a brief  moment  before\n"
 "              cleared. Such sensitive data should be retrieved from a file in-\n"
 "              stead or similar and never used in clear text in a command line.\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl --proxy-user name:pwd -x proxy https://example.com\n"
+"\n"
 "       -x, --proxy [protocol://]host[:port]\n"
 "              Use the specified proxy.\n"
 "\n"
-"              The proxy string can be specified with a protocol:// prefix.  No\n"
-"              protocol specified or http:// will be treated as HTTP proxy. Use\n"
-"              socks4://, socks4a://, socks5:// or socks5h:// to request a spe-\n"
-"              cific SOCKS version to be used.  (The protocol support was added\n"
-"              in curl 7.21.7)\n"
-"\n"
+"              The  proxy string can be specified with a protocol:// prefix. No\n"
 , stdout);
  fputs(
+"              protocol specified or http:// will be treated as HTTP proxy. Use\n"
+"              socks4://, socks4a://, socks5:// or socks5h:// to request a spe-\n"
+"              cific SOCKS version to be used.\n"
+"\n"
 "              HTTPS proxy support via https:// protocol prefix  was  added  in\n"
 "              7.52.0 for OpenSSL, GnuTLS and NSS.\n"
 "\n"
 "              Unrecognized  and  unsupported  proxy  protocols  cause an error\n"
 "              since 7.52.0.  Prior versions may ignore the  protocol  and  use\n"
+, stdout);
+ fputs(
 "              http:// instead.\n"
 "\n"
 "              If  the  port number is not specified in the proxy string, it is\n"
 "              assumed to be 1080.\n"
 "\n"
-, stdout);
- fputs(
 "              This option overrides existing environment  variables  that  set\n"
 "              the  proxy  to use. If there's an environment variable setting a\n"
 "              proxy, you can set proxy to \"\" to override it.\n"
 "\n"
 "              All operations that are performed over an HTTP proxy will trans-\n"
-"              parently  be  converted  to HTTP. It means that certain protocol\n"
-"              specific operations might not be available. This is not the case\n"
 , stdout);
  fputs(
+"              parently  be  converted  to HTTP. It means that certain protocol\n"
+"              specific operations might not be available. This is not the case\n"
 "              if you can tunnel through the proxy, as one with the -p, --prox-\n"
 "              ytunnel option.\n"
 "\n"
@@ -2945,36 +3546,47 @@
 "              URL  decoded by curl. This allows you to pass in special charac-\n"
 "              ters such as @ by using %40 or pass in a colon with %3a.\n"
 "\n"
-"              The proxy host can be specified the exact same way as the  proxy\n"
-"              environment  variables,  including the protocol prefix (http://)\n"
 , stdout);
  fputs(
+"              The proxy host can be specified the exact same way as the  proxy\n"
+"              environment  variables,  including the protocol prefix (http://)\n"
 "              and the embedded user + password.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy http://proxy.example https://example.com\n"
+"\n"
 "       --proxy1.0 <host[:port]>\n"
 "              Use the specified HTTP 1.0 proxy. If  the  port  number  is  not\n"
+, stdout);
+ fputs(
 "              specified, it is assumed at port 1080.\n"
 "\n"
 "              The  only  difference between this and the HTTP proxy option -x,\n"
 "              --proxy, is that attempts to use CONNECT through the proxy  will\n"
-, stdout);
- fputs(
 "              specify an HTTP 1.0 protocol instead of the default HTTP 1.1.\n"
 "\n"
+"              Example:\n"
+"               curl --proxy1.0 -x http://proxy https://example.com\n"
+"\n"
 "       -p, --proxytunnel\n"
 "              When  an  HTTP  proxy is used -x, --proxy, this option will make\n"
+, stdout);
+ fputs(
 "              curl tunnel through the proxy. The tunnel approach is made  with\n"
 "              the  HTTP  proxy CONNECT request and requires that the proxy al-\n"
 "              lows direct connect to the remote port number curl wants to tun-\n"
 "              nel through to.\n"
 "\n"
-, stdout);
- fputs(
 "              To  suppress  proxy CONNECT response headers when curl is set to\n"
 "              output headers use --suppress-connect-headers.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --proxytunnel -x http://proxy https://example.com\n"
+"\n"
 "              See also -x, --proxy.\n"
 "\n"
 "       --pubkey <key>\n"
@@ -2983,13 +3595,16 @@
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "              (As of 7.39.0, curl attempts to automatically extract the public\n"
+"              key from the private key file, so passing this option is  gener-\n"
 , stdout);
  fputs(
-"              key from the private key file, so passing this option is  gener-\n"
 "              ally not required. Note that this public key extraction requires\n"
 "              libcurl to be linked against a copy of libssh2 1.2.8  or  higher\n"
 "              that is itself linked against OpenSSL.)\n"
 "\n"
+"              Example:\n"
+"               curl --pubkey file.pub sftp://example.com/\n"
+"\n"
 "       -Q, --quote <command>\n"
 "              (FTP  SFTP)  Send an arbitrary command to the remote FTP or SFTP\n"
 "              server. Quote commands are sent BEFORE the transfer takes  place\n"
@@ -3004,14 +3619,14 @@
 "\n"
 , stdout);
  fputs(
-"              If the server returns failure for one of the commands,  the  en-\n"
-"              tire operation will be aborted. You must send syntactically cor-\n"
-"              rect FTP commands as RFC 959 defines to FTP servers, or  one  of\n"
-"              the commands listed below to SFTP servers.\n"
+"              By default curl will stop at first failure. To  make  curl  con-\n"
+"              tinue  even if the command fails, prefix the command with an as-\n"
+"              terisk (*). Otherwise, if the server returns failure for one  of\n"
+"              the commands, the entire operation will be aborted.\n"
 "\n"
-"              Prefix  the  command  with an asterisk (*) to make curl continue\n"
-"              even if the command fails as by default curl will stop at  first\n"
-"              failure.\n"
+"              You  must send syntactically correct FTP commands as RFC 959 de-\n"
+"              fines to FTP servers, or one of the  commands  listed  below  to\n"
+"              SFTP servers.\n"
 "\n"
 , stdout);
  fputs(
@@ -3090,14 +3705,20 @@
 "              symlink source_file target_file\n"
 "                     See ln.\n"
 "\n"
+"       Example:\n"
+"        curl --quote \"DELE file\" ftp://example.com/foo\n"
+"\n"
 "       --random-file <file>\n"
 "              Specify the path name to file containing what will be considered\n"
 "              as random data. The data may be used to seed the  random  engine\n"
 "              for SSL connections.  See also the --egd-file option.\n"
 "\n"
-"       -r, --range <range>\n"
+"              Example:\n"
 , stdout);
  fputs(
+"               curl --random-file rubbish https://example.com\n"
+"\n"
+"       -r, --range <range>\n"
 "              (HTTP FTP SFTP FILE) Retrieve a byte range (i.e. a partial docu-\n"
 "              ment) from an HTTP/1.1, FTP or SFTP  server  or  a  local  FILE.\n"
 "              Ranges can be specified in a number of ways.\n"
@@ -3108,10 +3729,10 @@
 "\n"
 "              -500      specifies the last 500 bytes\n"
 "\n"
-"              9500-     specifies the bytes from offset 9500 and forward\n"
-"\n"
 , stdout);
  fputs(
+"              9500-     specifies the bytes from offset 9500 and forward\n"
+"\n"
 "              0-0,-1    specifies the first and last byte only(*)(HTTP)\n"
 "\n"
 "              100-199,500-599\n"
@@ -3120,10 +3741,10 @@
 "              (*)  = NOTE that this will cause the server to reply with a mul-\n"
 "              tipart response, which will be returned as-is by  curl!  Parsing\n"
 "              or otherwise transforming this response is the responsibility of\n"
-"              the caller.\n"
-"\n"
 , stdout);
  fputs(
+"              the caller.\n"
+"\n"
 "              Only digit characters (0-9) are valid in the 'start' and  'stop'\n"
 "              fields  of the 'start-stop' range syntax. If a non-digit charac-\n"
 "              ter is given in the range, the server's response will be unspec-\n"
@@ -3133,7 +3754,7 @@
 "              this feature enabled, so that when you attempt to get  a  range,\n"
 , stdout);
  fputs(
-"              you'll instead get the whole document.\n"
+"              you will instead get the whole document.\n"
 "\n"
 "              FTP  and  SFTP  range  downloads only support the simple 'start-\n"
 "              stop' syntax (optionally with one of the numbers  omitted).  FTP\n"
@@ -3141,51 +3762,65 @@
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"       --raw  (HTTP) When used, it disables all internal HTTP decoding of con-\n"
+"              Example:\n"
+"               curl --range 22-44 https://example.com\n"
+"\n"
 , stdout);
  fputs(
+"       --raw  (HTTP) When used, it disables all internal HTTP decoding of con-\n"
 "              tent or transfer encodings and instead makes them passed on  un-\n"
 "              altered, raw.\n"
 "\n"
-"              Added in 7.16.2.\n"
+"              Example:\n"
+"               curl --raw https://example.com\n"
 "\n"
 "       -e, --referer <URL>\n"
 "              (HTTP) Sends the \"Referrer Page\" information to the HTTP server.\n"
 "              This can also be set with the -H, --header flag of course.  When\n"
-"              used  with  -L,  --location  you  can  append \";auto\" to the -e,\n"
-"              --referer URL to make curl automatically set  the  previous  URL\n"
 , stdout);
  fputs(
+"              used  with  -L,  --location  you  can  append \";auto\" to the -e,\n"
+"              --referer URL to make curl automatically set  the  previous  URL\n"
 "              when  it  follows  a Location: header. The \";auto\" string can be\n"
-"              used alone, even if you don't set an initial -e, --referer.\n"
+"              used alone, even if you do not set an initial -e, --referer.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl --referer \"https://fake.example\" https://example.com\n"
+, stdout);
+ fputs(
+"               curl --referer \"https://fake.example;auto\" -L https://example.com\n"
+"               curl --referer \";auto\" -L https://example.com\n"
+"\n"
 "              See also -A, --user-agent and -H, --header.\n"
 "\n"
 "       -J, --remote-header-name\n"
 "              (HTTP) This option tells the -O, --remote-name option to use the\n"
 "              server-specified  Content-Disposition  filename  instead  of ex-\n"
-, stdout);
- fputs(
 "              tracting a filename from the URL.\n"
 "\n"
-"              If the server specifies a file name and a file  with  that  name\n"
-"              already  exists  in the current working directory it will not be\n"
-"              overwritten and an error will occur. If the server doesn't spec-\n"
-"              ify a file name then this option has no effect.\n"
-"\n"
-"              There's  no  attempt to decode %-sequences (yet) in the provided\n"
 , stdout);
  fputs(
+"              If the server specifies a file name and a file  with  that  name\n"
+"              already  exists  in the current working directory it will not be\n"
+"              overwritten and an error will occur.  If  the  server  does  not\n"
+"              specify a file name then this option has no effect.\n"
+"\n"
+"              There's  no  attempt to decode %-sequences (yet) in the provided\n"
 "              file name, so this option may provide you with rather unexpected\n"
 "              file names.\n"
 "\n"
+, stdout);
+ fputs(
 "              WARNING:  Exercise  judicious  use of this option, especially on\n"
 "              Windows. A rogue server could send you the  name  of  a  DLL  or\n"
 "              other  file  that could possibly be loaded automatically by Win-\n"
 "              dows or some third party software.\n"
 "\n"
+"              Example:\n"
+"               curl -OJ https://example.com/file\n"
+"\n"
 "       --remote-name-all\n"
 "              This option changes the default action for all given URLs to  be\n"
 , stdout);
@@ -3194,71 +3829,83 @@
 "              you want to disable that for a specific URL after --remote-name-\n"
 "              all has been used, you must use \"-o -\" or --no-remote-name.\n"
 "\n"
-"              Added in 7.19.0.\n"
+"              Example:\n"
+"               curl --remote-name-all ftp://example.com/file1 ftp://example.com/file2\n"
 "\n"
 "       -O, --remote-name\n"
 "              Write  output to a local file named like the remote file we get.\n"
+, stdout);
+ fputs(
 "              (Only the file part of the remote file is used, the path is  cut\n"
 "              off.)\n"
 "\n"
-, stdout);
- fputs(
 "              The  file will be saved in the current working directory. If you\n"
 "              want the file saved in a  different  directory,  make  sure  you\n"
 "              change  the  current working directory before invoking curl with\n"
 "              this option.\n"
 "\n"
 "              The remote file name to use for saving  is  extracted  from  the\n"
-"              given  URL,  nothing  else,  and if it already exists it will be\n"
 , stdout);
  fputs(
+"              given  URL,  nothing  else,  and if it already exists it will be\n"
 "              overwritten. If you want the server to be  able  to  choose  the\n"
 "              file name refer to -J, --remote-header-name which can be used in\n"
 "              addition to this option. If the server chooses a file  name  and\n"
 "              that name already exists it will not be overwritten.\n"
 "\n"
 "              There is no URL decoding done on the file name. If it has %20 or\n"
+, stdout);
+ fputs(
 "              other URL encoded parts of the name, they will end up  as-is  as\n"
 "              file name.\n"
 "\n"
-, stdout);
- fputs(
 "              You  may use this option as many times as the number of URLs you\n"
 "              have.\n"
 "\n"
+"              Example:\n"
+"               curl -O https://example.com/filename\n"
+"\n"
 "       -R, --remote-time\n"
 "              When used, this will make curl attempt to figure out  the  time-\n"
 "              stamp  of the remote file, and if that is available make the lo-\n"
+, stdout);
+ fputs(
 "              cal file get that same timestamp.\n"
 "\n"
+"              Example:\n"
+"               curl --remote-time -o foo https://example.com\n"
+"\n"
 "       --request-target <path>\n"
 "              (HTTP) Tells curl to use an alternative \"target\" (path)  instead\n"
-, stdout);
- fputs(
 "              of  using  the  path as provided in the URL. Particularly useful\n"
 "              when wanting to issue HTTP requests  without  leading  slash  or\n"
-"              other  data  that  doesn't  follow the regular URL pattern, like\n"
+"              other  data  that  does not follow the regular URL pattern, like\n"
+, stdout);
+ fputs(
 "              \"OPTIONS *\".\n"
 "\n"
+"              Example:\n"
+"               curl --request-target \"*\" -X OPTIONS https://example.com\n"
+"\n"
 "              Added in 7.55.0.\n"
 "\n"
 "       -X, --request <command>\n"
 "              (HTTP) Specifies a custom request method to use when communicat-\n"
 "              ing  with the HTTP server.  The specified request method will be\n"
+"              used instead of the method otherwise  used  (which  defaults  to\n"
 , stdout);
  fputs(
-"              used instead of the method otherwise  used  (which  defaults  to\n"
 "              GET).  Read  the HTTP 1.1 specification for details and explana-\n"
 "              tions. Common additional HTTP requests include PUT  and  DELETE,\n"
 "              but related technologies like WebDAV offers PROPFIND, COPY, MOVE\n"
 "              and more.\n"
 "\n"
-"              Normally you don't need this option. All  sorts  of  GET,  HEAD,\n"
+"              Normally you do not need this option. All sorts  of  GET,  HEAD,\n"
 "              POST and PUT requests are rather invoked by using dedicated com-\n"
-, stdout);
- fputs(
 "              mand line options.\n"
 "\n"
+, stdout);
+ fputs(
 "              This option only changes the actual word used in  the  HTTP  re-\n"
 "              quest, it does not alter the way curl behaves. So for example if\n"
 "              you want to make a proper HEAD request, using -X HEAD  will  not\n"
@@ -3268,39 +3915,43 @@
 "              all requests, which if you for example use  -L,  --location  may\n"
 , stdout);
  fputs(
-"              cause  unintended  side-effects when curl doesn't change request\n"
+"              cause  unintended side-effects when curl does not change request\n"
 "              method according to the HTTP 30x response codes - and similar.\n"
 "\n"
 "              (FTP) Specifies a custom FTP command to use instead of LIST when\n"
 "              doing file lists with FTP.\n"
 "\n"
 "              (POP3) Specifies a custom POP3 command to use instead of LIST or\n"
-"              RETR. (Added in 7.26.0)\n"
+"              RETR.\n"
 "\n"
 "              (IMAP) Specifies a custom IMAP command to use instead  of  LIST.\n"
-, stdout);
- fputs(
 "              (Added in 7.30.0)\n"
 "\n"
+, stdout);
+ fputs(
 "              (SMTP) Specifies a custom SMTP command to use instead of HELP or\n"
 "              VRFY. (Added in 7.34.0)\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl -X \"DELETE\" https://example.com\n"
+"               curl -X NLST ftp://example.com/\n"
+"\n"
 "       --resolve <[+]host:port:addr[,addr]...>\n"
 "              Provide a custom address for a specific host and port pair.  Us-\n"
-"              ing  this, you can make the curl requests(s) use a specified ad-\n"
 , stdout);
  fputs(
+"              ing  this, you can make the curl requests(s) use a specified ad-\n"
 "              dress and prevent the otherwise normally resolved address to  be\n"
 "              used.  Consider  it a sort of /etc/hosts alternative provided on\n"
 "              the command line. The port number should be the number used  for\n"
 "              the  specific  protocol  the host will be used for. It means you\n"
 "              need several entries if you want to provide address for the same\n"
-"              host but different ports.\n"
-"\n"
 , stdout);
  fputs(
+"              host but different ports.\n"
+"\n"
 "              By  specifying '*' as host you can tell curl to resolve any host\n"
 "              and specific port pair to the specified address. Wildcard is re-\n"
 "              solved  last so any --resolve with a specific host and port will\n"
@@ -3332,7 +3983,8 @@
 "              This option can be used many times to add many host names to re-\n"
 "              solve.\n"
 "\n"
-"              Added in 7.21.3.\n"
+"              Example:\n"
+"               curl --resolve example.com:443:127.0.0.1 https://example.com\n"
 "\n"
 "       --retry-all-errors\n"
 , stdout);
@@ -3348,7 +4000,7 @@
 , stdout);
  fputs(
 "\n"
-"              Warning: For server compatibility curl attempts to retry  failed\n"
+"              WARNING: For server compatibility curl attempts to retry  failed\n"
 "              flaky  transfers  as close as possible to how they were started,\n"
 "              but this is not possible with redirected input  or  output.  For\n"
 "              example,  before  retrying  it removes output data from a failed\n"
@@ -3356,9 +4008,9 @@
 "              this is not true of data redirected to a | pipe or > file, which\n"
 , stdout);
  fputs(
-"              are not reset. We strongly suggest don't parse or record  output\n"
-"              via  redirect in combination with this option, since you may re-\n"
-"              ceive duplicate data.\n"
+"              are not reset. We strongly suggest you do not  parse  or  record\n"
+"              output  via  redirect in combination with this option, since you\n"
+"              may receive duplicate data.\n"
 "\n"
 "              By default curl will not error on an HTTP response code that in-\n"
 "              dicates an HTTP error, if the transfer was successful. For exam-\n"
@@ -3372,102 +4024,122 @@
 "              that  indicate  HTTP  errors (4xx and 5xx) then combine with -f,\n"
 "              --fail.\n"
 "\n"
+"              Example:\n"
+"               curl --retry-all-errors https://example.com\n"
+, stdout);
+ fputs(
+"\n"
 "              Added in 7.71.0.\n"
 "\n"
 "       --retry-connrefused\n"
-, stdout);
- fputs(
 "              In addition to the other conditions, consider ECONNREFUSED as  a\n"
 "              transient  error  too  for --retry. This option is used together\n"
 "              with --retry.\n"
 "\n"
+"              Example:\n"
+"               curl --retry-connrefused --retry https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       --retry-delay <seconds>\n"
 "              Make curl sleep this amount of time before  each  retry  when  a\n"
-"              transfer  has  failed with a transient error (it changes the de-\n"
-"              fault backoff time algorithm between retries).  This  option  is\n"
 , stdout);
  fputs(
+"              transfer  has  failed with a transient error (it changes the de-\n"
+"              fault backoff time algorithm between retries).  This  option  is\n"
 "              only  interesting if --retry is also used. Setting this delay to\n"
 "              zero will make curl use the default backoff time.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              Added in 7.12.3.\n"
+"              Example:\n"
+"               curl --retry-delay 5 --retry https://example.com\n"
 "\n"
+, stdout);
+ fputs(
 "       --retry-max-time <seconds>\n"
 "              The retry timer is reset before the first transfer attempt.  Re-\n"
 "              tries  will  be done as usual (see --retry) as long as the timer\n"
+"              has not reached this given limit. Notice that if the  timer  has\n"
+"              not  reached  the limit, the request will be made and while per-\n"
+"              forming, it may take longer than  this  given  time  period.  To\n"
 , stdout);
  fputs(
-"              hasn't reached this given limit. Notice that if the timer hasn't\n"
-"              reached  the  limit, the request will be made and while perform-\n"
-"              ing, it may take longer than this given time period. To limit  a\n"
-"              single request's maximum time, use -m, --max-time.  Set this op-\n"
-"              tion to zero to not timeout retries.\n"
+"              limit  a single request's maximum time, use -m, --max-time.  Set\n"
+"              this option to zero to not timeout retries.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              Added in 7.12.3.\n"
+"              Example:\n"
+"               curl --retry-max-time 30 --retry 10 https://example.com\n"
 "\n"
-, stdout);
- fputs(
 "       --retry <num>\n"
 "              If a transient error is returned when curl tries  to  perform  a\n"
 "              transfer,  it  will retry this number of times before giving up.\n"
+, stdout);
+ fputs(
 "              Setting the number to 0 makes curl do no retries (which  is  the\n"
 "              default).  Transient  error  means either: a timeout, an FTP 4xx\n"
 "              response code or an HTTP 408, 429, 500, 502, 503 or 504 response\n"
 "              code.\n"
 "\n"
-, stdout);
- fputs(
 "              When  curl  is about to retry a transfer, it will first wait one\n"
 "              second and then for all forthcoming retries it will  double  the\n"
 "              waiting  time until it reaches 10 minutes which then will be the\n"
+, stdout);
+ fputs(
 "              delay between the rest of the retries.  By  using  --retry-delay\n"
 "              you   disable  this  exponential  backoff  algorithm.  See  also\n"
 "              --retry-max-time to limit the total time allowed for retries.\n"
 "\n"
-, stdout);
- fputs(
 "              Since curl 7.66.0, curl will comply with  the  Retry-After:  re-\n"
 "              sponse  header if one was present to know when to issue the next\n"
 "              retry.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              Added in 7.12.3.\n"
+, stdout);
+ fputs(
+"              Example:\n"
+"               curl --retry 7 https://example.com\n"
 "\n"
 "       --sasl-authzid <identity>\n"
 "              Use this authorisation identity (authzid), during SASL PLAIN au-\n"
 "              thentication,  in addition to the authentication identity (auth-\n"
-, stdout);
- fputs(
 "              cid) as specified by -u, --user.\n"
 "\n"
-"              If the option isn't specified, the server will  derive  the  au-\n"
+"              If the option is not specified, the server will derive  the  au-\n"
 "              thzid  from  the authcid, but if specified, and depending on the\n"
+, stdout);
+ fputs(
 "              server implementation, it may be used to access  another  user's\n"
 "              inbox,  that  the  user  has been granted access to, or a shared\n"
 "              mailbox for example.\n"
 "\n"
+"              Example:\n"
+"               curl --sasl-authzid zid imap://example.com/\n"
+"\n"
 "              Added in 7.66.0.\n"
 "\n"
 "       --sasl-ir\n"
-, stdout);
- fputs(
 "              Enable initial response in SASL authentication.\n"
 "\n"
+"              Example:\n"
+"               curl --sasl-ir imap://example.com/\n"
+"\n"
 "              Added in 7.31.0.\n"
 "\n"
+, stdout);
+ fputs(
 "       --service-name <name>\n"
 "              This option allows you to change the service name for SPNEGO.\n"
 "\n"
 "              Examples:   --negotiate   --service-name   sockd    would    use\n"
 "              sockd/server-name.\n"
 "\n"
+"              Example:\n"
+"               curl --service-name sockd/server https://example.com\n"
+"\n"
 "              Added in 7.43.0.\n"
 "       -S, --show-error\n"
 "              When used with -s, --silent, it makes curl show an error message\n"
@@ -3475,76 +4147,92 @@
 "\n"
 , stdout);
  fputs(
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
+"              Example:\n"
+"               curl --show-error --silent https://example.com\n"
+"\n"
 "              See also --no-progress-meter.\n"
 "\n"
 "       -s, --silent\n"
-"              Silent or quiet mode. Don't show progress meter  or  error  mes-\n"
-"              sages.   Makes  Curl mute. It will still output the data you ask\n"
+"              Silent  or  quiet mode. Do not show progress meter or error mes-\n"
+"              sages.  Makes Curl mute. It will still output the data  you  ask\n"
+, stdout);
+ fputs(
 "              for, potentially even to the terminal/stdout unless you redirect\n"
 "              it.\n"
 "\n"
-"              Use  -S,  --show-error  in  addition  to  this option to disable\n"
+"              Use -S, --show-error in  addition  to  this  option  to  disable\n"
 "              progress meter but still show error messages.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl -s https://example.com\n"
+"\n"
 "              See also -v, --verbose, --stderr and --no-progress-meter.\n"
 "\n"
 "       --socks4 <host[:port]>\n"
 "              Use the specified SOCKS4 proxy. If the port number is not speci-\n"
-"              fied,  it  is  assumed at port 1080. Using this socket type make\n"
-"              curl resolve the host name and passing the  address  on  to  the\n"
+, stdout);
+ fputs(
+"              fied, it is assumed at port 1080. Using this  socket  type  make\n"
+"              curl  resolve  the  host  name and passing the address on to the\n"
 "              proxy.\n"
 "\n"
-"              This  option  overrides any previous use of -x, --proxy, as they\n"
-"              are mutually exclusive.\n"
-"\n"
-, stdout);
- fputs(
-"              Since 7.21.7, this option is superfluous since you can specify a\n"
-"              socks4 proxy with -x, --proxy using a socks4:// protocol prefix.\n"
-"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
-"              the same time -x, --proxy is used with an HTTP/HTTPS  proxy.  In\n"
-"              such a case curl first connects to the SOCKS proxy and then con-\n"
-"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
-"\n"
-, stdout);
- fputs(
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"              Added in 7.15.2.\n"
-"\n"
-"       --socks4a <host[:port]>\n"
-"              Use the specified SOCKS4a proxy. If the port number is not spec-\n"
-"              ified,  it  is  assumed at port 1080. This asks the proxy to re-\n"
-"              solve the host name.\n"
-"\n"
 "              This option overrides any previous use of -x, --proxy,  as  they\n"
 "              are mutually exclusive.\n"
 "\n"
+"              This  option is superfluous since you can specify a socks4 proxy\n"
+"              with -x, --proxy using a socks4:// protocol prefix.\n"
+"\n"
 , stdout);
  fputs(
-"              Since 7.21.7, this option is superfluous since you can specify a\n"
-"              socks4a proxy with -x, --proxy using a socks4a:// protocol  pre-\n"
-"              fix.\n"
+"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
+"              the  same  time -x, --proxy is used with an HTTP/HTTPS proxy. In\n"
+"              such a case curl first connects to the SOCKS proxy and then con-\n"
+"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
 "\n"
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Example:\n"
+"               curl --socks4 hostname:4096 https://example.com\n"
+"\n"
+"       --socks4a <host[:port]>\n"
+, stdout);
+ fputs(
+"              Use the specified SOCKS4a proxy. If the port number is not spec-\n"
+"              ified, it is assumed at port 1080. This asks the  proxy  to  re-\n"
+"              solve the host name.\n"
+"\n"
+"              This  option  overrides any previous use of -x, --proxy, as they\n"
+"              are mutually exclusive.\n"
+"\n"
+"              This option is superfluous since you can specify a socks4a proxy\n"
+"              with -x, --proxy using a socks4a:// protocol prefix.\n"
+"\n"
+, stdout);
+ fputs(
 "              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
 "              the same time -x, --proxy is used with an HTTP/HTTPS  proxy.  In\n"
 "              such a case curl first connects to the SOCKS proxy and then con-\n"
 "              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
 "\n"
-, stdout);
- fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              Added in 7.18.0.\n"
+"              Example:\n"
+"               curl --socks4a hostname:4096 https://example.com\n"
 "\n"
 "       --socks5-basic\n"
+, stdout);
+ fputs(
 "              Tells curl to use username/password authentication when connect-\n"
 "              ing  to a SOCKS5 proxy.  The username/password authentication is\n"
 "              enabled by default.  Use --socks5-gssapi to  force  GSS-API  au-\n"
 "              thentication to SOCKS5 proxies.\n"
 "\n"
+"              Example:\n"
+"               curl --socks5-basic --socks5 hostname:4096 https://example.com\n"
+"\n"
 "              Added in 7.55.0.\n"
 "\n"
 "       --socks5-gssapi-nec\n"
@@ -3556,11 +4244,12 @@
 "              --socks5-gssapi-nec allows the unprotected exchange of the  pro-\n"
 "              tection mode negotiation.\n"
 "\n"
-"              Added in 7.19.4.\n"
+"              Example:\n"
+"               curl --socks5-gssapi-nec --socks5 hostname:4096 https://example.com\n"
 "\n"
-"       --socks5-gssapi-service <name>\n"
 , stdout);
  fputs(
+"       --socks5-gssapi-service <name>\n"
 "              The default service name for a socks server is rcmd/server-fqdn.\n"
 "              This option allows you to change it.\n"
 "\n"
@@ -3569,185 +4258,226 @@
 "              service sockd/real-name  would  use  sockd/real-name  for  cases\n"
 "              where the proxy-name does not match the principal name.\n"
 "\n"
-"              Added in 7.19.4.\n"
-"\n"
-"       --socks5-gssapi\n"
+"              Example:\n"
 , stdout);
  fputs(
+"               curl --socks5-gssapi-service sockd --socks5 hostname:4096 https://example.com\n"
+"\n"
+"       --socks5-gssapi\n"
 "              Tells  curl  to  use GSS-API authentication when connecting to a\n"
 "              SOCKS5 proxy.  The GSS-API authentication is enabled by  default\n"
 "              (if  curl is compiled with GSS-API support).  Use --socks5-basic\n"
 "              to force username/password authentication to SOCKS5 proxies.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --socks5-gssapi --socks5 hostname:4096 https://example.com\n"
+"\n"
 "              Added in 7.55.0.\n"
 "\n"
 "       --socks5-hostname <host[:port]>\n"
 "              Use the specified SOCKS5 proxy (and let the  proxy  resolve  the\n"
-, stdout);
- fputs(
 "              host  name).  If the port number is not specified, it is assumed\n"
 "              at port 1080.\n"
 "\n"
 "              This option overrides any previous use of -x, --proxy,  as  they\n"
 "              are mutually exclusive.\n"
 "\n"
-"              Since 7.21.7, this option is superfluous since you can specify a\n"
-"              socks5 hostname proxy with -x, --proxy using a socks5h:// proto-\n"
-"              col prefix.\n"
+, stdout);
+ fputs(
+"              This  option is superfluous since you can specify a socks5 host-\n"
+"              name proxy with -x, --proxy using a socks5h:// protocol prefix.\n"
 "\n"
 "              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
-, stdout);
- fputs(
-"              the same time -x, --proxy is used with an HTTP/HTTPS  proxy.  In\n"
-"              such a case curl first connects to the SOCKS proxy and then con-\n"
-"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
-"\n"
-"              If this option is used several times, the last one will be used.\n"
-"\n"
-"              Added in 7.18.0.\n"
-"\n"
-"       --socks5 <host[:port]>\n"
-"              Use the specified SOCKS5 proxy - but resolve the host  name  lo-\n"
-, stdout);
- fputs(
-"              cally.  If  the  port  number is not specified, it is assumed at\n"
-"              port 1080.\n"
-"\n"
-"              This option overrides any previous use of -x, --proxy,  as  they\n"
-"              are mutually exclusive.\n"
-"\n"
-"              Since 7.21.7, this option is superfluous since you can specify a\n"
-"              socks5 proxy with -x, --proxy using a socks5:// protocol prefix.\n"
-"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
-, stdout);
- fputs(
 "              the  same  time -x, --proxy is used with an HTTP/HTTPS proxy. In\n"
 "              such a case curl first connects to the SOCKS proxy and then con-\n"
 "              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
 "\n"
-"              If this option is used several times, the last one will be used.\n"
-"              This  option (as well as --socks4) does not work with IPV6, FTPS\n"
-"              or LDAP.\n"
-"\n"
-"              Added in 7.18.0.\n"
-"\n"
-"       -Y, --speed-limit <speed>\n"
 , stdout);
  fputs(
+"              If this option is used several times, the last one will be used.\n"
+"\n"
+"              Example:\n"
+"               curl --socks5-hostname proxy.example:7000 https://example.com\n"
+"\n"
+"       --socks5 <host[:port]>\n"
+"              Use  the  specified SOCKS5 proxy - but resolve the host name lo-\n"
+"              cally. If the port number is not specified,  it  is  assumed  at\n"
+"              port 1080.\n"
+"\n"
+"              This  option  overrides any previous use of -x, --proxy, as they\n"
+, stdout);
+ fputs(
+"              are mutually exclusive.\n"
+"\n"
+"              This option is superfluous since you can specify a socks5  proxy\n"
+"              with -x, --proxy using a socks5:// protocol prefix.\n"
+"\n"
+"              Since 7.52.0, --preproxy can be used to specify a SOCKS proxy at\n"
+"              the same time -x, --proxy is used with an HTTP/HTTPS  proxy.  In\n"
+"              such a case curl first connects to the SOCKS proxy and then con-\n"
+"              nects (through SOCKS) to the HTTP or HTTPS proxy.\n"
+"\n"
+, stdout);
+ fputs(
+"              If this option is used several times, the last one will be used.\n"
+"              This option (as well as --socks4) does not work with IPV6,  FTPS\n"
+"              or LDAP.\n"
+"              Example:\n"
+"               curl --socks5 proxy.example:7000 https://example.com\n"
+"\n"
+"       -Y, --speed-limit <speed>\n"
 "              If a download is slower than this given speed (in bytes per sec-\n"
-"              ond)  for  speed-time seconds it gets aborted. speed-time is set\n"
+"              ond) for speed-time seconds it gets aborted. speed-time  is  set\n"
+, stdout);
+ fputs(
 "              with -y, --speed-time and is 30 if not set.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --speed-limit 300 --speed-time 10 https://example.com\n"
+"\n"
 "       -y, --speed-time <seconds>\n"
 "              If a download is slower than speed-limit bytes per second during\n"
 "              a speed-time period, the download gets aborted. If speed-time is\n"
 , stdout);
  fputs(
-"              used, the default speed-limit will be  1  unless  set  with  -Y,\n"
+"              used,  the  default  speed-limit  will  be 1 unless set with -Y,\n"
 "              --speed-limit.\n"
 "\n"
-"              This  option  controls  transfers  and thus will not affect slow\n"
-"              connects etc. If this is a concern for you, try  the  --connect-\n"
+"              This option controls transfers and thus  will  not  affect  slow\n"
+"              connects  etc.  If this is a concern for you, try the --connect-\n"
 "              timeout option.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"       --ssl-allow-beast\n"
-"              This option tells curl to not work around a security flaw in the\n"
+"              Example:\n"
+"               curl --speed-limit 300 --speed-time 10 https://example.com\n"
+"\n"
 , stdout);
  fputs(
-"              SSL3 and TLS1.0 protocols known as BEAST.  If this option  isn't\n"
-"              used,  the SSL layer may use workarounds known to cause interop-\n"
-"              erability problems with some older SSL implementations. WARNING:\n"
-"              this option loosens the SSL security, and by using this flag you\n"
-"              ask for exactly that.\n"
+"       --ssl-allow-beast\n"
+"              This option tells curl to not work around a security flaw in the\n"
+"              SSL3 and TLS1.0 protocols known as BEAST.  If this option is not\n"
+"              used, the SSL layer may use workarounds known to cause  interop-\n"
+"              erability problems with some older SSL implementations.\n"
 "\n"
-"              Added in 7.25.0.\n"
+"              WARNING: this option loosens the SSL security, and by using this\n"
+"              flag you ask for exactly that.\n"
+"\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --ssl-allow-beast https://example.com\n"
 "\n"
 "       --ssl-auto-client-cert\n"
 "              Tell libcurl to automatically locate and use a  client  certifi-\n"
-, stdout);
- fputs(
 "              cate  for authentication, when requested by the server. This op-\n"
 "              tion is only supported for Schannel (the native Windows SSL  li-\n"
 "              brary). Prior to 7.77.0 this was the default behavior in libcurl\n"
 "              with Schannel. Since the server can request any certificate that\n"
+, stdout);
+ fputs(
 "              supports  client  authentication  in the OS certificate store it\n"
 "              could be a privacy violation and unexpected.\n"
 "\n"
-, stdout);
- fputs(
+"              Example:\n"
+"               curl --ssl-auto-client-cert https://example.com\n"
+"\n"
 "              See also --proxy-ssl-auto-client-cert. Added in 7.77.0.\n"
 "\n"
 "       --ssl-no-revoke\n"
 "              (Schannel) This option tells curl to disable certificate revoca-\n"
 "              tion checks.  WARNING: this option loosens the SSL security, and\n"
+, stdout);
+ fputs(
 "              by using this flag you ask for exactly that.\n"
 "\n"
+"              Example:\n"
+"               curl --ssl-no-revoke https://example.com\n"
+"\n"
 "              Added in 7.44.0.\n"
 "\n"
 "       --ssl-reqd\n"
 "              (FTP IMAP POP3 SMTP) Require SSL/TLS for the connection.  Termi-\n"
-, stdout);
- fputs(
-"              nates the connection if the server doesn't support SSL/TLS.\n"
+"              nates the connection if the server does not support SSL/TLS.\n"
 "\n"
 "              This option was formerly known as --ftp-ssl-reqd.\n"
 "\n"
-"              Added in 7.20.0.\n"
+"              Example:\n"
+"               curl --ssl-reqd ftp://example.com\n"
 "\n"
+, stdout);
+ fputs(
 "       --ssl-revoke-best-effort\n"
 "              (Schannel)  This option tells curl to ignore certificate revoca-\n"
 "              tion checks when they failed due to missing/offline distribution\n"
 "              points for the revocation check lists.\n"
 "\n"
+"              Example:\n"
+"               curl --ssl-revoke-best-effort https://example.com\n"
+"\n"
 "              Added in 7.70.0.\n"
 "\n"
+"       --ssl  (FTP IMAP POP3 SMTP) Try to use SSL/TLS for the connection.  Re-\n"
 , stdout);
  fputs(
-"       --ssl  (FTP IMAP POP3 SMTP) Try to use SSL/TLS for the connection.  Re-\n"
-"              verts to a non-secure connection if the server  doesn't  support\n"
+"              verts to a non-secure connection if the server does not  support\n"
 "              SSL/TLS.   See also --ftp-ssl-control and --ssl-reqd for differ-\n"
 "              ent levels of encryption required.\n"
 "\n"
-"              This option was formerly known as --ftp-ssl (Added  in  7.11.0).\n"
-"              That  option name can still be used but will be removed in a fu-\n"
-"              ture version.\n"
+"              This option was formerly known as --ftp-ssl.  That  option  name\n"
+"              can still be used but will be removed in a future version.\n"
 "\n"
-, stdout);
- fputs(
-"              Added in 7.20.0.\n"
+"              Example:\n"
+"               curl --ssl pop3://example.com/\n"
 "\n"
 "       -2, --sslv2\n"
-"              (SSL) This option previously asked curl to use SSLv2, but start-\n"
-"              ing  in curl 7.77.0 this instruction is ignored. SSLv2 is widely\n"
-"              considered insecure (see RFC 6176).\n"
-"\n"
-"              See also --http1.1 and --http2. -2, --sslv2  requires  that  the\n"
-"              underlying  libcurl  was built to support TLS. This option over-\n"
-"              rides -3, --sslv3 and -1, --tlsv1 and --tlsv1.1 and --tlsv1.2.\n"
-"\n"
 , stdout);
  fputs(
+"              (SSL) This option previously asked curl to use SSLv2, but start-\n"
+"              ing in curl 7.77.0 this instruction is ignored. SSLv2 is  widely\n"
+"              considered insecure (see RFC 6176).\n"
+"\n"
+"              Example:\n"
+"               curl --sslv2 https://example.com\n"
+"\n"
+"              See  also  --http1.1  and --http2. -2, --sslv2 requires that the\n"
+"              underlying libcurl was built to support TLS. This  option  over-\n"
+, stdout);
+ fputs(
+"              rides -3, --sslv3 and -1, --tlsv1 and --tlsv1.1 and --tlsv1.2.\n"
+"\n"
 "       -3, --sslv3\n"
 "              (SSL) This option previously asked curl to use SSLv3, but start-\n"
-"              ing  in curl 7.77.0 this instruction is ignored. SSLv3 is widely\n"
+"              ing in curl 7.77.0 this instruction is ignored. SSLv3 is  widely\n"
 "              considered insecure (see RFC 7568).\n"
 "\n"
-"              See also --http1.1 and --http2. -3, --sslv3  requires  that  the\n"
-"              underlying  libcurl  was built to support TLS. This option over-\n"
+"              Example:\n"
+"               curl --sslv3 https://example.com\n"
+"\n"
+"              See  also  --http1.1  and --http2. -3, --sslv3 requires that the\n"
+, stdout);
+ fputs(
+"              underlying libcurl was built to support TLS. This  option  over-\n"
 "              rides -2, --sslv2 and -1, --tlsv1 and --tlsv1.1 and --tlsv1.2.\n"
 "\n"
 "       --stderr <file>\n"
-, stdout);
- fputs(
-"              Redirect all writes to stderr to the specified file instead.  If\n"
+"              Redirect  all writes to stderr to the specified file instead. If\n"
 "              the file name is a plain '-', it is instead written to stdout.\n"
 "\n"
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
+, stdout);
+ fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --stderr output.txt https://example.com\n"
+"\n"
 "              See also -v, --verbose and -s, --silent.\n"
 "\n"
 "       --styled-output\n"
@@ -3755,25 +4485,40 @@
 "              headers to the terminal. Use --no-styled-output to  switch  them\n"
 "              off.\n"
 "\n"
+"              This option is global and does not need to be specified for each\n"
 , stdout);
  fputs(
+"              use of -:, --next.\n"
+"\n"
+"              Example:\n"
+"               curl --styled-output -I https://example.com\n"
+"\n"
 "              Added in 7.61.0.\n"
 "\n"
 "       --suppress-connect-headers\n"
-"              When  -p,  --proxytunnel  is  used and a CONNECT request is made\n"
-"              don't output proxy CONNECT  response  headers.  This  option  is\n"
-"              meant  to  be used with -D, --dump-header or -i, --include which\n"
-"              are used to show protocol headers in the output. It has  no  ef-\n"
-"              fect  on  debug options such as -v, --verbose or --trace, or any\n"
-"              statistics.\n"
-"\n"
+"              When -p, --proxytunnel is used and a CONNECT request is made  do\n"
+"              not  output proxy CONNECT response headers. This option is meant\n"
+"              to be used with -D, --dump-header or  -i,  --include  which  are\n"
+"              used to show protocol headers in the output. It has no effect on\n"
 , stdout);
  fputs(
+"              debug options such as -v, --verbose or --trace, or  any  statis-\n"
+"              tics.\n"
+"\n"
+"              Example:\n"
+"               curl --suppress-connect-headers --include -x proxy https://example.com\n"
+"\n"
 "              See also -D, --dump-header, -i, --include and -p, --proxytunnel.\n"
+"              Added in 7.54.0.\n"
 "\n"
 "       --tcp-fastopen\n"
 "              Enable use of TCP Fast Open (RFC7413).\n"
 "\n"
+"              Example:\n"
+"               curl --tcp-fastopen https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              Added in 7.49.0.\n"
 "\n"
 "       --tcp-nodelay\n"
@@ -3781,13 +4526,14 @@
 "              page for details about this option.\n"
 "\n"
 "              Since  7.50.2,  curl sets this option by default and you need to\n"
-"              explicitly switch it off if you don't want it on.\n"
+"              explicitly switch it off if you do not want it on.\n"
 "\n"
-, stdout);
- fputs(
-"              Added in 7.11.2.\n"
+"              Example:\n"
+"               curl --tcp-nodelay https://example.com\n"
 "\n"
 "       -t, --telnet-option <opt=val>\n"
+, stdout);
+ fputs(
 "              Pass options to the telnet protocol. Supported options are:\n"
 "\n"
 "              TTYPE=<term> Sets the terminal type.\n"
@@ -3796,6 +4542,9 @@
 "\n"
 "              NEW_ENV=<var,val> Sets an environment variable.\n"
 "\n"
+"              Example:\n"
+"               curl -t TTYPE=vt100 telnet://example.com/\n"
+"\n"
 "       --tftp-blksize <value>\n"
 "              (TFTP) Set TFTP BLKSIZE option (must be >512). This is the block\n"
 , stdout);
@@ -3805,7 +4554,8 @@
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
-"              Added in 7.20.0.\n"
+"              Example:\n"
+"               curl --tftp-blksize 1024 tftp://example.com/file\n"
 "\n"
 "       --tftp-no-options\n"
 "              (TFTP) Tells curl not to send TFTP options requests.\n"
@@ -3816,29 +4566,39 @@
 "              not  acknowledge  or  properly implement TFTP options. When this\n"
 "              option is used --tftp-blksize is ignored.\n"
 "\n"
+"              Example:\n"
+"               curl --tftp-no-options tftp://192.168.0.1/\n"
+"\n"
 "              Added in 7.48.0.\n"
 "\n"
 "       -z, --time-cond <time>\n"
 "              (HTTP FTP) Request a file that has been modified later than  the\n"
 "              given  time  and date, or one that has been modified before that\n"
-"              time. The <date expression> can be all sorts of date strings  or\n"
 , stdout);
  fputs(
-"              if it doesn't match any internal ones, it is taken as a filename\n"
-"              and tries to get the modification date (mtime) from  <file>  in-\n"
-"              stead. See the curl_getdate(3) man pages for date expression de-\n"
-"              tails.\n"
+"              time. The <date expression> can be all sorts of date strings  or\n"
+"              if  it  does not match any internal ones, it is taken as a file-\n"
+"              name and tries to get the modification date (mtime) from  <file>\n"
+"              instead.  See  the curl_getdate(3) man pages for date expression\n"
+"              details.\n"
 "\n"
 "              Start the date expression with a dash (-) to make it request for\n"
 "              a  document that is older than the given date/time, default is a\n"
-"              document that is newer than the specified date/time.\n"
-"\n"
 , stdout);
  fputs(
+"              document that is newer than the specified date/time.\n"
+"\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Examples:\n"
+"               curl -z \"Wed 01 Sep 2021 12:18:00\" https://example.com\n"
+"               curl -z \"-Wed 01 Sep 2021 12:18:00\" https://example.com\n"
+"               curl -z file https://example.com\n"
+"\n"
 "       --tls-max <VERSION>\n"
 "              (SSL) VERSION defines maximum supported TLS version. The minimum\n"
+, stdout);
+ fputs(
 "              acceptable  version  is  set  by  tlsv1.0,  tlsv1.1,  tlsv1.2 or\n"
 "              tlsv1.3.\n"
 "\n"
@@ -3846,8 +4606,6 @@
 "              fect. This includes QUIC-using (HTTP/3) transfers.\n"
 "\n"
 "              default\n"
-, stdout);
- fputs(
 "                     Use up to recommended TLS version.\n"
 "\n"
 "              1.0    Use up to TLSv1.0.\n"
@@ -3855,15 +4613,21 @@
 "              1.2    Use up to TLSv1.2.\n"
 "              1.3    Use up to TLSv1.3.\n"
 "\n"
+, stdout);
+ fputs(
+"       Examples:\n"
+"        curl --tls-max 1.2 https://example.com\n"
+"        curl --tls-max 1.3 --tlsv1.2 https://example.com\n"
+"\n"
 "       See  also  --tlsv1.0, --tlsv1.1, --tlsv1.2 and --tlsv1.3. --tls-max re-\n"
 "       quires that the underlying libcurl was built to support TLS.  Added  in\n"
 "       7.54.0.\n"
 "\n"
 "       --tls13-ciphers <ciphersuite list>\n"
-, stdout);
- fputs(
 "              (TLS)  Specifies which cipher suites to use in the connection if\n"
 "              it negotiates TLS 1.3. The list of ciphers suites  must  specify\n"
+, stdout);
+ fputs(
 "              valid  ciphers.  Read up on TLS 1.3 cipher suite details on this\n"
 "              URL:\n"
 "\n"
@@ -3871,93 +4635,116 @@
 "\n"
 "              This option is currently used only when curl  is  built  to  use\n"
 "              OpenSSL 1.1.1 or later. If you are using a different SSL backend\n"
-, stdout);
- fputs(
 "              you can try setting TLS 1.3 cipher suites by using the --ciphers\n"
 "              option.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+, stdout);
+ fputs(
+"              Example:\n"
+"               curl --tls13-ciphers TLS_AES_128_GCM_SHA256 https://example.com\n"
+"\n"
+"              Added in 7.61.0.\n"
+"\n"
 "       --tlsauthtype <type>\n"
 "              Set  TLS  authentication type. Currently, the only supported op-\n"
 "              tion  is  \"SRP\",  for  TLS-SRP  (RFC  5054).  If  --tlsuser  and\n"
 "              --tlspassword  are specified but --tlsauthtype is not, then this\n"
+"              option defaults to \"SRP\".  This option works only if the  under-\n"
 , stdout);
  fputs(
-"              option defaults to \"SRP\".  This option works only if the  under-\n"
 "              lying  libcurl  is  built  with  TLS-SRP support, which requires\n"
 "              OpenSSL or GnuTLS with TLS-SRP support.\n"
 "\n"
-"              Added in 7.21.4.\n"
+"              Example:\n"
+"               curl --tlsauthtype SRP https://example.com\n"
 "\n"
 "       --tlspassword <string>\n"
 "              Set password for use with the TLS authentication  method  speci-\n"
 "              fied with --tlsauthtype. Requires that --tlsuser also be set.\n"
 "\n"
-"              This doesn't work with TLS 1.3.\n"
+"              This option does not work with TLS 1.3.\n"
 "\n"
+"              Example:\n"
 , stdout);
  fputs(
-"              Added in 7.21.4.\n"
+"               curl --tlspassword pwd --tlsuser user https://example.com\n"
+"\n"
 "       --tlsuser <name>\n"
 "              Set  username  for use with the TLS authentication method speci-\n"
 "              fied with --tlsauthtype. Requires  that  --tlspassword  also  is\n"
 "              set.\n"
 "\n"
-"              This doesn't work with TLS 1.3.\n"
+"              This option does not work with TLS 1.3.\n"
 "\n"
-"              Added in 7.21.4.\n"
+"              Example:\n"
+"               curl --tlspassword pwd --tlsuser user https://example.com\n"
 "\n"
 "       --tlsv1.0\n"
+, stdout);
+ fputs(
 "              (TLS)  Forces curl to use TLS version 1.0 or later when connect-\n"
 "              ing to a remote TLS server.\n"
 "\n"
-, stdout);
- fputs(
 "              In old versions of curl this  option  was  documented  to  allow\n"
 "              _only_  TLS  1.0, but behavior was inconsistent depending on the\n"
 "              TLS library. Use --tls-max if you want to set a maximum TLS ver-\n"
 "              sion.\n"
 "\n"
+"              Example:\n"
+"               curl --tlsv1.0 https://example.com\n"
+"\n"
 "              Added in 7.34.0.\n"
 "\n"
+, stdout);
+ fputs(
 "       --tlsv1.1\n"
 "              (TLS)  Forces curl to use TLS version 1.1 or later when connect-\n"
 "              ing to a remote TLS server.\n"
 "\n"
-, stdout);
- fputs(
 "              In old versions of curl this  option  was  documented  to  allow\n"
 "              _only_  TLS  1.1, but behavior was inconsistent depending on the\n"
 "              TLS library. Use --tls-max if you want to set a maximum TLS ver-\n"
 "              sion.\n"
 "\n"
+"              Example:\n"
+"               curl --tlsv1.1 https://example.com\n"
+"\n"
+, stdout);
+ fputs(
 "              Added in 7.34.0.\n"
 "\n"
 "       --tlsv1.2\n"
 "              (TLS)  Forces curl to use TLS version 1.2 or later when connect-\n"
 "              ing to a remote TLS server.\n"
 "\n"
-, stdout);
- fputs(
 "              In old versions of curl this  option  was  documented  to  allow\n"
 "              _only_  TLS  1.2, but behavior was inconsistent depending on the\n"
 "              TLS library. Use --tls-max if you want to set a maximum TLS ver-\n"
 "              sion.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --tlsv1.2 https://example.com\n"
+"\n"
 "              Added in 7.34.0.\n"
 "\n"
 "       --tlsv1.3\n"
 "              (TLS)  Forces curl to use TLS version 1.3 or later when connect-\n"
 "              ing to a remote TLS server.\n"
 "\n"
-, stdout);
- fputs(
 "              If the connection is done without TLS, this option  has  no  ef-\n"
 "              fect. This includes QUIC-using (HTTP/3) transfers.\n"
 "\n"
 "              Note that TLS 1.3 is not supported by all TLS backends.\n"
 "\n"
+"              Example:\n"
+, stdout);
+ fputs(
+"               curl --tlsv1.3 https://example.com\n"
+"\n"
 "              Added in 7.52.0.\n"
 "\n"
 "       -1, --tlsv1\n"
@@ -3965,9 +4752,12 @@
 "              ing with a remote TLS server. That  means  TLS  version  1.0  or\n"
 "              higher\n"
 "\n"
+"              Example:\n"
+"               curl --tlsv1 https://example.com\n"
+"\n"
+"              See  also  --http1.1  and --http2. -1, --tlsv1 requires that the\n"
 , stdout);
  fputs(
-"              See  also  --http1.1  and --http2. -1, --tlsv1 requires that the\n"
 "              underlying libcurl was built to support TLS. This  option  over-\n"
 "              rides --tlsv1.1 and --tlsv1.2 and --tlsv1.3.\n"
 "\n"
@@ -3976,7 +4766,8 @@
 "              of the algorithms curl supports, and uncompress the  data  while\n"
 "              receiving it.\n"
 "\n"
-"              Added in 7.21.6.\n"
+"              Example:\n"
+"               curl --tr-encoding https://example.com\n"
 "\n"
 "       --trace-ascii <file>\n"
 , stdout);
@@ -3985,192 +4776,232 @@
 "              cluding descriptive information, to the given output  file.  Use\n"
 "              \"-\" as filename to have the output sent to stdout.\n"
 "\n"
-"              This is very similar to --trace, but leaves out the hex part and\n"
-"              only shows the ASCII part of the dump. It makes  smaller  output\n"
-"              that might be easier to read for untrained humans.\n"
+"              This is similar to --trace, but leaves out the hex part and only\n"
+"              shows the ASCII part of the dump. It makes smaller  output  that\n"
+"              might be easier to read for untrained humans.\n"
 "\n"
 , stdout);
  fputs(
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --trace-ascii log.txt https://example.com\n"
+"\n"
 "              This option overrides --trace and -v, --verbose.\n"
 "\n"
 "       --trace-time\n"
-"              Prepends  a  time  stamp to each trace or verbose line that curl\n"
+"              Prepends a time stamp to each trace or verbose  line  that  curl\n"
 "              displays.\n"
 "\n"
-"              Added in 7.14.0.\n"
+, stdout);
+ fputs(
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
+"              Example:\n"
+"               curl --trace-time --trace-ascii output https://example.com\n"
 "\n"
 "       --trace <file>\n"
 "              Enables a full trace dump of all incoming and outgoing data, in-\n"
 "              cluding  descriptive  information, to the given output file. Use\n"
+"              \"-\" as filename to have the output sent to stdout.  Use  \"%\"  as\n"
 , stdout);
  fputs(
-"              \"-\" as filename to have the output sent to stdout.  Use  \"%\"  as\n"
 "              filename to have the output sent to stderr.\n"
 "\n"
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
+"\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl --trace log.txt https://example.com\n"
+"\n"
 "              This option overrides -v, --verbose and --trace-ascii.\n"
 "\n"
 "       --unix-socket <path>\n"
+, stdout);
+ fputs(
 "              (HTTP) Connect through this Unix domain socket, instead of using\n"
 "              the network.\n"
 "\n"
+"              Example:\n"
+"               curl --unix-socket socket-path https://example.com\n"
+"\n"
 "              Added in 7.40.0.\n"
 "\n"
 "       -T, --upload-file <file>\n"
-, stdout);
- fputs(
-"              This transfers the specified local file to the  remote  URL.  If\n"
+"              This  transfers  the  specified local file to the remote URL. If\n"
 "              there is no file part in the specified URL, curl will append the\n"
 "              local file name. NOTE that you must use a trailing / on the last\n"
-"              directory  to really prove to Curl that there is no file name or\n"
-"              curl will think that your last directory name is the remote file\n"
-"              name to use. That will most likely cause the upload operation to\n"
 , stdout);
  fputs(
+"              directory to really prove to Curl that there is no file name  or\n"
+"              curl will think that your last directory name is the remote file\n"
+"              name to use. That will most likely cause the upload operation to\n"
 "              fail. If this is used on an HTTP(S) server, the PUT command will\n"
 "              be used.\n"
 "\n"
-"              Use  the file name \"-\" (a single dash) to use stdin instead of a\n"
-"              given file.  Alternately, the file name \".\"  (a  single  period)\n"
-"              may  be  specified  instead  of \"-\" to use stdin in non-blocking\n"
-"              mode to allow reading server output while  stdin  is  being  up-\n"
+"              Use the file name \"-\" (a single dash) to use stdin instead of  a\n"
+"              given  file.   Alternately,  the file name \".\" (a single period)\n"
+, stdout);
+ fputs(
+"              may be specified instead of \"-\" to  use  stdin  in  non-blocking\n"
+"              mode  to  allow  reading  server output while stdin is being up-\n"
 "              loaded.\n"
 "\n"
+"              You can specify one -T, --upload-file for each URL on  the  com-\n"
+"              mand  line.  Each -T, --upload-file + URL pair specifies what to\n"
+"              upload and to where. curl also supports \"globbing\"  of  the  -T,\n"
+"              --upload-file  argument,  meaning  that  you can upload multiple\n"
 , stdout);
  fputs(
-"              You  can  specify one -T, --upload-file for each URL on the com-\n"
-"              mand line. Each -T, --upload-file + URL pair specifies  what  to\n"
-"              upload  and  to  where. curl also supports \"globbing\" of the -T,\n"
-"              --upload-file argument, meaning that  you  can  upload  multiple\n"
-"              files  to a single URL by using the same URL globbing style sup-\n"
-"              ported in the URL, like this:\n"
+"              files to a single URL by using the same URL globbing style  sup-\n"
+"              ported in the URL.\n"
 "\n"
-, stdout);
- fputs(
-"               curl --upload-file \"{file1,file2}\" http://www.example.com\n"
-"\n"
-"              or even\n"
-"\n"
-"               curl -T \"img[1-1000].png\" ftp://ftp.example.com/upload/\n"
-"\n"
-"              When uploading to an SMTP server: the uploaded data  is  assumed\n"
+"              When  uploading  to an SMTP server: the uploaded data is assumed\n"
 "              to be RFC 5322 formatted. It has to feature the necessary set of\n"
-"              headers and mail body formatted correctly by the  user  as  curl\n"
+"              headers  and  mail  body formatted correctly by the user as curl\n"
 "              will not transcode nor encode it further in any way.\n"
 "\n"
-"       --url <url>\n"
+"              Examples:\n"
+"               curl -T file https://example.com\n"
 , stdout);
  fputs(
-"              Specify  a  URL  to  fetch. This option is mostly handy when you\n"
+"               curl -T \"img[1-1000].png\" ftp://ftp.example.com/\n"
+"               curl --upload-file \"{file1,file2}\" https://example.com\n"
+"\n"
+"       --url <url>\n"
+"              Specify a URL to fetch. This option is  mostly  handy  when  you\n"
 "              want to specify URL(s) in a config file.\n"
 "\n"
-"              If the given URL is missing a scheme name (such as \"http://\"  or\n"
-"              \"ftp://\"  etc) then curl will make a guess based on the host. If\n"
-"              the outermost sub-domain name matches  DICT,  FTP,  IMAP,  LDAP,\n"
-"              POP3  or  SMTP  then  that protocol will be used, otherwise HTTP\n"
+"              If  the given URL is missing a scheme name (such as \"http://\" or\n"
+"              \"ftp://\" etc) then curl will make a guess based on the host.  If\n"
 , stdout);
  fputs(
+"              the  outermost  sub-domain  name  matches DICT, FTP, IMAP, LDAP,\n"
+"              POP3 or SMTP then that protocol will  be  used,  otherwise  HTTP\n"
 "              will be used. Since 7.45.0 guessing can be disabled by setting a\n"
 "              default protocol, see --proto-default for details.\n"
 "\n"
-"              This  option  may  be used any number of times. To control where\n"
-"              this URL is written, use the -o, --output or the  -O,  --remote-\n"
+"              This option may be used any number of times.  To  control  where\n"
+"              this  URL  is written, use the -o, --output or the -O, --remote-\n"
 "              name options.\n"
 "\n"
-"              Warning:  On  Windows,  particular  file:// accesses can be con-\n"
-"              verted to network accesses by the operating system. Beware!\n"
-"\n"
 , stdout);
  fputs(
+"              WARNING: On Windows, particular file://  accesses  can  be  con-\n"
+"              verted to network accesses by the operating system. Beware!\n"
+"\n"
+"              Example:\n"
+"               curl --url https://example.com\n"
+"\n"
 "       -B, --use-ascii\n"
-"              (FTP LDAP) Enable ASCII transfer. For FTP, this can also be  en-\n"
-"              forced  by  using  a  URL  that ends with \";type=A\". This option\n"
+"              (FTP  LDAP) Enable ASCII transfer. For FTP, this can also be en-\n"
+"              forced by using a URL that  ends  with  \";type=A\".  This  option\n"
 "              causes data sent to stdout to be in text mode for win32 systems.\n"
 "\n"
+, stdout);
+ fputs(
+"              Example:\n"
+"               curl -B ftp://example.com/README\n"
+"\n"
 "       -A, --user-agent <name>\n"
 "              (HTTP) Specify the User-Agent string to send to the HTTP server.\n"
-"              To  encode blanks in the string, surround the string with single\n"
-, stdout);
- fputs(
-"              quote marks. This header can also be set with the  -H,  --header\n"
+"              To encode blanks in the string, surround the string with  single\n"
+"              quote  marks.  This header can also be set with the -H, --header\n"
 "              or the --proxy-header options.\n"
 "\n"
-"              If  you give an empty argument to -A, --user-agent (\"\"), it will\n"
-"              remove the header completely from the request. If you  prefer  a\n"
+"              If you give an empty argument to -A, --user-agent (\"\"), it  will\n"
+, stdout);
+ fputs(
+"              remove  the  header completely from the request. If you prefer a\n"
 "              blank header, you can set it to a single space (\" \").\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl -A \"Agent 007\" https://example.com\n"
+"\n"
 "       -u, --user <user:password>\n"
-, stdout);
- fputs(
 "              Specify the user name and password to use for server authentica-\n"
 "              tion. Overrides -n, --netrc and --netrc-optional.\n"
 "\n"
-"              If you simply specify the user name,  curl  will  prompt  for  a\n"
+, stdout);
+ fputs(
+"              If  you  simply  specify  the  user name, curl will prompt for a\n"
 "              password.\n"
 "\n"
-"              The  user  name  and  passwords are split up on the first colon,\n"
-"              which makes it impossible to use a colon in the user  name  with\n"
+"              The user name and passwords are split up  on  the  first  colon,\n"
+"              which  makes  it impossible to use a colon in the user name with\n"
 "              this option. The password can, still.\n"
 "\n"
+"              On systems where it works, curl will hide the given option argu-\n"
+"              ment  from  process listings. This is not enough to protect cre-\n"
 , stdout);
  fputs(
-"              On systems where it works, curl will hide the given option argu-\n"
-"              ment from process listings. This is not enough to  protect  cre-\n"
-"              dentials  from  possibly getting seen by other users on the same\n"
-"              system as they will still be visible for a brief  moment  before\n"
+"              dentials from possibly getting seen by other users on  the  same\n"
+"              system  as  they  will  still  be  visible  for  a moment before\n"
 "              cleared. Such sensitive data should be retrieved from a file in-\n"
 "              stead or similar and never used in clear text in a command line.\n"
+"              When  using  Kerberos  V5 with a Windows based server you should\n"
+"              include the Windows domain name in the user name, in  order  for\n"
 , stdout);
  fputs(
-"              When using Kerberos V5 with a Windows based  server  you  should\n"
-"              include  the  Windows domain name in the user name, in order for\n"
-"              the server to successfully obtain  a  Kerberos  Ticket.  If  you\n"
-"              don't then the initial authentication handshake may fail.\n"
+"              the  server  to successfully obtain a Kerberos Ticket. If you do\n"
+"              not, then the initial authentication handshake may fail.\n"
 "\n"
-"              When  using  NTLM,  the user name can be specified simply as the\n"
-"              user name, without the domain, if there is a single  domain  and\n"
-, stdout);
- fputs(
+"              When using NTLM, the user name can be specified  simply  as  the\n"
+"              user  name,  without the domain, if there is a single domain and\n"
 "              forest in your setup for example.\n"
 "\n"
-"              To  specify  the domain name use either Down-Level Logon Name or\n"
+"              To specify the domain name use either Down-Level Logon  Name  or\n"
+, stdout);
+ fputs(
 "              UPN (User Principal Name) formats. For example, EXAMPLE\\user and\n"
 "              user@example.com respectively.\n"
 "\n"
-"              If  you  use a Windows SSPI-enabled curl binary and perform Ker-\n"
-"              beros V5, Negotiate, NTLM or Digest authentication then you  can\n"
-"              tell  curl  to select the user name and password from your envi-\n"
-, stdout);
- fputs(
+"              If you use a Windows SSPI-enabled curl binary and  perform  Ker-\n"
+"              beros  V5, Negotiate, NTLM or Digest authentication then you can\n"
+"              tell curl to select the user name and password from  your  envi-\n"
 "              ronment by specifying a single colon with this option: \"-u :\".\n"
 "\n"
+, stdout);
+ fputs(
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl -u user:secret https://example.com\n"
+"\n"
 "       -v, --verbose\n"
-"              Makes curl verbose during the operation.  Useful  for  debugging\n"
-"              and  seeing  what's  going  on \"under the hood\". A line starting\n"
-"              with '>' means \"header data\" sent by  curl,  '<'  means  \"header\n"
-"              data\"  received  by  curl  that is hidden in normal cases, and a\n"
+"              Makes  curl  verbose  during the operation. Useful for debugging\n"
+"              and seeing what's going on \"under the  hood\".  A  line  starting\n"
+"              with  '>'  means  \"header  data\" sent by curl, '<' means \"header\n"
+"              data\" received by curl that is hidden in  normal  cases,  and  a\n"
 , stdout);
  fputs(
 "              line starting with '*' means additional info provided by curl.\n"
 "\n"
 "              If you only want HTTP headers in the output, -i, --include might\n"
-"              be the option you're looking for.\n"
+"              be the option you are looking for.\n"
 "\n"
-"              If  you think this option still doesn't give you enough details,\n"
+"              If you think this option still does not give you enough details,\n"
 "              consider using --trace or --trace-ascii instead.\n"
 "\n"
-"              Use -s, --silent to make curl really quiet.\n"
+"              This option is global and does not need to be specified for each\n"
+"              use of -:, --next.\n"
 "\n"
-"              See also  -i,  --include.  This  option  overrides  --trace  and\n"
 , stdout);
  fputs(
+"              Use -s, --silent to make curl really quiet.\n"
+"\n"
+"              Example:\n"
+"               curl --verbose https://example.com\n"
+"\n"
+"              See also  -i,  --include.  This  option  overrides  --trace  and\n"
 "              --trace-ascii.\n"
 "\n"
 "       -V, --version\n"
@@ -4178,12 +5009,12 @@
 "              The  first  line  includes the full version of curl, libcurl and\n"
 "              other 3rd party libraries linked with the executable.\n"
 "\n"
+, stdout);
+ fputs(
 "              The second line (starts with \"Protocols:\") shows  all  protocols\n"
 "              that libcurl reports to support.\n"
 "\n"
 "              The third line (starts with \"Features:\") shows specific features\n"
-, stdout);
- fputs(
 "              libcurl reports to offer. Available features include:\n"
 "\n"
 "              alt-svc\n"
@@ -4191,18 +5022,20 @@
 "\n"
 "              AsynchDNS\n"
 "                     This curl uses asynchronous name  resolves.  Asynchronous\n"
+, stdout);
+ fputs(
 "                     name  resolves can be done using either the c-ares or the\n"
 "                     threaded resolver backends.\n"
 "\n"
 "              brotli Support for automatic brotli compression over HTTP(S).\n"
 "\n"
 "              CharConv\n"
-, stdout);
- fputs(
 "                     curl was built with support for character set conversions\n"
 "                     (like EBCDIC)\n"
 "\n"
 "              Debug  This  curl  uses a libcurl built with Debug. This enables\n"
+, stdout);
+ fputs(
 "                     more error-tracking and memory debugging etc.  For  curl-\n"
 "                     developers only!\n"
 "\n"
@@ -4210,8 +5043,6 @@
 "                     support SCRAM because libcurl was built with libgsasl.\n"
 "\n"
 "              GSS-API\n"
-, stdout);
- fputs(
 "                     GSS-API is supported.\n"
 "\n"
 "              HSTS   HSTS support is present.\n"
@@ -4219,6 +5050,8 @@
 "              HTTP2  HTTP/2 support has been built-in.\n"
 "              HTTP3  HTTP/3 support has been built-in.\n"
 "\n"
+, stdout);
+ fputs(
 "              HTTPS-proxy\n"
 "                     This curl is built to support HTTPS proxy.\n"
 "\n"
@@ -4227,14 +5060,14 @@
 "              IPv6   You can use IPv6 with this.\n"
 "\n"
 "              Kerberos\n"
-, stdout);
- fputs(
 "                     Kerberos V5 authentication is supported.\n"
 "\n"
 "              Largefile\n"
 "                     This curl supports transfers of large files, files larger\n"
 "                     than 2GB.\n"
 "\n"
+, stdout);
+ fputs(
 "              libz   Automatic decompression (via gzip, deflate) of compressed\n"
 "                     files over HTTP is supported.\n"
 "\n"
@@ -4244,11 +5077,11 @@
 "              NTLM   NTLM authentication is supported.\n"
 "\n"
 "              NTLM_WB\n"
-, stdout);
- fputs(
 "                     NTLM delegation to winbind helper is supported.\n"
 "\n"
 "              PSL    PSL is short for Public Suffix List and means  that  this\n"
+, stdout);
+ fputs(
 "                     curl  has  been  built  with knowledge about \"public suf-\n"
 "                     fixes\".\n"
 "\n"
@@ -4259,13 +5092,13 @@
 "\n"
 "              SSPI   SSPI is supported.\n"
 "\n"
-, stdout);
- fputs(
 "              TLS-SRP\n"
 "                     SRP  (Secure Remote Password) authentication is supported\n"
 "                     for TLS.\n"
 "\n"
 "              TrackMemory\n"
+, stdout);
+ fputs(
 "                     Debug memory tracking is supported.\n"
 "\n"
 "              Unicode\n"
@@ -4277,29 +5110,32 @@
 "              zstd   Automatic decompression (via zstd)  of  compressed  files\n"
 "                     over HTTP is supported.\n"
 "\n"
-, stdout);
- fputs(
+"       Example:\n"
+"        curl --version\n"
+"\n"
 "       -w, --write-out <format>\n"
 "              Make curl display information on stdout after a completed trans-\n"
+, stdout);
+ fputs(
 "              fer. The format is a string that may contain  plain  text  mixed\n"
 "              with  any  number of variables. The format can be specified as a\n"
 "              literal \"string\", or you can have curl read the  format  from  a\n"
 "              file  with  \"@filename\" and to tell curl to read the format from\n"
 "              stdin you write \"@-\".\n"
 "\n"
+"              The variables present in the output format will  be  substituted\n"
 , stdout);
  fputs(
-"              The variables present in the output format will  be  substituted\n"
 "              by  the  value or text that curl thinks fit, as described below.\n"
 "              All variables are specified as %{variable_name} and to output  a\n"
 "              normal  % you just write them as %%. You can output a newline by\n"
 "              using \\n, a carriage return with \\r and a tab space with \\t.\n"
 "\n"
 "              The output will be written to standard output, but this  can  be\n"
-, stdout);
- fputs(
 "              switched to standard error by using %{stderr}.\n"
 "\n"
+, stdout);
+ fputs(
 "              NOTE: The %-symbol is a special symbol in the win32-environment,\n"
 "              where all occurrences of % must be doubled when using  this  op-\n"
 "              tion.\n"
@@ -4311,9 +5147,9 @@
 "\n"
 "              errormsg       The error message. (Added in 7.75.0)\n"
 "\n"
+"              exitcode       The numerical exitcode of the transfer. (Added in\n"
 , stdout);
  fputs(
-"              exitcode       The numerical exitcode of the transfer. (Added in\n"
 "                             7.75.0)\n"
 "\n"
 "              filename_effective\n"
@@ -4321,203 +5157,206 @@
 "                             This is only meaningful if curl is told to  write\n"
 "                             to  a  file  with  the  -O,  --remote-name or -o,\n"
 "                             --output option. It's most useful in  combination\n"
+"                             with the -J, --remote-header-name option.\n"
+"\n"
 , stdout);
  fputs(
-"                             with  the -J, --remote-header-name option. (Added\n"
-"                             in 7.26.0)\n"
-"\n"
 "              ftp_entry_path The initial path curl ended up in when logging on\n"
-"                             to the remote FTP server. (Added in 7.15.4)\n"
+"                             to the remote FTP server.\n"
 "\n"
 "              http_code      The numerical response code that was found in the\n"
-"                             last retrieved HTTP(S)  or  FTP(s)  transfer.  In\n"
-, stdout);
- fputs(
-"                             7.18.2  the alias response_code was added to show\n"
-"                             the same info.\n"
+"                             last retrieved HTTP(S) or FTP(s) transfer.\n"
 "\n"
 "              http_connect   The numerical code that was found in the last re-\n"
-"                             sponse  (from a proxy) to a curl CONNECT request.\n"
-"                             (Added in 7.12.4)\n"
+"                             sponse (from a proxy) to a curl CONNECT request.\n"
 "\n"
+, stdout);
+ fputs(
 "              http_version   The  http  version  that  was  effectively  used.\n"
 "                             (Added in 7.50.0)\n"
 "\n"
-, stdout);
- fputs(
 "              json           A JSON object with all available keys.\n"
 "\n"
 "              local_ip       The  IP  address of the local end of the most re-\n"
 "                             cently done connection - can be  either  IPv4  or\n"
-"                             IPv6. (Added in 7.29.0)\n"
+"                             IPv6.\n"
 "\n"
 "              local_port     The  local  port number of the most recently done\n"
-"                             connection. (Added in 7.29.0)\n"
-"\n"
-"              method         The http method used in the most recent HTTP  re-\n"
 , stdout);
  fputs(
+"                             connection.\n"
+"\n"
+"              method         The http method used in the most recent HTTP  re-\n"
 "                             quest. (Added in 7.72.0)\n"
 "\n"
 "              num_connects   Number  of new connects made in the recent trans-\n"
-"                             fer. (Added in 7.12.3)\n"
+"                             fer.\n"
 "\n"
 "              num_headers    The number of response headers in the most recent\n"
 "                             request (restarted at each\n"
+, stdout);
+ fputs(
 "                              redirect).  Note  that  the status line IS NOT a\n"
 "                             header. (Added in 7.73.0)\n"
 "\n"
-, stdout);
- fputs(
 "              num_redirects  Number of redirects that were followed in the re-\n"
-"                             quest. (Added in 7.12.3)\n"
+"                             quest.\n"
 "\n"
 "              onerror        The  rest  of  the  output  is  only shown if the\n"
 "                             transfer returned  a  non-zero  error  (Added  in\n"
 "                             7.75.0)\n"
 "\n"
 "              proxy_ssl_verify_result\n"
-"                             The result of the HTTPS proxy's SSL peer certifi-\n"
 , stdout);
  fputs(
+"                             The result of the HTTPS proxy's SSL peer certifi-\n"
 "                             cate verification that was requested. 0 means the\n"
 "                             verification was successful. (Added in 7.52.0)\n"
 "\n"
 "              redirect_url   When an HTTP request was made without -L, --loca-\n"
 "                             tion to follow redirects (or when --max-redirs is\n"
 "                             met),  this  variable  will show the actual URL a\n"
-"                             redirect would have gone to. (Added in 7.18.2)\n"
-"\n"
 , stdout);
  fputs(
+"                             redirect would have gone to.\n"
+"\n"
 "              referer        The Referer: header, if there was any. (Added  in\n"
 "                             7.76.0)\n"
 "\n"
 "              remote_ip      The  remote  IP address of the most recently done\n"
-"                             connection - can be either IPv4 or  IPv6.  (Added\n"
-"                             in 7.29.0)\n"
+"                             connection - can be either IPv4 or IPv6.\n"
 "\n"
-"              remote_port    The  remote port number of the most recently done\n"
-"                             connection. (Added in 7.29.0)\n"
+"              remote_port    The remote port number of the most recently  done\n"
+"                             connection.\n"
 "\n"
 , stdout);
  fputs(
 "              response_code  The numerical response code that was found in the\n"
-"                             last  transfer  (formerly  known as \"http_code\").\n"
-"                             (Added in 7.18.2)\n"
+"                             last transfer (formerly known as \"http_code\").\n"
 "\n"
 "              scheme         The URL scheme (sometimes called  protocol)  that\n"
 "                             was effectively used. (Added in 7.52.0)\n"
 "\n"
-"              size_download  The total amount of bytes that were downloaded.\n"
-"\n"
+"              size_download  The  total  amount of bytes that were downloaded.\n"
+"                             This is the size of the body/data that was trans-\n"
 , stdout);
  fputs(
+"                             ferred, excluding headers.\n"
+"\n"
 "              size_header    The total amount of bytes of the downloaded head-\n"
 "                             ers.\n"
 "\n"
 "              size_request   The total amount of bytes that were sent  in  the\n"
 "                             HTTP request.\n"
 "\n"
-"              size_upload    The total amount of bytes that were uploaded.\n"
+"              size_upload    The  total  amount  of  bytes that were uploaded.\n"
+"                             This is the size of the body/data that was trans-\n"
+, stdout);
+ fputs(
+"                             ferred, excluding headers.\n"
 "\n"
 "              speed_download The average download speed that curl measured for\n"
 "                             the complete download. Bytes per second.\n"
 "\n"
-, stdout);
- fputs(
 "              speed_upload   The average upload speed that curl  measured  for\n"
 "                             the complete upload. Bytes per second.\n"
 "\n"
 "              ssl_verify_result\n"
 "                             The  result of the SSL peer certificate verifica-\n"
-"                             tion that was requested. 0 means the verification\n"
-"                             was successful. (Added in 7.19.0)\n"
-"\n"
-"              stderr         From  this  point  on, the -w, --write-out output\n"
 , stdout);
  fputs(
+"                             tion that was requested. 0 means the verification\n"
+"                             was successful.\n"
+"\n"
+"              stderr         From  this  point  on, the -w, --write-out output\n"
 "                             will be written  to  standard  error.  (Added  in\n"
 "                             7.63.0)\n"
 "\n"
 "              stdout         From  this  point  on, the -w, --write-out output\n"
 "                             will be written to standard output.  This is  the\n"
+, stdout);
+ fputs(
 "                             default,  but  can  be  used to switch back after\n"
 "                             switching to stderr.  (Added in 7.63.0)\n"
 "\n"
 "              time_appconnect\n"
-, stdout);
- fputs(
 "                             The time, in seconds, it took from the start  un-\n"
 "                             til  the SSL/SSH/etc connect/handshake to the re-\n"
-"                             mote host was completed. (Added in 7.19.0)\n"
+"                             mote host was completed.\n"
 "\n"
 "              time_connect   The time, in seconds, it took from the start  un-\n"
+, stdout);
+ fputs(
 "                             til the TCP connect to the remote host (or proxy)\n"
 "                             was completed.\n"
 "\n"
 "              time_namelookup\n"
-, stdout);
- fputs(
 "                             The time, in seconds, it took from the start  un-\n"
 "                             til the name resolving was completed.\n"
 "\n"
 "              time_pretransfer\n"
 "                             The  time, in seconds, it took from the start un-\n"
 "                             til the file transfer was just  about  to  begin.\n"
-"                             This includes all pre-transfer commands and nego-\n"
-"                             tiations that are specific to the particular pro-\n"
 , stdout);
  fputs(
+"                             This includes all pre-transfer commands and nego-\n"
+"                             tiations that are specific to the particular pro-\n"
 "                             tocol(s) involved.\n"
 "\n"
 "              time_redirect  The time, in seconds, it took for all redirection\n"
 "                             steps including name lookup, connect, pretransfer\n"
 "                             and  transfer  before  the  final transaction was\n"
-"                             started. time_redirect shows the complete  execu-\n"
-"                             tion  time  for  multiple redirections. (Added in\n"
-"                             7.12.3)\n"
-"\n"
 , stdout);
  fputs(
+"                             started. time_redirect shows the complete  execu-\n"
+"                             tion time for multiple redirections.\n"
+"\n"
 "              time_starttransfer\n"
-"                             The time, in seconds, it took from the start  un-\n"
-"                             til  the  first  byte was just about to be trans-\n"
-"                             ferred. This includes time_pretransfer  and  also\n"
-"                             the  time  the server needed to calculate the re-\n"
+"                             The  time, in seconds, it took from the start un-\n"
+"                             til the first byte was just about  to  be  trans-\n"
+"                             ferred.  This  includes time_pretransfer and also\n"
+"                             the time the server needed to calculate  the  re-\n"
+, stdout);
+ fputs(
 "                             sult.\n"
 "\n"
-"              time_total     The total time, in seconds, that the full  opera-\n"
-, stdout);
- fputs(
+"              time_total     The  total time, in seconds, that the full opera-\n"
 "                             tion lasted.\n"
 "\n"
 "              url            The URL that was fetched. (Added in 7.75.0)\n"
 "\n"
 "              urlnum         The URL index number of this transfer, 0-indexed.\n"
-"                             De-globbed URLs share the same  index  number  as\n"
+"                             De-globbed  URLs  share  the same index number as\n"
 "                             the origin globbed URL. (Added in 7.75.0)\n"
 "\n"
-"              url_effective  The URL that was fetched last. This is most mean-\n"
 , stdout);
  fputs(
-"                             ingful if you've told curl  to  follow  location:\n"
+"              url_effective  The URL that was fetched last. This is most mean-\n"
+"                             ingful  if you have told curl to follow location:\n"
 "                             headers.\n"
 "\n"
 "              If this option is used several times, the last one will be used.\n"
 "\n"
+"              Example:\n"
+"               curl -w '%{http_code}\\n' https://example.com\n"
+"\n"
 "       --xattr\n"
-"              When  saving  output  to a file, this option tells curl to store\n"
-"              certain file metadata in extended  file  attributes.  Currently,\n"
-"              the URL is stored in the xdg.origin.url attribute and, for HTTP,\n"
+"              When saving output to a file, this option tells  curl  to  store\n"
 , stdout);
  fputs(
-"              the content type is stored in the mime_type  attribute.  If  the\n"
-"              file  system  does not support extended attributes, a warning is\n"
+"              certain  file  metadata  in extended file attributes. Currently,\n"
+"              the URL is stored in the xdg.origin.url attribute and, for HTTP,\n"
+"              the  content  type  is stored in the mime_type attribute. If the\n"
+"              file system does not support extended attributes, a  warning  is\n"
 "              issued.\n"
 "\n"
+"              Example:\n"
+"               curl --xattr -o storage https://example.com\n"
+"\n"
 "FILES\n"
 "       ~/.curlrc\n"
+, stdout);
+ fputs(
 "              Default config file, see -K, --config for details.\n"
 "\n"
 "ENVIRONMENT\n"
@@ -4525,97 +5364,94 @@
 "       The lower case version has precedence. http_proxy is an exception as it\n"
 "       is only available in lower case.\n"
 "\n"
-, stdout);
- fputs(
-"       Using an environment variable to set the proxy has the same  effect  as\n"
+"       Using  an  environment variable to set the proxy has the same effect as\n"
 "       using the -x, --proxy option.\n"
 "\n"
 "       http_proxy [protocol://]<host>[:port]\n"
 "              Sets the proxy server to use for HTTP.\n"
+, stdout);
+ fputs(
 "       HTTPS_PROXY [protocol://]<host>[:port]\n"
 "              Sets the proxy server to use for HTTPS.\n"
 "\n"
 "       [url-protocol]_PROXY [protocol://]<host>[:port]\n"
-"              Sets  the proxy server to use for [url-protocol], where the pro-\n"
-, stdout);
- fputs(
-"              tocol is a protocol that curl supports and  as  specified  in  a\n"
+"              Sets the proxy server to use for [url-protocol], where the  pro-\n"
+"              tocol  is  a  protocol  that curl supports and as specified in a\n"
 "              URL. FTP, FTPS, POP3, IMAP, SMTP, LDAP, etc.\n"
 "\n"
 "       ALL_PROXY [protocol://]<host>[:port]\n"
-"              Sets  the  proxy  server to use if no protocol-specific proxy is\n"
+"              Sets the proxy server to use if no  protocol-specific  proxy  is\n"
+, stdout);
+ fputs(
 "              set.\n"
 "\n"
 "       NO_PROXY <comma-separated list of hosts/domains>\n"
-"              list of host names that shouldn't go through any proxy.  If  set\n"
+"              list  of host names that should not go through any proxy. If set\n"
 "              to an asterisk '*' only, it matches all hosts. Each name in this\n"
-, stdout);
- fputs(
 "              list is matched as either a domain name which contains the host-\n"
 "              name, or the hostname itself.\n"
 "\n"
-"              This  environment  variable  disables use of the proxy even when\n"
-"              specified with the -x,  --proxy  option.  That  is  NO_PROXY=di-\n"
-"              rect.example.com  curl  -x  http://proxy.example.com  http://di-\n"
-"              rect.example.com  accesses  the   target   URL   directly,   and\n"
+"              This environment variable disables use of the  proxy  even  when\n"
 , stdout);
  fputs(
-"              NO_PROXY=direct.example.com   curl  -x  http://proxy.example.com\n"
+"              specified  with  the  -x,  --proxy  option. That is NO_PROXY=di-\n"
+"              rect.example.com  curl  -x  http://proxy.example.com  http://di-\n"
+"              rect.example.com   accesses   the   target   URL  directly,  and\n"
+"              NO_PROXY=direct.example.com  curl  -x   http://proxy.example.com\n"
 "              http://somewhere.example.com accesses the target URL through the\n"
 "              proxy.\n"
 "\n"
-"              The  list  of  host  names  can also be include numerical IP ad-\n"
-"              dresses, and IPv6 versions should then be given without  enclos-\n"
+"              The list of host names can also  be  include  numerical  IP  ad-\n"
+, stdout);
+ fputs(
+"              dresses,  and IPv6 versions should then be given without enclos-\n"
 "              ing brackets.\n"
 "\n"
-"              IPv6  numerical  addresses are compared as strings, so they will\n"
-, stdout);
- fputs(
-"              only match if the representations are the  same:  \"::1\"  is  the\n"
-"              same as \"::0:1\" but they don't match.\n"
+"              IPv6 numerical addresses are compared as strings, so  they  will\n"
+"              only  match  if  the  representations are the same: \"::1\" is the\n"
+"              same as \"::0:1\" but they do not match.\n"
 "\n"
 "       CURL_SSL_BACKEND <TLS backend>\n"
-"              If  curl  was built with support for \"MultiSSL\", meaning that it\n"
-"              has built-in support for more than one TLS backend,  this  envi-\n"
-"              ronment  variable can be set to the case insensitive name of the\n"
-"              particular backend to use when curl is invoked. Setting  a  name\n"
+"              If curl was built with support for \"MultiSSL\", meaning  that  it\n"
 , stdout);
  fputs(
-"              that  isn't  a built-in alternative will make curl stay with the\n"
+"              has  built-in  support for more than one TLS backend, this envi-\n"
+"              ronment variable can be set to the case insensitive name of  the\n"
+"              particular  backend  to use when curl is invoked. Setting a name\n"
+"              that is not a built-in alternative will make curl stay with  the\n"
 "              default.\n"
 "\n"
-"              SSL backend names (case-insensitive):  bearssl,  gnutls,  gskit,\n"
+"              SSL  backend  names  (case-insensitive): bearssl, gnutls, gskit,\n"
 "              mbedtls, mesalink, nss, openssl, rustls, schannel, secure-trans-\n"
+, stdout);
+ fputs(
 "              port, wolfssl\n"
 "\n"
 "       QLOGDIR <directory name>\n"
-"              If curl was built with HTTP/3 support, setting this  environment\n"
-"              variable  to  a  local directory will make curl produce qlogs in\n"
-, stdout);
- fputs(
-"              that directory, using file names  named  after  the  destination\n"
-"              connection  id  (in  hex).  Do  note that these files can become\n"
+"              If  curl was built with HTTP/3 support, setting this environment\n"
+"              variable to a local directory will make curl  produce  qlogs  in\n"
+"              that  directory,  using  file  names named after the destination\n"
+"              connection id (in hex). Do note  that  these  files  can  become\n"
 "              rather large. Works with both QUIC backends.\n"
 "\n"
 "       SSLKEYLOGFILE <file name>\n"
-"              If you set this environment variable to a file name,  curl  will\n"
-"              store TLS secrets from its connections in that file when invoked\n"
-"              to enable you to analyze the TLS traffic in real time using net-\n"
 , stdout);
  fputs(
+"              If  you  set this environment variable to a file name, curl will\n"
+"              store TLS secrets from its connections in that file when invoked\n"
+"              to enable you to analyze the TLS traffic in real time using net-\n"
 "              work analyzing tools such as Wireshark. This works with the fol-\n"
-"              lowing TLS backends: OpenSSL, libressl, BoringSSL,  GnuTLS,  NSS\n"
+"              lowing  TLS  backends: OpenSSL, libressl, BoringSSL, GnuTLS, NSS\n"
 "              and wolfSSL.\n"
 "\n"
 "PROXY PROTOCOL PREFIXES\n"
-"       Since  curl  version  7.21.7,  the proxy string may be specified with a\n"
-"       protocol:// prefix to specify alternative proxy protocols.\n"
-"\n"
-"       If no protocol is specified in  the  proxy  string  or  if  the  string\n"
 , stdout);
  fputs(
-"       doesn't  match  a  supported  one, the proxy will be treated as an HTTP\n"
-"       proxy.\n"
+"       The proxy string may be specified with a protocol:// prefix to  specify\n"
+"       alternative proxy protocols.\n"
+"\n"
+"       If  no  protocol is specified in the proxy string or if the string does\n"
+"       not match a supported one, the proxy will be treated as an HTTP proxy.\n"
 "\n"
 "       The supported proxy protocol prefixes are as follows:\n"
 "\n"
@@ -4624,6 +5460,8 @@
 "              fix is used.\n"
 "\n"
 "       https://\n"
+, stdout);
+ fputs(
 "              Makes it treated as an HTTPS proxy.\n"
 "\n"
 "       socks4://\n"
@@ -4633,8 +5471,6 @@
 "              Makes it the equivalent of --socks4a\n"
 "\n"
 "       socks5://\n"
-, stdout);
- fputs(
 "              Makes it the equivalent of --socks5\n"
 "\n"
 "       socks5h://\n"
@@ -4642,6 +5478,8 @@
 "\n"
 "EXIT CODES\n"
 "       There  are a bunch of different error codes and their corresponding er-\n"
+, stdout);
+ fputs(
 "       ror messages that may appear under error conditions.  At  the  time  of\n"
 "       this writing, the exit codes are:\n"
 "\n"
@@ -4650,80 +5488,80 @@
 "\n"
 "       2      Failed to initialize.\n"
 "\n"
-, stdout);
- fputs(
 "       3      URL malformed. The syntax was not correct.\n"
 "\n"
 "       4      A feature or option that was needed to perform the  desired  re-\n"
 "              quest  was not enabled or was explicitly disabled at build-time.\n"
+, stdout);
+ fputs(
 "              To make curl able to do this, you probably need another build of\n"
 "              libcurl!\n"
 "\n"
-"       5      Couldn't  resolve  proxy.  The given proxy host could not be re-\n"
+"       5      Could  not  resolve proxy. The given proxy host could not be re-\n"
 "              solved.\n"
 "\n"
-"       6      Couldn't resolve host. The given remote host could  not  be  re-\n"
-, stdout);
- fputs(
+"       6      Could not resolve host. The given remote host could not  be  re-\n"
 "              solved.\n"
 "\n"
 "       7      Failed to connect to host.\n"
 "\n"
-"       8      Weird server reply. The server sent data curl couldn't parse.\n"
+"       8      Weird server reply. The server sent data curl could not parse.\n"
 "\n"
+, stdout);
+ fputs(
 "       9      FTP  access  denied. The server denied login or denied access to\n"
 "              the particular resource or directory you wanted to  reach.  Most\n"
-"              often  you  tried to change to a directory that doesn't exist on\n"
+"              often  you tried to change to a directory that does not exist on\n"
 "              the server.\n"
 "\n"
 "       10     FTP accept failed. While waiting for the server to connect  back\n"
-, stdout);
- fputs(
 "              when  an active FTP session is used, an error code was sent over\n"
 "              the control connection or similar.\n"
 "\n"
-"       11     FTP weird PASS reply. Curl couldn't parse the reply sent to  the\n"
+, stdout);
+ fputs(
+"       11     FTP weird PASS reply. Curl could not parse the reply sent to the\n"
 "              PASS request.\n"
 "\n"
 "       12     During  an  active  FTP  session while waiting for the server to\n"
 "              connect back to curl, the timeout expired.\n"
 "\n"
-"       13     FTP weird PASV reply, Curl couldn't parse the reply sent to  the\n"
+"       13     FTP weird PASV reply, Curl could not parse the reply sent to the\n"
 "              PASV request.\n"
 "\n"
+"       14     FTP  weird  227  format.  Curl  could not parse the 227-line the\n"
+"              server sent.\n"
+"\n"
 , stdout);
  fputs(
-"       14     FTP  weird  227  format.  Curl  couldn't  parse the 227-line the\n"
-"              server sent.\n"
-"\n"
-"       15     FTP can't get host. Couldn't resolve the host IP we got  in  the\n"
+"       15     FTP cannot use host. Could not resolve the host IP we got in the\n"
 "              227-line.\n"
 "\n"
 "       16     HTTP/2 error. A problem was detected in the HTTP2 framing layer.\n"
 "              This is somewhat generic and can be one out of several problems,\n"
 "              see the error message for details.\n"
 "\n"
-"       17     FTP  couldn't set binary. Couldn't change transfer method to bi-\n"
-, stdout);
- fputs(
-"              nary.\n"
+"       17     FTP  could  not  set binary. Could not change transfer method to\n"
+"              binary.\n"
 "\n"
 "       18     Partial file. Only a part of the file was transferred.\n"
 "\n"
-"       19     FTP couldn't download/access the given file, the RETR (or  simi-\n"
+, stdout);
+ fputs(
+"       19     FTP could not download/access the given file, the RETR (or simi-\n"
 "              lar) command failed.\n"
 "\n"
 "       21     FTP quote error. A quote command returned error from the server.\n"
 "       22     HTTP  page not retrieved. The requested url was not found or re-\n"
 "              turned another error with the  HTTP  error  code  being  400  or\n"
-, stdout);
- fputs(
 "              above. This return code only appears if -f, --fail is used.\n"
 "\n"
-"       23     Write  error.  Curl couldn't write data to a local filesystem or\n"
+, stdout);
+ fputs(
+"       23     Write  error. Curl could not write data to a local filesystem or\n"
 "              similar.\n"
 "\n"
-"       25     FTP couldn't STOR file. The server denied  the  STOR  operation,\n"
+"       25     FTP could not STOR file. The server denied the  STOR  operation,\n"
 "              used for FTP uploading.\n"
 "\n"
 "       26     Read error. Various reading problems.\n"
@@ -4731,18 +5569,18 @@
 "       27     Out of memory. A memory allocation request failed.\n"
 "\n"
 "       28     Operation timeout. The specified time-out period was reached ac-\n"
-, stdout);
- fputs(
 "              cording to the conditions.\n"
 "\n"
+, stdout);
+ fputs(
 "       30     FTP PORT failed. The PORT command failed. Not  all  FTP  servers\n"
 "              support  the  PORT  command, try doing a transfer using PASV in-\n"
 "              stead!\n"
 "\n"
-"       31     FTP couldn't use REST. The REST command failed. This command  is\n"
+"       31     FTP could not use REST. The REST command failed. This command is\n"
 "              used for resumed FTP transfers.\n"
 "\n"
-"       33     HTTP range error. The range \"command\" didn't work.\n"
+"       33     HTTP range error. The range \"command\" did not work.\n"
 "\n"
 "       34     HTTP post error. Internal post-request generation error.\n"
 "\n"
@@ -4750,10 +5588,10 @@
  fputs(
 "       35     SSL connect error. The SSL handshaking failed.\n"
 "\n"
-"       36     Bad  download resume. Couldn't continue an earlier aborted down-\n"
+"       36     Bad download resume. Could not continue an earlier aborted down-\n"
 "              load.\n"
 "\n"
-"       37     FILE couldn't read file. Failed to open the file. Permissions?\n"
+"       37     FILE could not read file. Failed to open the file. Permissions?\n"
 "\n"
 "       38     LDAP cannot bind. LDAP bind operation failed.\n"
 "\n"
@@ -4784,7 +5622,7 @@
 "\n"
 "       51     The peer's SSL certificate or SSH MD5 fingerprint was not OK.\n"
 "\n"
-"       52     The  server  didn't  reply anything, which here is considered an\n"
+"       52     The  server  did not reply anything, which here is considered an\n"
 "              error.\n"
 "\n"
 "       53     SSL crypto engine not found.\n"
@@ -4798,8 +5636,7 @@
 , stdout);
  fputs(
 "       58     Problem with the local certificate.\n"
-"\n"
-"       59     Couldn't use specified SSL cipher.\n"
+"       59     Could not use specified SSL cipher.\n"
 "\n"
 "       60     Peer certificate cannot be authenticated with known CA  certifi-\n"
 "              cates.\n"
@@ -4849,15 +5686,14 @@
 "\n"
 "       80     Failed to shut down the SSL connection.\n"
 "\n"
-"       82     Could not load CRL file,  missing  or  wrong  format  (added  in\n"
-"              7.19.0).\n"
+"       82     Could not load CRL file, missing or wrong format.\n"
 "\n"
-"       83     Issuer check failed (added in 7.19.0).\n"
+"       83     Issuer check failed.\n"
+"\n"
+"       84     The FTP PRET command failed.\n"
 "\n"
 , stdout);
  fputs(
-"       84     The FTP PRET command failed.\n"
-"\n"
 "       85     Mismatch of RTSP CSeq numbers.\n"
 "\n"
 "       86     Mismatch of RTSP Session Identifiers.\n"
@@ -4874,26 +5710,26 @@
 "\n"
 "       92     Stream error in HTTP/2 framing layer.\n"
 "\n"
-, stdout);
- fputs(
 "       93     An API function was called from inside a callback.\n"
 "\n"
-"       94     An authentication function returned an error.\n"
-"\n"
-"       95     A  problem  was  detected  in the HTTP/3 layer. This is somewhat\n"
-"              generic and can be one out of several problems,  see  the  error\n"
-"              message for details.\n"
-"\n"
-"       96     QUIC  connection  error.  This error may be caused by an SSL li-\n"
-"              brary error. QUIC is the protocol used for HTTP/3 transfers.\n"
-"\n"
 , stdout);
  fputs(
+"       94     An authentication function returned an error.\n"
+"\n"
+"       95     A problem was detected in the HTTP/3  layer.  This  is  somewhat\n"
+"              generic  and  can  be one out of several problems, see the error\n"
+"              message for details.\n"
+"\n"
+"       96     QUIC connection error. This error may be caused by  an  SSL  li-\n"
+"              brary error. QUIC is the protocol used for HTTP/3 transfers.\n"
+"\n"
 "       XX     More error codes will appear here in future releases. The exist-\n"
+, stdout);
+ fputs(
 "              ing ones are meant to never change.\n"
 "\n"
 "AUTHORS / CONTRIBUTORS\n"
-"       Daniel  Stenberg is the main author, but the whole list of contributors\n"
+"       Daniel Stenberg is the main author, but the whole list of  contributors\n"
 "       is found in the separate THANKS file.\n"
 "\n"
 "WWW\n"
@@ -4919,4388 +5755,4660 @@
 #include "memdebug.h" /* keep this as LAST include */
 static const unsigned char hugehelpgz[] = {
   /* This mumbo-jumbo is the huge help text compressed with gzip.
-     Thanks to this operation, the size of this data shrank from 188442
-     to 52541 bytes. You can disable the use of compressed help
+     Thanks to this operation, the size of this data shrank from 212255
+     to 55802 bytes. You can disable the use of compressed help
      texts by NOT passing -c to the mkhelp.pl tool. */
   0x1f, 0x8b, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0xed, 0xbd,
-  0x7b, 0x77, 0xdb, 0x46, 0x96, 0x2f, 0xfa, 0x7f, 0x3e, 0x05, 0x86, 0xbd,
-  0xfa, 0x4a, 0x9a, 0x26, 0xa9, 0x97, 0x1f, 0xb1, 0xda, 0xc9, 0x89, 0x23,
-  0x2b, 0x89, 0x27, 0xb2, 0xa5, 0x31, 0xe5, 0x24, 0x7d, 0x92, 0x2c, 0x2f,
-  0x88, 0x84, 0x24, 0xb4, 0x49, 0x80, 0x0d, 0x80, 0x7a, 0x64, 0xce, 0xdc,
-  0xcf, 0x7e, 0xeb, 0xb7, 0x1f, 0x55, 0x05, 0x54, 0x81, 0x92, 0xd3, 0x49,
-  0x66, 0xce, 0xb9, 0x27, 0xbd, 0x5a, 0x96, 0x48, 0xa0, 0x9e, 0xbb, 0x76,
-  0xed, 0xe7, 0x6f, 0x27, 0xc9, 0x7d, 0xff, 0xbd, 0xa7, 0xff, 0xbf, 0x37,
-  0xff, 0x99, 0x7f, 0x3f, 0x49, 0x92, 0xd3, 0xaa, 0xfc, 0x7b, 0x36, 0x6d,
-  0xe2, 0xcf, 0xbe, 0x7f, 0xff, 0xbf, 0x12, 0xfe, 0x9f, 0x79, 0xe7, 0x27,
-  0xf3, 0xef, 0x27, 0x6b, 0xdb, 0xde, 0x4e, 0xdc, 0x0b, 0xff, 0xeb, 0xfd,
-  0x56, 0x72, 0xdf, 0x0b, 0xff, 0x2b, 0xd9, 0xa4, 0x17, 0xde, 0x4b, 0x0f,
-  0xcf, 0xf1, 0xfb, 0xfb, 0xf7, 0xeb, 0x3b, 0xf9, 0x09, 0xa3, 0xc2, 0x8f,
-  0x6d, 0xbc, 0xf7, 0xd3, 0x7b, 0xfc, 0x6a, 0x3e, 0xf9, 0xe4, 0x93, 0x37,
-  0x2f, 0x5e, 0x1f, 0xe9, 0xab, 0xd3, 0x55, 0x35, 0x4f, 0x46, 0x49, 0x53,
-  0xa5, 0x45, 0x7d, 0x91, 0x55, 0x49, 0x9a, 0xbc, 0x7b, 0x7b, 0xfc, 0xc9,
-  0x27, 0x93, 0xbf, 0xbd, 0x39, 0x39, 0x9d, 0xbc, 0x9a, 0xb4, 0x1e, 0xfb,
-  0xb1, 0x5c, 0x36, 0x79, 0x59, 0xd4, 0x66, 0xf8, 0xe6, 0xa1, 0xfa, 0xe7,
-  0x4f, 0x3e, 0x79, 0x79, 0x34, 0x39, 0x7c, 0xfb, 0xea, 0xf4, 0xec, 0xd5,
-  0xc9, 0x9b, 0xd6, 0x93, 0x49, 0x5e, 0x27, 0xa6, 0xa9, 0xa6, 0x2c, 0xe7,
-  0xe6, 0x87, 0x6b, 0x7d, 0x96, 0x36, 0x69, 0x72, 0x51, 0x95, 0x8b, 0xa4,
-  0xac, 0xf0, 0x45, 0x9a, 0xd4, 0x59, 0x75, 0x9d, 0x55, 0xc3, 0x64, 0x55,
-  0xe7, 0xc5, 0x65, 0x52, 0x16, 0x59, 0x52, 0x5e, 0x24, 0xcd, 0x55, 0xa6,
-  0xcd, 0xd5, 0xab, 0xe5, 0xb2, 0xac, 0x9a, 0x6c, 0x96, 0x2c, 0xab, 0xb2,
-  0x29, 0xa7, 0xe5, 0xbc, 0x4e, 0x36, 0x5f, 0xbe, 0x3a, 0x3c, 0x1b, 0x26,
-  0x5f, 0xbd, 0x3a, 0x3e, 0x32, 0x3f, 0xcf, 0x4e, 0xe9, 0xc7, 0x64, 0x98,
-  0x7c, 0x7d, 0x72, 0xfa, 0xcd, 0xd1, 0xdb, 0x61, 0xf2, 0xcd, 0x19, 0x3e,
-  0xc3, 0x4f, 0xf3, 0x61, 0xf2, 0xea, 0xf5, 0x8b, 0xd3, 0xa1, 0x36, 0x87,
-  0x3f, 0xf0, 0xe1, 0xf1, 0x4b, 0xf3, 0x21, 0xff, 0x83, 0x3f, 0x5f, 0xff,
-  0xfb, 0x99, 0x69, 0xf0, 0xf4, 0xe4, 0x74, 0x9f, 0x7f, 0x9a, 0xcf, 0xde,
-  0x9e, 0xbd, 0x3e, 0xe5, 0x9f, 0xf4, 0xc7, 0xc4, 0xfc, 0x31, 0x39, 0xc4,
-  0x0f, 0x74, 0xa8, 0xcd, 0x4d, 0x5e, 0x7f, 0x39, 0xc4, 0x8f, 0x09, 0x7e,
-  0xa2, 0x53, 0xfc, 0x34, 0x7f, 0x9c, 0x1d, 0x1d, 0xbf, 0x39, 0x3a, 0xc3,
-  0x24, 0xcf, 0xcc, 0xe3, 0x5b, 0xe3, 0xe4, 0xec, 0x2a, 0x33, 0x4b, 0x53,
-  0x2e, 0x16, 0x69, 0x31, 0xe3, 0xd5, 0x99, 0x65, 0x75, 0x7e, 0x59, 0x98,
-  0x79, 0x99, 0x75, 0xd0, 0xe6, 0x6e, 0xca, 0xea, 0x43, 0x72, 0x93, 0x37,
-  0x57, 0xe5, 0xaa, 0x31, 0x2b, 0x62, 0x16, 0x2c, 0x2f, 0x9a, 0xac, 0x4a,
-  0xa7, 0x58, 0xf6, 0xf1, 0x27, 0xad, 0x25, 0x2e, 0x2f, 0xcc, 0x82, 0xd6,
-  0x66, 0x05, 0xcf, 0x57, 0xf5, 0xbc, 0x4c, 0x67, 0x58, 0x37, 0xf3, 0xca,
-  0xc5, 0xca, 0xac, 0x78, 0x95, 0x4f, 0x3f, 0xd4, 0xc9, 0x3c, 0xff, 0x90,
-  0x61, 0xd5, 0x6e, 0xef, 0x74, 0x15, 0x87, 0xdc, 0x68, 0xba, 0x32, 0x0b,
-  0x5c, 0x8c, 0xb4, 0xb9, 0x26, 0x9f, 0xa6, 0xe8, 0x80, 0x96, 0x31, 0x59,
-  0x2d, 0xd1, 0x1a, 0x2f, 0x5f, 0xb2, 0x2c, 0x6b, 0xf3, 0xd2, 0x64, 0x72,
-  0x6c, 0xc6, 0x5e, 0x14, 0x19, 0x8d, 0xa3, 0x1e, 0x9a, 0x3f, 0xca, 0x0f,
-  0x79, 0x66, 0x7e, 0xb9, 0xc8, 0xe7, 0x66, 0x5e, 0xb4, 0xbd, 0xb6, 0x39,
-  0xec, 0x73, 0x95, 0xd5, 0xab, 0x45, 0x96, 0x60, 0xb2, 0x8b, 0xb2, 0xca,
-  0xc6, 0xc9, 0x8b, 0x3a, 0xb9, 0x2b, 0x57, 0x66, 0x6e, 0xf3, 0xb9, 0xd9,
-  0xf2, 0x2c, 0x39, 0xcf, 0xe6, 0xe5, 0xcd, 0x10, 0x1b, 0x9d, 0x14, 0xab,
-  0xc5, 0xb9, 0x79, 0xc5, 0x0c, 0xff, 0x22, 0x4b, 0x9b, 0x95, 0x79, 0x95,
-  0x1e, 0xd3, 0xe6, 0x16, 0xa9, 0x99, 0x85, 0x79, 0xb7, 0x4a, 0xae, 0x32,
-  0x33, 0xcb, 0x7a, 0x99, 0x17, 0xff, 0xd2, 0x5e, 0x09, 0xb3, 0x9a, 0xcb,
-  0xf2, 0x26, 0xab, 0xcc, 0x5a, 0x9e, 0xdf, 0x25, 0x66, 0xda, 0xe7, 0x4c,
-  0x83, 0x17, 0x66, 0xf9, 0x93, 0xd4, 0x74, 0x68, 0xe9, 0x6f, 0x54, 0x65,
-  0xf3, 0x14, 0xb4, 0x64, 0xbb, 0x1a, 0x9b, 0x3d, 0xcc, 0x2c, 0xb1, 0xc9,
-  0xab, 0x9b, 0xfb, 0x5b, 0xf4, 0xf2, 0x2c, 0x6b, 0xd2, 0x7c, 0x5e, 0x9b,
-  0x85, 0xc7, 0x99, 0x90, 0x67, 0x68, 0x27, 0xcd, 0xdf, 0x86, 0x34, 0xef,
-  0x8a, 0x26, 0xbd, 0xa5, 0xee, 0x85, 0x34, 0x47, 0xb3, 0x6c, 0x99, 0x15,
-  0xb3, 0xac, 0x68, 0xc6, 0xc9, 0xdf, 0xca, 0xd5, 0x86, 0xe9, 0xfb, 0x22,
-  0x37, 0x6b, 0x90, 0x4a, 0x53, 0xa6, 0x67, 0xb3, 0xed, 0xd3, 0x2a, 0x5f,
-  0x7a, 0x8b, 0x5f, 0x16, 0x66, 0x97, 0x93, 0xb7, 0x5f, 0x1d, 0x26, 0xfb,
-  0xcf, 0x3e, 0x7d, 0xe2, 0x76, 0xd9, 0x34, 0x90, 0x4c, 0xd3, 0xc2, 0xcc,
-  0x38, 0x9b, 0xe6, 0x17, 0x77, 0xc9, 0x62, 0x35, 0x6f, 0xf2, 0xa5, 0x59,
-  0x6f, 0x9c, 0x3d, 0x90, 0xd6, 0x32, 0xad, 0x9a, 0x1a, 0xeb, 0x46, 0x1f,
-  0xd0, 0xdc, 0x6f, 0xaa, 0xbc, 0xc1, 0x39, 0xa2, 0xef, 0xcc, 0x08, 0xb3,
-  0xa6, 0xb6, 0xb4, 0x65, 0xc8, 0xca, 0xf4, 0x73, 0x6e, 0xa8, 0xc9, 0xac,
-  0x30, 0x76, 0xe6, 0x1f, 0xab, 0x92, 0x1e, 0xc6, 0x26, 0x60, 0x42, 0x69,
-  0x6d, 0x06, 0x72, 0xf0, 0x89, 0x63, 0x2a, 0x83, 0xab, 0xa6, 0x59, 0x1e,
-  0x6c, 0x6f, 0xd7, 0x79, 0x93, 0x8d, 0xff, 0xc3, 0x9c, 0xcd, 0x61, 0x73,
-  0x53, 0x0e, 0x9b, 0xab, 0x2a, 0xcb, 0xfe, 0x73, 0x6c, 0x88, 0x79, 0x60,
-  0x9f, 0x35, 0xa3, 0xb9, 0x93, 0xe1, 0x5e, 0x66, 0x8d, 0xe9, 0xf7, 0x1f,
-  0xab, 0xac, 0x40, 0x3f, 0x66, 0x74, 0xe9, 0x7c, 0x79, 0x95, 0x9a, 0x4d,
-  0xce, 0x0c, 0x55, 0xe2, 0xb8, 0x1b, 0xc2, 0xc1, 0x58, 0xf9, 0xc0, 0xff,
-  0xf8, 0x73, 0xa4, 0xdb, 0x0b, 0xea, 0xd5, 0xfc, 0x1c, 0x67, 0xb7, 0xe9,
-  0xc2, 0x4c, 0x19, 0x9d, 0x6d, 0x83, 0xd6, 0x7e, 0xdc, 0x1d, 0xed, 0xee,
-  0xec, 0xfc, 0x3c, 0x6e, 0x6e, 0x9b, 0xc1, 0x03, 0xdf, 0xd8, 0xd9, 0xf1,
-  0xde, 0xc1, 0xc3, 0x9b, 0x58, 0x89, 0x64, 0x6e, 0x88, 0x09, 0x03, 0xf8,
-  0x25, 0xab, 0xca, 0x7a, 0xeb, 0x81, 0x6d, 0xa5, 0xa3, 0x5f, 0x3a, 0x7d,
-  0xbf, 0xc9, 0x6a, 0xa2, 0x27, 0x37, 0xe3, 0x24, 0xad, 0x0c, 0x4d, 0x97,
-  0x8d, 0xe3, 0x5c, 0x43, 0x73, 0x44, 0x1b, 0xbb, 0x3e, 0xe6, 0x04, 0x9a,
-  0xa7, 0x0d, 0xcf, 0x4b, 0xe7, 0x60, 0x77, 0x75, 0x52, 0x64, 0xb7, 0x8d,
-  0xa5, 0x86, 0x32, 0xc9, 0xd2, 0xe9, 0x55, 0x52, 0x9a, 0x3d, 0xa9, 0x62,
-  0x5b, 0xe1, 0x0f, 0x29, 0xad, 0xa6, 0x57, 0xf9, 0xb5, 0x59, 0x93, 0x67,
-  0xcf, 0x9e, 0x8c, 0xcc, 0x8f, 0x67, 0x3f, 0x6f, 0x5f, 0x97, 0x73, 0xb3,
-  0x44, 0x8f, 0x7e, 0xde, 0xc6, 0xfe, 0xff, 0x47, 0x3a, 0x3c, 0x1f, 0x4e,
-  0xff, 0x73, 0x7c, 0xd5, 0x2c, 0xe6, 0x83, 0x5e, 0xb2, 0x4a, 0x0b, 0xf3,
-  0xff, 0x45, 0xb9, 0x2a, 0x1a, 0x4b, 0x4a, 0x86, 0x22, 0x41, 0x13, 0xca,
-  0xae, 0xe6, 0x79, 0x61, 0x4e, 0x30, 0x08, 0x1f, 0x14, 0x86, 0x13, 0x6c,
-  0x8e, 0xaf, 0x3b, 0xed, 0xcd, 0xf4, 0x0a, 0x2b, 0x60, 0x68, 0x2b, 0x95,
-  0x65, 0x68, 0x72, 0x33, 0x37, 0xf3, 0x6a, 0x41, 0x0c, 0x8c, 0xda, 0xe2,
-  0xde, 0x72, 0xf3, 0x60, 0x59, 0xcd, 0xb2, 0x6a, 0xdc, 0x1d, 0x86, 0x3d,
-  0xd0, 0x5e, 0x9f, 0x89, 0x5e, 0x37, 0xf8, 0x80, 0x06, 0xb6, 0xc8, 0x6f,
-  0x4d, 0x0b, 0xf8, 0x13, 0xbd, 0x99, 0x81, 0x73, 0x6b, 0x09, 0x46, 0x4c,
-  0xdd, 0xe8, 0xfb, 0xee, 0x40, 0x9b, 0xa1, 0xb7, 0xa6, 0x4e, 0x9d, 0xba,
-  0xc9, 0x27, 0x66, 0xfb, 0x96, 0xe6, 0xad, 0x15, 0xf8, 0x2c, 0x1d, 0x7a,
-  0x34, 0x63, 0xd8, 0xc5, 0xa5, 0xd9, 0x19, 0xb3, 0x1b, 0xa0, 0x66, 0x6c,
-  0xd6, 0x5d, 0xf2, 0xc6, 0x10, 0x0d, 0xb3, 0x2a, 0x8f, 0xe8, 0xe7, 0x59,
-  0xd3, 0xdc, 0xbf, 0x51, 0x8e, 0x72, 0x0f, 0x76, 0x23, 0xc4, 0xdb, 0xf7,
-  0x86, 0xa1, 0xb6, 0x83, 0xbd, 0xce, 0xe3, 0xdf, 0x1b, 0xc6, 0xed, 0x8e,
-  0x8e, 0x19, 0xc1, 0x7f, 0xfc, 0xa7, 0x47, 0x7b, 0x37, 0xf8, 0x36, 0x2f,
-  0xae, 0xcb, 0x0f, 0x66, 0x99, 0xe8, 0x9a, 0x4d, 0xdb, 0x2b, 0x0a, 0x4e,
-  0xb5, 0x58, 0x36, 0xf6, 0xfe, 0x02, 0x51, 0x9a, 0x8f, 0xce, 0xd3, 0xf3,
-  0xf9, 0x5d, 0x72, 0x95, 0x5e, 0x67, 0x98, 0xf3, 0xd2, 0x50, 0x2b, 0x56,
-  0xc1, 0x5c, 0x25, 0x73, 0x62, 0x0c, 0xc2, 0x3a, 0x66, 0xe5, 0xea, 0xdc,
-  0xb0, 0x1f, 0xb0, 0x0d, 0x5e, 0x9c, 0xf4, 0xba, 0xcc, 0x67, 0xad, 0xcb,
-  0xfa, 0x2a, 0x03, 0xcb, 0x43, 0xc7, 0x74, 0x71, 0x19, 0x96, 0x8b, 0x91,
-  0xd2, 0x81, 0xcb, 0x1b, 0xdc, 0x82, 0x86, 0x59, 0xa6, 0xf3, 0xba, 0x4c,
-  0x92, 0xcb, 0x12, 0x67, 0x85, 0x58, 0x34, 0x11, 0xbb, 0xd9, 0x98, 0xab,
-  0x14, 0x37, 0x9d, 0xb9, 0xd4, 0xec, 0x69, 0xa8, 0x32, 0xe2, 0xd6, 0xb4,
-  0x5b, 0xe9, 0x7c, 0xc8, 0x37, 0x1a, 0xde, 0x91, 0xb5, 0x4a, 0x36, 0xfe,
-  0x9f, 0x8d, 0x61, 0xb2, 0xf1, 0x3f, 0x36, 0x88, 0x26, 0x36, 0xfe, 0x75,
-  0xc3, 0xed, 0xb5, 0x91, 0xd6, 0xae, 0xf3, 0x59, 0xc6, 0x64, 0xf1, 0xea,
-  0xf4, 0xfa, 0x49, 0xf2, 0x0b, 0x84, 0x0b, 0xc3, 0x8d, 0xb3, 0x5b, 0x25,
-  0x4a, 0x9d, 0x9b, 0x79, 0x3b, 0x31, 0x6c, 0x39, 0x5d, 0x42, 0xca, 0xc8,
-  0xaa, 0xa9, 0xa1, 0xe0, 0xf4, 0xd2, 0xd0, 0xac, 0xb9, 0x9f, 0xb5, 0x39,
-  0xb4, 0x8f, 0x57, 0x78, 0x5a, 0x86, 0x85, 0x26, 0x45, 0xba, 0x30, 0xa7,
-  0xe2, 0x18, 0x23, 0xca, 0x8b, 0xc8, 0x76, 0xfe, 0x78, 0x91, 0x7d, 0xba,
-  0x73, 0x70, 0xb0, 0xff, 0xe7, 0xbd, 0xc7, 0x59, 0x73, 0xb5, 0xf3, 0xf3,
-  0xb6, 0xdb, 0xc4, 0x57, 0x17, 0xb4, 0xf0, 0x4a, 0x84, 0x3a, 0x0c, 0x5c,
-  0xfa, 0x7a, 0x93, 0x98, 0x06, 0xcc, 0xef, 0xd9, 0x45, 0x7e, 0x3b, 0x54,
-  0x91, 0x8a, 0x4f, 0x5e, 0x6a, 0x08, 0xce, 0xec, 0xa0, 0x2f, 0x35, 0x5c,
-  0xae, 0xb2, 0xda, 0xac, 0xe5, 0xcd, 0x55, 0xda, 0x24, 0xb6, 0x01, 0xde,
-  0xdb, 0x45, 0x7e, 0x79, 0xd5, 0x24, 0x37, 0x29, 0x2e, 0xa4, 0x57, 0x0d,
-  0x37, 0x81, 0xbb, 0xdf, 0x5c, 0x43, 0x17, 0xa9, 0xb9, 0x4f, 0xb0, 0x8b,
-  0x74, 0xd1, 0x1b, 0x0e, 0xe5, 0x56, 0xfd, 0x4e, 0xb6, 0xc4, 0x49, 0x5c,
-  0xe7, 0x69, 0x8d, 0xa3, 0x5b, 0x18, 0x16, 0xd1, 0x18, 0xc9, 0x61, 0x85,
-  0xbf, 0xae, 0x8c, 0x6c, 0x40, 0xab, 0x20, 0x03, 0xa5, 0xcb, 0xf4, 0x2b,
-  0x6c, 0x28, 0x76, 0xc7, 0x5e, 0x70, 0x66, 0x9b, 0x86, 0xb2, 0xd1, 0xf6,
-  0x8d, 0xda, 0x1c, 0x3b, 0xc3, 0xa0, 0x2c, 0x6d, 0x80, 0xe7, 0x8e, 0x07,
-  0x3c, 0x4f, 0x1a, 0x63, 0x5a, 0x93, 0xfc, 0x40, 0x22, 0x83, 0x19, 0xbc,
-  0x37, 0x59, 0xb3, 0x68, 0xe9, 0x07, 0x08, 0x2a, 0x1d, 0x71, 0x88, 0x5e,
-  0x9b, 0x95, 0x86, 0xcc, 0xcc, 0x68, 0x0d, 0x53, 0xc6, 0xcc, 0xc0, 0x6a,
-  0x69, 0x55, 0x88, 0xcc, 0x4d, 0x9b, 0xf8, 0x30, 0x6f, 0x70, 0xe3, 0x90,
-  0x98, 0x6b, 0xc6, 0x6b, 0x16, 0x85, 0xa4, 0x31, 0xc3, 0xb0, 0xbd, 0xf9,
-  0xd3, 0x15, 0x6a, 0x9e, 0x4d, 0xae, 0xd3, 0x79, 0x6e, 0x64, 0xd6, 0xcc,
-  0xbe, 0x45, 0x77, 0xfe, 0x14, 0x12, 0xd3, 0xdc, 0x9c, 0x98, 0x69, 0x59,
-  0x55, 0x50, 0x09, 0xb0, 0x83, 0xe7, 0xcc, 0x4a, 0x17, 0x99, 0x11, 0x35,
-  0xfc, 0xe5, 0xcc, 0x71, 0xbd, 0x19, 0x2e, 0x63, 0x64, 0x17, 0xe2, 0x23,
-  0x46, 0xc6, 0x20, 0xde, 0x4f, 0x13, 0xa7, 0xd1, 0xa1, 0xed, 0xe9, 0x34,
-  0x5b, 0x36, 0x75, 0x6c, 0x4e, 0xba, 0xe1, 0x66, 0x38, 0x55, 0x86, 0x95,
-  0xf7, 0x45, 0x31, 0x5a, 0x57, 0x2b, 0x18, 0x90, 0x34, 0xa6, 0xb2, 0x8e,
-  0x91, 0xce, 0x6a, 0xbb, 0x6a, 0x0d, 0xd1, 0x86, 0x61, 0x66, 0xb4, 0xe6,
-  0x0b, 0x0c, 0x14, 0x0f, 0xd7, 0x7c, 0x56, 0x89, 0x41, 0x63, 0x23, 0x59,
-  0x18, 0xe7, 0x7e, 0x71, 0x85, 0x99, 0xf5, 0xb4, 0x8d, 0x9b, 0x5e, 0xed,
-  0x9e, 0xa2, 0x7b, 0x68, 0x01, 0xe6, 0x5e, 0x9f, 0xd5, 0x57, 0x46, 0x40,
-  0xab, 0xe5, 0x6c, 0xe7, 0x0b, 0x43, 0x33, 0xd7, 0xd8, 0xdf, 0x65, 0x96,
-  0xcd, 0xc6, 0xc9, 0xc9, 0x05, 0x78, 0x6b, 0x65, 0x06, 0xdd, 0xd0, 0xd7,
-  0xb8, 0x5b, 0xcc, 0xba, 0xcd, 0x48, 0xce, 0xb7, 0x87, 0x8b, 0x87, 0xe2,
-  0xdd, 0x11, 0xc4, 0xcf, 0x53, 0xf3, 0x89, 0x19, 0xed, 0xbc, 0x7d, 0x11,
-  0xd1, 0x49, 0x34, 0x3c, 0x1c, 0xc3, 0x3b, 0xcf, 0x12, 0xa2, 0xc4, 0xf3,
-  0xac, 0xb9, 0xc9, 0x32, 0xdb, 0x5c, 0x9d, 0x99, 0xdb, 0x0f, 0x9b, 0xc6,
-  0xd2, 0xa1, 0x61, 0x87, 0x2c, 0xdf, 0x62, 0x79, 0x4f, 0xde, 0x9d, 0x9d,
-  0xbe, 0x3b, 0xf3, 0x0e, 0x22, 0xda, 0x69, 0xca, 0xf9, 0x8c, 0x49, 0xfe,
-  0x26, 0xaf, 0x0d, 0xb5, 0xf2, 0xe2, 0x1b, 0x51, 0x0a, 0x6c, 0x0e, 0xd7,
-  0x41, 0x36, 0xcd, 0xcc, 0x45, 0x3b, 0x63, 0xf5, 0xc5, 0x6c, 0x44, 0xdd,
-  0x18, 0x5e, 0xc8, 0x47, 0x0a, 0x63, 0xd1, 0xe6, 0xcc, 0x78, 0x68, 0xaf,
-  0xab, 0xd5, 0xb4, 0x61, 0xc1, 0x3e, 0xb1, 0x7b, 0x5f, 0x13, 0x73, 0xc5,
-  0x36, 0x50, 0x23, 0x86, 0x8f, 0x40, 0xfb, 0x99, 0x9b, 0xa1, 0xcd, 0x69,
-  0xfe, 0xaa, 0x01, 0x79, 0xdc, 0x74, 0x54, 0x0e, 0x93, 0xd1, 0xc8, 0x74,
-  0x04, 0x86, 0x6c, 0xf6, 0x79, 0x74, 0x82, 0xbf, 0xab, 0x6c, 0x61, 0xf8,
-  0xef, 0x88, 0x0e, 0x9e, 0x5c, 0x90, 0x63, 0x4c, 0xc4, 0xe9, 0x5d, 0x97,
-  0x66, 0xac, 0x66, 0xfd, 0x74, 0xe7, 0xb4, 0x39, 0x96, 0x12, 0x31, 0x26,
-  0xab, 0x8e, 0x45, 0x2e, 0xfa, 0x21, 0xc8, 0xb1, 0xce, 0x17, 0xf9, 0x3c,
-  0xad, 0xcc, 0x4e, 0x15, 0x66, 0x1b, 0x6b, 0x47, 0x04, 0x65, 0x5b, 0x70,
-  0x65, 0xfa, 0x33, 0xb7, 0x4e, 0x45, 0x17, 0x87, 0xcc, 0x31, 0x5b, 0x74,
-  0xe8, 0x78, 0x06, 0x5e, 0x8f, 0x85, 0x36, 0xfb, 0x62, 0x48, 0xc1, 0xbc,
-  0x62, 0x17, 0x3b, 0x19, 0xac, 0x0c, 0x47, 0xae, 0x0c, 0x3b, 0x28, 0x66,
-  0x03, 0x19, 0x8c, 0x61, 0xb1, 0x05, 0x8e, 0x25, 0x53, 0x6c, 0x8d, 0x8b,
-  0xd6, 0x0a, 0xb1, 0xbc, 0x29, 0x38, 0x8b, 0x09, 0x2f, 0x0c, 0x9f, 0x61,
-  0xe9, 0x21, 0x31, 0xd7, 0x60, 0x49, 0x62, 0x1d, 0x49, 0xef, 0xfc, 0xbb,
-  0x59, 0xd9, 0x62, 0x0e, 0x0e, 0x99, 0xdd, 0x2e, 0xe7, 0xf9, 0x34, 0x6f,
-  0xe6, 0x56, 0xda, 0x48, 0x6b, 0x5c, 0x94, 0x66, 0xe4, 0x74, 0x18, 0x67,
-  0xd9, 0x0c, 0x9a, 0x90, 0xf9, 0x24, 0x26, 0x85, 0x98, 0x39, 0x9d, 0xbe,
-  0x3d, 0x39, 0x3b, 0x39, 0x3c, 0x39, 0x6e, 0x6b, 0xc5, 0x22, 0xe7, 0xd5,
-  0x09, 0xc9, 0xb8, 0xe5, 0xca, 0xa9, 0x03, 0xe6, 0x08, 0x42, 0x4c, 0x37,
-  0xbb, 0x67, 0x2e, 0x1c, 0x52, 0x19, 0xcc, 0xe5, 0xb1, 0xa8, 0x0f, 0x0c,
-  0x89, 0x1a, 0x99, 0x69, 0x41, 0x0c, 0xd3, 0xc8, 0x24, 0x76, 0x76, 0x10,
-  0xda, 0xf2, 0xe9, 0xca, 0xac, 0xbc, 0x61, 0x20, 0xb9, 0xa1, 0xc9, 0x45,
-  0x7a, 0xe7, 0x8b, 0x92, 0xb4, 0xb6, 0xd0, 0x68, 0xdc, 0xfa, 0x42, 0x13,
-  0x36, 0xff, 0x1c, 0x63, 0x9d, 0xc0, 0xe5, 0xe6, 0x46, 0x33, 0x5b, 0x2d,
-  0xa1, 0x48, 0x9a, 0x6d, 0x53, 0x9d, 0x9a, 0xa6, 0x61, 0xe6, 0x86, 0x79,
-  0xa4, 0x90, 0xbf, 0xdd, 0xfb, 0xd0, 0xa1, 0xcd, 0x3f, 0x6f, 0x41, 0xa2,
-  0x18, 0x2c, 0xaf, 0x70, 0x22, 0x84, 0xc9, 0x27, 0x73, 0xac, 0x37, 0x90,
-  0xdd, 0x47, 0x1d, 0x0f, 0xd8, 0x56, 0x8d, 0x4e, 0x3a, 0x86, 0x08, 0xbc,
-  0x86, 0x1b, 0x0c, 0x73, 0x66, 0x7a, 0x9d, 0xdf, 0xb1, 0x14, 0x4c, 0x12,
-  0x4a, 0xb5, 0x2a, 0x0a, 0x1e, 0x59, 0xf2, 0x3a, 0x9f, 0x1a, 0xf9, 0xdb,
-  0xdc, 0x2a, 0xc9, 0xf7, 0xe6, 0x6a, 0x2e, 0x6f, 0xcc, 0xbe, 0xae, 0x9c,
-  0x2a, 0xa9, 0x2c, 0x54, 0x94, 0x94, 0xc2, 0x1c, 0x63, 0x43, 0x61, 0xef,
-  0xde, 0x1c, 0x26, 0xe9, 0xd2, 0x2c, 0x32, 0x24, 0x65, 0xe2, 0x55, 0xd0,
-  0x9b, 0xbd, 0x39, 0x9d, 0x9d, 0x6e, 0x4e, 0xb6, 0x64, 0xcc, 0x76, 0x77,
-  0x58, 0x3e, 0xfc, 0x0a, 0x2c, 0xf2, 0x4c, 0xe9, 0xff, 0x54, 0x2f, 0x4b,
-  0x96, 0x02, 0xcc, 0xac, 0x49, 0x08, 0x36, 0xdc, 0x24, 0xfd, 0x50, 0x77,
-  0x06, 0x41, 0xf4, 0x00, 0x51, 0xd0, 0xac, 0xc7, 0xf7, 0x78, 0x1c, 0x94,
-  0x6f, 0x55, 0x75, 0x0c, 0xf1, 0xec, 0x78, 0xe2, 0x06, 0xc1, 0xb6, 0x08,
-  0xb3, 0xb0, 0x46, 0x19, 0x37, 0x6f, 0xc9, 0x4a, 0xda, 0xaf, 0x71, 0xe9,
-  0x9a, 0x41, 0x76, 0xfa, 0x68, 0xd3, 0x13, 0x5d, 0xcc, 0x34, 0x32, 0x4b,
-  0x59, 0xbe, 0x44, 0x7c, 0x6d, 0xb6, 0x32, 0xd5, 0xf3, 0xdf, 0x66, 0x44,
-  0xad, 0xbb, 0x92, 0x9a, 0xc1, 0xb8, 0xa1, 0x69, 0xee, 0x8c, 0x9f, 0x0d,
-  0x93, 0xdd, 0xf1, 0x0e, 0x7e, 0xec, 0x0e, 0x93, 0x3d, 0x6a, 0x69, 0x3f,
-  0x61, 0xbd, 0x55, 0xf6, 0x84, 0x69, 0xcf, 0x3b, 0xea, 0xad, 0x13, 0xaf,
-  0x92, 0x90, 0xde, 0x7d, 0x3d, 0x67, 0xc5, 0xb3, 0xb7, 0x84, 0xf3, 0x7c,
-  0xa7, 0xac, 0xce, 0x50, 0x78, 0x3e, 0x37, 0x24, 0xc2, 0xba, 0x98, 0x9e,
-  0x1b, 0xe1, 0xc0, 0x90, 0xd4, 0x07, 0x86, 0x26, 0x0a, 0x18, 0x24, 0x06,
-  0x49, 0x86, 0x67, 0x59, 0x66, 0xec, 0x34, 0x67, 0x08, 0xff, 0x41, 0x7b,
-  0x02, 0x6b, 0x4f, 0xcf, 0xa2, 0xa3, 0x2f, 0x73, 0xdb, 0xcd, 0x72, 0xcc,
-  0xa9, 0xc4, 0x35, 0x4d, 0x07, 0x89, 0x19, 0x9c, 0x69, 0x7f, 0xc8, 0x1b,
-  0xe1, 0xb5, 0xdf, 0x6a, 0x19, 0xf6, 0xa3, 0x60, 0xff, 0xe8, 0x43, 0x5d,
-  0xf8, 0xfd, 0x71, 0xf2, 0x52, 0xa6, 0x42, 0xcb, 0x8c, 0x7b, 0x96, 0x1e,
-  0x30, 0xc2, 0xbb, 0x91, 0x88, 0x93, 0x41, 0xbd, 0x3a, 0xef, 0x2e, 0x38,
-  0x2c, 0x05, 0xe7, 0xd9, 0x80, 0x0d, 0x65, 0x4d, 0xb9, 0x34, 0xfa, 0xf3,
-  0xcd, 0x15, 0x08, 0x98, 0x6d, 0x34, 0xa6, 0x9d, 0x6d, 0x18, 0x68, 0xd0,
-  0x9e, 0xb6, 0xb2, 0x34, 0x22, 0x7a, 0x5e, 0x5f, 0x0d, 0xb0, 0x8f, 0x69,
-  0x77, 0xff, 0xd0, 0xc2, 0x58, 0x07, 0xab, 0x67, 0x18, 0x57, 0x86, 0xe1,
-  0x8c, 0x46, 0x52, 0x5f, 0x40, 0xee, 0x9d, 0xd3, 0x06, 0x9b, 0xc9, 0x89,
-  0xcc, 0x47, 0x0f, 0xe7, 0xb5, 0x2f, 0x20, 0x05, 0x96, 0xb9, 0xcd, 0xbb,
-  0xac, 0xd9, 0xf2, 0x44, 0xef, 0x93, 0xd3, 0xfd, 0x70, 0x99, 0xfd, 0xd9,
-  0x8b, 0x6a, 0xb2, 0x2c, 0x97, 0xfb, 0x2a, 0x73, 0xb0, 0xdc, 0xa4, 0x12,
-  0x0a, 0x2e, 0x7f, 0x6c, 0xb7, 0x19, 0x2d, 0xed, 0x6b, 0x12, 0xec, 0xf9,
-  0x9a, 0x6d, 0x86, 0xcd, 0x2e, 0xec, 0x9f, 0xec, 0x36, 0x86, 0xcf, 0x99,
-  0x9b, 0xcc, 0xdc, 0x9c, 0xc9, 0x6b, 0xc3, 0xb8, 0xd2, 0x4b, 0xea, 0xcb,
-  0x72, 0x01, 0xba, 0x3d, 0x97, 0x66, 0x21, 0xcc, 0xc9, 0x9a, 0xdf, 0xb1,
-  0x6c, 0x81, 0x6b, 0x8d, 0x46, 0xd8, 0x9d, 0x3d, 0x94, 0x93, 0x05, 0x49,
-  0x53, 0xe6, 0xda, 0x48, 0x59, 0x2c, 0x71, 0x94, 0xc4, 0x73, 0x85, 0xd2,
-  0xe3, 0x0d, 0x6b, 0x72, 0x1a, 0xd0, 0x08, 0x7d, 0x68, 0xce, 0xa3, 0x7d,
-  0xc5, 0x3b, 0x3b, 0x93, 0xc3, 0xd3, 0x90, 0x29, 0x4c, 0x26, 0xdf, 0x58,
-  0x9a, 0xda, 0x33, 0x14, 0xb2, 0x74, 0x02, 0x9f, 0xf7, 0x26, 0x0c, 0x79,
-  0xc1, 0x9b, 0xf8, 0x70, 0x73, 0x56, 0xa5, 0x86, 0xd9, 0x3e, 0xde, 0x12,
-  0x19, 0x0c, 0x4b, 0xdf, 0x6a, 0xd2, 0x6b, 0xe4, 0xf5, 0x97, 0x96, 0x8d,
-  0xba, 0x46, 0x5e, 0x7f, 0x69, 0x9f, 0xdd, 0xa5, 0xc3, 0xc1, 0xb4, 0x48,
-  0xf3, 0xd7, 0x39, 0xf8, 0x6d, 0xc4, 0xd8, 0xdc, 0x3b, 0x25, 0x5f, 0xbd,
-  0xec, 0x59, 0x9b, 0x2c, 0xe8, 0x71, 0x25, 0x08, 0xa1, 0x08, 0xf3, 0x27,
-  0x33, 0x26, 0x7c, 0xcf, 0x3c, 0x60, 0xdc, 0x69, 0xee, 0xfb, 0x75, 0x27,
-  0x53, 0x2c, 0xb1, 0x67, 0x46, 0x31, 0xa5, 0x0e, 0x31, 0x1b, 0xd3, 0x19,
-  0x99, 0x2d, 0x70, 0xaa, 0xb2, 0x79, 0x91, 0xb1, 0x00, 0x4f, 0x2a, 0x09,
-  0xf8, 0x9b, 0x33, 0xba, 0x5e, 0x43, 0x24, 0xae, 0x31, 0xd9, 0x2e, 0xf5,
-  0x91, 0xc8, 0x03, 0x49, 0xc9, 0x8c, 0xae, 0xb6, 0x62, 0x3c, 0x18, 0x59,
-  0xcd, 0xd2, 0xab, 0x11, 0x11, 0xf3, 0x82, 0x6f, 0x0d, 0x91, 0x54, 0xac,
-  0x8a, 0xe6, 0x89, 0x78, 0x56, 0x62, 0xa5, 0x29, 0x73, 0x63, 0x3e, 0xcd,
-  0x9c, 0x79, 0x1b, 0x29, 0x2c, 0x8a, 0x3e, 0xb2, 0xd4, 0x42, 0x1d, 0xf0,
-  0x16, 0x88, 0x84, 0xf2, 0xf5, 0xdb, 0xa3, 0xc9, 0x24, 0x79, 0x7d, 0x74,
-  0x76, 0xf4, 0xb6, 0x6d, 0x92, 0x2f, 0xca, 0x6a, 0x41, 0x5a, 0x8b, 0xe1,
-  0x72, 0xf5, 0x72, 0x9e, 0xde, 0x41, 0x9f, 0x31, 0x2c, 0xf7, 0xb2, 0x82,
-  0x70, 0xb4, 0xc8, 0x60, 0x00, 0x99, 0xad, 0x48, 0x61, 0x2f, 0x0d, 0x3b,
-  0x48, 0xc5, 0xd6, 0x6b, 0xae, 0x65, 0xb2, 0x0f, 0xbb, 0x4b, 0x1e, 0x7c,
-  0xdb, 0x59, 0x8c, 0x94, 0xfc, 0x2a, 0x91, 0x8f, 0x87, 0x9e, 0x7c, 0xc9,
-  0x6a, 0x40, 0x2d, 0xcb, 0x60, 0xb4, 0x32, 0x73, 0xb4, 0x58, 0x32, 0x36,
-  0x67, 0xd0, 0xda, 0x68, 0xb2, 0x8b, 0xc6, 0xbc, 0x64, 0x36, 0x84, 0x8d,
-  0x4c, 0xc1, 0x98, 0x74, 0xb4, 0xce, 0x50, 0x7c, 0x7e, 0xd7, 0x64, 0xee,
-  0x26, 0xe2, 0x4e, 0xac, 0x4c, 0x87, 0x8d, 0x29, 0xe4, 0x91, 0x25, 0xad,
-  0xaa, 0xa1, 0xb2, 0x19, 0x9b, 0xe0, 0xeb, 0xd5, 0x05, 0x69, 0xaa, 0xc9,
-  0xe6, 0x87, 0x61, 0xf2, 0x7a, 0x98, 0x7c, 0x3d, 0x4c, 0x60, 0xf7, 0xdf,
-  0xa2, 0xb7, 0x92, 0xdd, 0x9d, 0xbd, 0x47, 0x09, 0xf3, 0x3d, 0x4b, 0x63,
-  0x5f, 0x79, 0xd6, 0x86, 0xdd, 0x0f, 0xe0, 0x10, 0xf4, 0x14, 0x35, 0x3f,
-  0x4e, 0x76, 0x5f, 0xf3, 0x27, 0x8f, 0x3e, 0x7d, 0xfc, 0xf4, 0x89, 0x7c,
-  0xd8, 0x96, 0x7d, 0xdd, 0xf0, 0x59, 0x05, 0xb2, 0x3a, 0x04, 0x46, 0x0e,
-  0x71, 0x30, 0x2f, 0x0c, 0xcf, 0x35, 0xca, 0xa3, 0x68, 0xe4, 0xd0, 0xda,
-  0x92, 0x9c, 0x0d, 0x04, 0x6c, 0xc9, 0x69, 0x35, 0x67, 0x5e, 0x9c, 0xd1,
-  0x51, 0xb1, 0x5b, 0xc4, 0xe6, 0xb0, 0x06, 0xe3, 0x48, 0xcf, 0x41, 0xfe,
-  0x10, 0x67, 0x49, 0x88, 0xf3, 0x7b, 0xb2, 0x5d, 0x59, 0xd3, 0x8f, 0x79,
-  0xc5, 0x0c, 0x2d, 0x3d, 0x9f, 0x8b, 0x92, 0xd3, 0x59, 0x75, 0x23, 0x61,
-  0x3b, 0x21, 0xdd, 0x3c, 0x7b, 0x53, 0xae, 0x20, 0x90, 0xe2, 0x01, 0x23,
-  0x5f, 0xe2, 0x05, 0xa6, 0x6a, 0x6b, 0xa6, 0xcf, 0x6f, 0xe5, 0x0a, 0x6f,
-  0xb5, 0x62, 0xc6, 0x66, 0xfe, 0x5c, 0x1a, 0x4a, 0xe2, 0xf1, 0x8c, 0xbb,
-  0x46, 0x10, 0x52, 0xef, 0x03, 0x3a, 0x04, 0x63, 0x21, 0xb9, 0xe5, 0xf4,
-  0x64, 0x42, 0x6e, 0x14, 0xa3, 0xb4, 0x99, 0x86, 0xfe, 0xb1, 0x32, 0x34,
-  0x64, 0x68, 0x12, 0x2f, 0x42, 0x33, 0xf1, 0xec, 0x02, 0x86, 0xfc, 0xe8,
-  0xee, 0x16, 0x39, 0xcf, 0x76, 0x2a, 0xea, 0x13, 0x5d, 0xa1, 0xbe, 0x9e,
-  0xc5, 0xa6, 0x2a, 0xfb, 0xd6, 0xe6, 0xe7, 0x5b, 0x43, 0x28, 0x5c, 0x56,
-  0xf7, 0xf2, 0xf4, 0x2e, 0xd1, 0x86, 0xbc, 0x53, 0x89, 0x8d, 0xb4, 0xc2,
-  0xb0, 0x11, 0x45, 0xcd, 0xa1, 0x32, 0x1d, 0x38, 0xef, 0x09, 0x56, 0x8f,
-  0x74, 0x3d, 0xb7, 0x4b, 0xf6, 0x71, 0x78, 0x30, 0x1a, 0xe2, 0x09, 0xce,
-  0xb6, 0x74, 0xd7, 0x5e, 0xa4, 0x2e, 0x79, 0xb4, 0x16, 0x8d, 0x26, 0x4f,
-  0x26, 0x17, 0x1c, 0xb0, 0x34, 0x71, 0x4b, 0x97, 0x0c, 0xce, 0xd3, 0x6a,
-  0xe0, 0x54, 0x4e, 0xf1, 0xa4, 0x99, 0xb6, 0x2f, 0x49, 0xa7, 0xa0, 0xa5,
-  0x35, 0xb3, 0xfc, 0x93, 0x37, 0x4b, 0x7d, 0x79, 0x64, 0x5e, 0x05, 0x09,
-  0x91, 0xa3, 0xe5, 0xc2, 0x88, 0xac, 0x38, 0x31, 0x6a, 0xa3, 0x25, 0x8b,
-  0x9d, 0x10, 0x4b, 0x9b, 0x56, 0xb8, 0x4d, 0xcf, 0x78, 0x6b, 0x8e, 0x09,
-  0x84, 0x7d, 0x96, 0x96, 0xf0, 0xe8, 0xa8, 0x86, 0xd2, 0x5a, 0x9b, 0x95,
-  0x07, 0xbb, 0x58, 0x8a, 0x23, 0xeb, 0x84, 0x5c, 0x86, 0x56, 0x8f, 0x3a,
-  0x11, 0xb1, 0x96, 0x79, 0x30, 0x5f, 0xee, 0x09, 0x3b, 0x03, 0x2b, 0x23,
-  0x8d, 0x9b, 0xce, 0x53, 0xb3, 0x5f, 0xe6, 0xbc, 0xbd, 0xc6, 0x5a, 0xc9,
-  0xb4, 0x54, 0x16, 0x06, 0x59, 0x98, 0x4d, 0x4c, 0x9c, 0xf8, 0x9b, 0xce,
-  0x66, 0x39, 0xe9, 0x3a, 0x73, 0x18, 0x70, 0x56, 0x19, 0x99, 0xd8, 0x65,
-  0x51, 0x17, 0xfe, 0x36, 0x1a, 0x86, 0x70, 0x05, 0x19, 0x68, 0xc0, 0x86,
-  0x86, 0x11, 0xba, 0x19, 0x80, 0xf8, 0x16, 0x9d, 0x4e, 0xcc, 0x1c, 0x66,
-  0x62, 0xc4, 0x12, 0x66, 0x30, 0x4c, 0x48, 0x3b, 0xf3, 0x2c, 0xe1, 0x24,
-  0x2e, 0x74, 0xa5, 0xc4, 0xd4, 0x6c, 0x37, 0xac, 0x85, 0x62, 0xa2, 0x20,
-  0x5b, 0x0f, 0x9d, 0xd7, 0x9a, 0x87, 0x36, 0x34, 0x8b, 0x8b, 0x27, 0x2f,
-  0xaf, 0xf4, 0x51, 0xcf, 0x6e, 0x94, 0xc2, 0xf2, 0x60, 0xc4, 0x6b, 0xb8,
-  0x94, 0x66, 0x6a, 0xd6, 0x28, 0x2b, 0x66, 0x65, 0xf3, 0xd2, 0x50, 0xf1,
-  0x80, 0x6d, 0xb2, 0xde, 0xc0, 0x31, 0x52, 0xac, 0x38, 0x7b, 0x5a, 0x9d,
-  0xd8, 0x64, 0x87, 0x2d, 0xcb, 0x55, 0xdf, 0x3b, 0x34, 0xef, 0x16, 0xa7,
-  0x45, 0xd2, 0x6b, 0x5f, 0xd7, 0x9d, 0x8d, 0x19, 0x65, 0xb1, 0xd1, 0xf0,
-  0x59, 0x24, 0x47, 0x42, 0x67, 0xe5, 0x6b, 0xa2, 0x1f, 0xb1, 0xd3, 0xd8,
-  0x99, 0x2d, 0x48, 0x64, 0x22, 0x3a, 0xd1, 0x9d, 0x71, 0x5e, 0x8f, 0x88,
-  0x95, 0xf7, 0x2e, 0xb0, 0xdb, 0x43, 0x09, 0xf6, 0xaf, 0x23, 0x1d, 0x13,
-  0x99, 0x48, 0x8e, 0x69, 0x1e, 0xa3, 0xeb, 0x04, 0x07, 0xb0, 0x30, 0x33,
-  0x4c, 0xf1, 0xc5, 0xf1, 0xb5, 0x77, 0x8c, 0xe0, 0xa6, 0x2a, 0x60, 0x86,
-  0x1b, 0x92, 0x83, 0xf0, 0xbc, 0x2c, 0xe7, 0x59, 0xea, 0xa6, 0x86, 0xdb,
-  0x20, 0x2b, 0x40, 0xee, 0xb2, 0xa3, 0x86, 0x1d, 0x2c, 0x2d, 0xb3, 0x35,
-  0xd2, 0x6e, 0x92, 0x5e, 0xa6, 0xb9, 0xa5, 0x37, 0x39, 0x1a, 0xf6, 0xd9,
-  0xa2, 0x94, 0xc7, 0xb1, 0x53, 0x90, 0x0c, 0x84, 0x65, 0xad, 0x6a, 0x3e,
-  0x3e, 0x66, 0x5e, 0x86, 0xe5, 0xd4, 0xce, 0x82, 0x93, 0x90, 0x55, 0xd4,
-  0x9a, 0x91, 0xc8, 0x0e, 0x0c, 0x93, 0x2a, 0x31, 0x5e, 0x32, 0x90, 0x9a,
-  0x26, 0x07, 0xe3, 0xe4, 0x9b, 0xf2, 0x26, 0x23, 0x6f, 0x39, 0x19, 0xb0,
-  0x73, 0xb8, 0x78, 0x6b, 0xf3, 0x84, 0x51, 0xa3, 0x8c, 0x1a, 0x60, 0x56,
-  0x93, 0x8c, 0x6b, 0xf4, 0x99, 0xe7, 0x03, 0x31, 0x24, 0x7e, 0xc3, 0x47,
-  0x51, 0x27, 0x61, 0x77, 0xf2, 0x82, 0x4f, 0x44, 0xb2, 0x49, 0x1c, 0x6d,
-  0x8a, 0xc5, 0x5a, 0x36, 0x6e, 0x16, 0x76, 0x3d, 0x0c, 0x97, 0xae, 0xbd,
-  0xc3, 0x25, 0xee, 0x9e, 0xe4, 0xe9, 0x78, 0xf7, 0xd9, 0x78, 0x67, 0x0c,
-  0x09, 0x3a, 0xbb, 0xce, 0x8d, 0x7e, 0x6a, 0x7a, 0xc7, 0x48, 0xec, 0x7b,
-  0x37, 0x6c, 0x18, 0xba, 0xbc, 0x9c, 0x93, 0xf5, 0x78, 0xbb, 0xbc, 0x40,
-  0x8f, 0x15, 0xc8, 0xdd, 0xf1, 0xed, 0x25, 0x1b, 0xf9, 0xb1, 0x38, 0x72,
-  0xe8, 0x68, 0x65, 0x22, 0x7a, 0xe5, 0xd8, 0xf9, 0xe9, 0x46, 0xa3, 0xf4,
-  0xdc, 0x88, 0xe0, 0x66, 0x1d, 0x47, 0xab, 0x22, 0xbf, 0x1d, 0xd5, 0xe5,
-  0xf4, 0x83, 0xd9, 0x96, 0xe7, 0xcb, 0xb4, 0xb9, 0xfa, 0xbc, 0x23, 0x5d,
-  0x6d, 0xe2, 0x26, 0xd9, 0x4a, 0x0e, 0xd9, 0x6c, 0xaa, 0x03, 0xc0, 0x25,
-  0xaa, 0x6d, 0x24, 0xef, 0x4c, 0x1b, 0x86, 0x96, 0x8d, 0x74, 0x09, 0x22,
-  0xa3, 0xb6, 0x86, 0x96, 0x91, 0x76, 0x9a, 0x33, 0x83, 0x94, 0x3b, 0x84,
-  0xaf, 0x1a, 0x23, 0x3f, 0x92, 0xfd, 0x21, 0x49, 0xde, 0x94, 0x4d, 0x76,
-  0x80, 0xbf, 0x0d, 0x1b, 0x6b, 0x68, 0xdd, 0xe5, 0x6a, 0x4d, 0xc1, 0x14,
-  0x2e, 0xb8, 0xc7, 0x51, 0xa8, 0x48, 0x10, 0x35, 0xf0, 0x04, 0xc4, 0x94,
-  0x2e, 0xa4, 0xb4, 0xf1, 0xc5, 0xc6, 0x10, 0x66, 0x73, 0xda, 0x75, 0xe9,
-  0x8e, 0xa7, 0x08, 0x39, 0xe7, 0x72, 0x05, 0x8d, 0xad, 0xdb, 0xdc, 0x15,
-  0x5d, 0xd4, 0xb8, 0x69, 0xd8, 0x9f, 0x43, 0x64, 0x22, 0x0a, 0xb6, 0x75,
-  0xb1, 0x8c, 0x3f, 0xe9, 0xbc, 0xf6, 0x82, 0x76, 0xd5, 0xcc, 0xfe, 0xe9,
-  0xf8, 0xf1, 0xbe, 0xd9, 0x53, 0x7f, 0xa1, 0xe7, 0xcd, 0xa8, 0xbe, 0x9e,
-  0x26, 0xcf, 0xc9, 0xbc, 0x0c, 0x42, 0x8d, 0x2e, 0xb0, 0x51, 0x15, 0xbe,
-  0x7f, 0xf1, 0xf6, 0xcd, 0xab, 0x37, 0x5f, 0x1f, 0x70, 0xa7, 0x42, 0x6c,
-  0x1d, 0xf5, 0x12, 0x6a, 0x30, 0x8d, 0x0e, 0xfb, 0x6d, 0xfa, 0x33, 0x57,
-  0x49, 0x77, 0x45, 0x66, 0xab, 0x4e, 0xbc, 0x83, 0x7f, 0xed, 0x4a, 0xab,
-  0x7c, 0x3a, 0x79, 0x79, 0x75, 0x80, 0x64, 0x5d, 0x24, 0x8f, 0x23, 0x44,
-  0x25, 0x32, 0x8a, 0x92, 0x1b, 0x4b, 0x87, 0xdd, 0x69, 0x6e, 0x59, 0xe6,
-  0x4e, 0xf3, 0xc8, 0x6e, 0x73, 0x56, 0xa4, 0xb5, 0xb1, 0xa9, 0x61, 0x48,
-  0x99, 0x48, 0x0c, 0xc4, 0xe9, 0xc8, 0xd0, 0x24, 0x9c, 0x6c, 0x9c, 0xbc,
-  0xb8, 0x08, 0xac, 0x23, 0x14, 0x3c, 0xa3, 0x57, 0xe0, 0xcc, 0x0a, 0xc1,
-  0x1c, 0xe4, 0xc0, 0xcd, 0x69, 0x1b, 0x30, 0x94, 0x8a, 0x7d, 0x98, 0xf6,
-  0x14, 0xdd, 0x74, 0x9a, 0x23, 0xfb, 0x2e, 0x71, 0x19, 0x48, 0x83, 0x39,
-  0x76, 0x13, 0x8e, 0x0d, 0xc3, 0xa7, 0x17, 0xe5, 0x8c, 0xac, 0xe4, 0xc1,
-  0xfa, 0x4c, 0xac, 0x53, 0x73, 0x30, 0x70, 0xb3, 0x4e, 0x36, 0xe1, 0xe2,
-  0x36, 0x24, 0x50, 0x5c, 0x36, 0x57, 0x5b, 0xce, 0x6d, 0xa7, 0x16, 0x04,
-  0x33, 0x16, 0x9a, 0x77, 0xd1, 0xa5, 0x73, 0x0a, 0xbc, 0x20, 0xa1, 0xf3,
-  0xef, 0xab, 0xba, 0x21, 0x5b, 0xbf, 0x5c, 0xff, 0x3c, 0x19, 0x33, 0xb2,
-  0x45, 0xb6, 0x28, 0xab, 0xbb, 0x60, 0x20, 0xb4, 0xf0, 0x2d, 0x0a, 0xa0,
-  0xbb, 0x51, 0xbd, 0xde, 0x10, 0xfe, 0xeb, 0x61, 0xcb, 0xab, 0x45, 0x42,
-  0x93, 0xd5, 0x06, 0xbb, 0xd6, 0x44, 0xb2, 0x16, 0xb0, 0xe7, 0x4a, 0x7c,
-  0x05, 0xe7, 0xe2, 0xa2, 0x9c, 0xa7, 0xe0, 0x36, 0x45, 0xd6, 0xda, 0x1d,
-  0xba, 0x3b, 0x78, 0x5a, 0xeb, 0xe8, 0xfc, 0xc9, 0xa3, 0xf1, 0x6e, 0x8b,
-  0xce, 0x8b, 0x3b, 0x04, 0xc6, 0xc4, 0x99, 0x07, 0xf4, 0xc7, 0xda, 0x69,
-  0x8f, 0xf9, 0xe5, 0xaa, 0x22, 0xd9, 0x52, 0x62, 0x69, 0x34, 0x84, 0x06,
-  0xf2, 0xd0, 0x55, 0x49, 0x71, 0x28, 0xe6, 0x1e, 0xcd, 0xe6, 0x17, 0xc3,
-  0x88, 0x15, 0x51, 0xaf, 0x01, 0x62, 0x95, 0x46, 0x3b, 0xa1, 0xa6, 0x8a,
-  0x4c, 0x64, 0x35, 0x58, 0x4b, 0x13, 0x44, 0x5c, 0x24, 0xd3, 0x79, 0x9a,
-  0x2f, 0xc4, 0x64, 0x2f, 0x0a, 0xf8, 0x38, 0x76, 0x24, 0x48, 0x18, 0x35,
-  0xef, 0x9f, 0xc3, 0xa9, 0x53, 0xd5, 0xb8, 0x94, 0x69, 0x47, 0x55, 0x60,
-  0x66, 0xdb, 0xc4, 0x55, 0x36, 0xfd, 0xa0, 0x56, 0x37, 0x95, 0x36, 0xbb,
-  0x34, 0x8c, 0x08, 0x1b, 0xf2, 0x1c, 0x35, 0x57, 0x30, 0x63, 0x97, 0x46,
-  0xf5, 0x85, 0x63, 0xd8, 0xa8, 0x80, 0xab, 0xa9, 0xd3, 0xc1, 0x6f, 0x0d,
-  0x69, 0x5b, 0xb6, 0x67, 0x38, 0xb8, 0xd1, 0x04, 0x67, 0xa3, 0xa6, 0xca,
-  0x97, 0xd1, 0xd1, 0x91, 0x51, 0x85, 0xb6, 0xa5, 0x25, 0x98, 0x22, 0x36,
-  0xc5, 0x9a, 0x7a, 0xc4, 0xf3, 0x33, 0xed, 0xac, 0x66, 0x97, 0x20, 0x69,
-  0x6d, 0x87, 0xb0, 0x81, 0x19, 0x61, 0x41, 0xe3, 0x29, 0x66, 0x62, 0xbd,
-  0x37, 0x3b, 0x68, 0x34, 0xb7, 0x7c, 0x3a, 0xc4, 0x6f, 0xb3, 0xfc, 0x32,
-  0x43, 0xe4, 0x12, 0xae, 0xb1, 0x66, 0x6e, 0x84, 0xa2, 0x08, 0x7d, 0x9b,
-  0xaf, 0xb2, 0xcb, 0xb2, 0x81, 0x20, 0x12, 0x90, 0x09, 0x1b, 0x28, 0x2d,
-  0x4d, 0x88, 0x01, 0xac, 0x25, 0x8e, 0x89, 0x8e, 0x66, 0xba, 0x17, 0xf5,
-  0x9b, 0xe9, 0x94, 0xf4, 0xfe, 0xee, 0xae, 0x9b, 0xd6, 0xa6, 0xa4, 0x45,
-  0x41, 0x64, 0x54, 0x79, 0x55, 0x25, 0x7d, 0xf0, 0x03, 0x08, 0xc7, 0xcd,
-  0x4d, 0x3e, 0xcd, 0x54, 0xa9, 0xb5, 0xf1, 0x0c, 0xf3, 0x3c, 0xe4, 0xf1,
-  0x0b, 0x9c, 0x47, 0xbc, 0xc7, 0x02, 0x39, 0x1c, 0x83, 0x37, 0x39, 0x04,
-  0x76, 0xe1, 0x78, 0x24, 0x8e, 0xc9, 0x45, 0x90, 0x56, 0x39, 0x79, 0x41,
-  0x11, 0x36, 0xa0, 0x66, 0x97, 0xd8, 0xf9, 0xe2, 0x71, 0xd3, 0xeb, 0xa2,
-  0xc3, 0x38, 0xdd, 0x85, 0x0e, 0xd7, 0x05, 0x59, 0x5e, 0x82, 0x75, 0x22,
-  0x25, 0xec, 0x32, 0x23, 0x7f, 0x31, 0x0b, 0x0e, 0x2b, 0x88, 0x9f, 0x88,
-  0x33, 0x0b, 0x19, 0x54, 0x96, 0xb1, 0x2e, 0x41, 0x7a, 0xc7, 0xed, 0x9d,
-  0x2e, 0xef, 0x50, 0xf7, 0x8e, 0x05, 0x37, 0xd9, 0x3d, 0xef, 0x6c, 0xa6,
-  0x78, 0xc2, 0xe8, 0x59, 0x59, 0xb0, 0x89, 0x9b, 0x50, 0xba, 0x60, 0xd9,
-  0xda, 0xd2, 0xd0, 0x88, 0x4c, 0x82, 0x43, 0x6c, 0x20, 0x1b, 0xb1, 0x22,
-  0x30, 0x33, 0x39, 0xbf, 0xdc, 0x8e, 0xa8, 0x03, 0x5d, 0x26, 0x6e, 0x6e,
-  0x55, 0x73, 0x0b, 0x4b, 0x5c, 0x5b, 0x8b, 0x5e, 0x61, 0x2a, 0xb3, 0xe1,
-  0x55, 0x39, 0xf9, 0x9d, 0x2e, 0x12, 0xff, 0xcc, 0x46, 0x98, 0x38, 0x94,
-  0x3e, 0xc8, 0xc7, 0x74, 0xbb, 0x0c, 0x59, 0x9a, 0x63, 0x3e, 0x35, 0xe5,
-  0xd0, 0x06, 0x11, 0x1a, 0xf8, 0x86, 0xa1, 0x81, 0x5e, 0xcc, 0xd3, 0x4b,
-  0x3e, 0x33, 0xf9, 0x65, 0xf7, 0x78, 0x16, 0xa5, 0xc4, 0xb8, 0xd5, 0xa5,
-  0xe1, 0xeb, 0x64, 0xcf, 0x63, 0xcb, 0x51, 0x9d, 0x6c, 0x1a, 0x0a, 0x9b,
-  0xaf, 0xe8, 0x92, 0x3f, 0x31, 0xd3, 0x9b, 0x4c, 0xbe, 0xd9, 0x6a, 0xf1,
-  0xb6, 0x9b, 0xda, 0xe8, 0x60, 0x97, 0xd7, 0x8f, 0x8c, 0xf8, 0xc0, 0x81,
-  0x11, 0xd5, 0xee, 0x8f, 0x07, 0xfa, 0xeb, 0xde, 0x8f, 0x07, 0x46, 0x47,
-  0x34, 0x3b, 0xfd, 0xe3, 0x01, 0xda, 0x33, 0x64, 0xf8, 0xf3, 0xcf, 0x3f,
-  0x7f, 0x1e, 0x6e, 0x75, 0xf2, 0xe2, 0xfb, 0x49, 0xf2, 0xdd, 0x23, 0x0a,
-  0x8c, 0xa0, 0xf0, 0xb9, 0x2e, 0xf7, 0x93, 0xb8, 0x0a, 0xbd, 0xfa, 0x22,
-  0x37, 0x38, 0x87, 0xa0, 0x50, 0xaf, 0x56, 0x82, 0x61, 0x55, 0xc7, 0xc8,
-  0x41, 0xcc, 0x9e, 0x48, 0x60, 0x16, 0xc7, 0xee, 0x9d, 0x5c, 0xf0, 0x97,
-  0xa5, 0x59, 0xf9, 0xab, 0x45, 0x68, 0x85, 0x2b, 0x78, 0x25, 0xc9, 0x68,
-  0xb5, 0x6a, 0x2e, 0x99, 0xf1, 0xb5, 0x07, 0x25, 0x4c, 0x2d, 0x3a, 0x18,
-  0x9e, 0xf6, 0x9a, 0x91, 0x78, 0x42, 0x82, 0x51, 0x19, 0x8c, 0xd6, 0x9b,
-  0x2e, 0xaf, 0x40, 0xa7, 0xa6, 0xd3, 0x88, 0x58, 0x08, 0x96, 0x5b, 0x1b,
-  0x0d, 0x1a, 0xb1, 0x38, 0xd3, 0x72, 0x3e, 0x67, 0x2f, 0x7d, 0xb2, 0xc9,
-  0xdd, 0x8c, 0xa6, 0xe5, 0x2c, 0xdb, 0xe2, 0x51, 0x37, 0xae, 0x73, 0xba,
-  0xa4, 0xf3, 0xee, 0xa5, 0x57, 0x2e, 0xf2, 0xa6, 0xd1, 0x28, 0x1e, 0x52,
-  0x1a, 0x8a, 0x19, 0x0d, 0x26, 0x3a, 0x0f, 0xd9, 0xb6, 0x07, 0x4e, 0xe4,
-  0x62, 0x55, 0xf0, 0xc0, 0x62, 0xd2, 0x17, 0xf6, 0x86, 0x56, 0xde, 0x08,
-  0x33, 0xf3, 0x72, 0x35, 0x4b, 0x36, 0xa5, 0xf1, 0xee, 0xf0, 0xb5, 0x4f,
-  0x19, 0xbf, 0x8e, 0x38, 0xc6, 0x5c, 0xd6, 0x8e, 0xdf, 0xbb, 0x92, 0x9f,
-  0x3e, 0x6e, 0x8b, 0x9e, 0xc4, 0x14, 0x1e, 0x72, 0x21, 0xe3, 0x4a, 0x25,
-  0x7b, 0xd1, 0x97, 0xcc, 0x46, 0xda, 0x14, 0x60, 0x8d, 0x11, 0x88, 0xa0,
-  0xe8, 0xf2, 0x52, 0x1c, 0x3f, 0x04, 0xa6, 0x8c, 0xed, 0x65, 0x8a, 0x27,
-  0x35, 0x3e, 0x86, 0xd9, 0x71, 0x47, 0x96, 0x59, 0x91, 0x19, 0x95, 0x66,
-  0xd3, 0x6d, 0x0e, 0x8e, 0x66, 0xeb, 0x70, 0x56, 0x9d, 0x2f, 0x27, 0x15,
-  0x17, 0x0c, 0xa4, 0x42, 0x48, 0x12, 0xac, 0x5d, 0x56, 0x5f, 0x32, 0xd7,
-  0xa0, 0xb6, 0x8d, 0x7d, 0x0a, 0x0c, 0xc3, 0x0d, 0x05, 0x52, 0x1b, 0x15,
-  0x13, 0xe1, 0xbe, 0xe4, 0x17, 0x8f, 0x4b, 0x1c, 0x9b, 0xf5, 0x0a, 0x06,
-  0xed, 0xda, 0xde, 0x78, 0x60, 0xa3, 0xdd, 0xd1, 0xf1, 0xa5, 0x88, 0x50,
-  0x02, 0x77, 0xf7, 0x6d, 0xfd, 0xd6, 0x4c, 0x9d, 0x36, 0xcd, 0xdf, 0x45,
-  0x23, 0x2e, 0x66, 0x55, 0xc3, 0xfa, 0x43, 0xa0, 0x3a, 0x9c, 0x1d, 0x4f,
-  0x62, 0x9b, 0xd9, 0x8e, 0x19, 0xc4, 0xfb, 0x90, 0x0f, 0xd2, 0x46, 0x83,
-  0x5c, 0x4a, 0x28, 0xb1, 0x5e, 0xdc, 0xa0, 0x67, 0x0b, 0x48, 0x96, 0x19,
-  0x02, 0x0c, 0x99, 0xd9, 0x30, 0x23, 0xc7, 0xb5, 0x0b, 0xe1, 0x12, 0xd2,
-  0xb4, 0x8d, 0x65, 0x38, 0x7c, 0xe1, 0xb7, 0x4b, 0x11, 0x2c, 0x5d, 0xfe,
-  0xed, 0x7d, 0xbf, 0x59, 0x6f, 0xf1, 0xbd, 0x7b, 0x4e, 0x92, 0xef, 0xe9,
-  0xd1, 0x6b, 0x32, 0xb7, 0xa4, 0x86, 0x6e, 0xde, 0xa8, 0x61, 0x5d, 0xa3,
-  0x91, 0xe1, 0x40, 0x6d, 0x45, 0x68, 0x39, 0x0b, 0x11, 0x85, 0x02, 0x33,
-  0x69, 0xd1, 0xd0, 0x38, 0xe2, 0x30, 0xa7, 0x60, 0x9d, 0x2e, 0xa1, 0x35,
-  0x77, 0x4b, 0x89, 0x33, 0x12, 0x4f, 0x54, 0x57, 0x96, 0x9c, 0x43, 0xe7,
-  0x60, 0x33, 0x8c, 0xd7, 0x66, 0xb0, 0x43, 0x34, 0x2c, 0x88, 0x2e, 0x97,
-  0x45, 0xfe, 0x8b, 0xe8, 0x4c, 0x59, 0x71, 0x9d, 0x57, 0x65, 0x41, 0xbc,
-  0x82, 0x1c, 0xc9, 0xe7, 0xa2, 0x2e, 0x98, 0xdb, 0x6e, 0xe3, 0xf0, 0xdd,
-  0xdb, 0xe3, 0xf7, 0x87, 0x2f, 0xde, 0x7f, 0xf9, 0xee, 0xcd, 0xcb, 0xe3,
-  0xa3, 0x8d, 0xae, 0x37, 0xfe, 0x82, 0x63, 0x33, 0x72, 0x72, 0xce, 0x34,
-  0x43, 0x2b, 0xd4, 0x72, 0xcb, 0x1c, 0x7d, 0x42, 0x2a, 0x2f, 0x45, 0x4c,
-  0xd1, 0x6f, 0xc4, 0x76, 0x64, 0xc1, 0x3b, 0xcd, 0x9d, 0xaf, 0xa0, 0x57,
-  0x8c, 0x5b, 0xda, 0x9d, 0x1e, 0x15, 0x31, 0x32, 0xe9, 0x00, 0xa3, 0xac,
-  0xef, 0x46, 0xe2, 0x06, 0x3c, 0xa3, 0x86, 0x17, 0x3c, 0xb5, 0x6a, 0x8c,
-  0x52, 0xaf, 0xe1, 0x5a, 0xe4, 0xd4, 0xd5, 0xb8, 0xf0, 0xc4, 0x8c, 0x27,
-  0xb2, 0xdd, 0xb5, 0xd3, 0x9c, 0x66, 0xc9, 0x06, 0x5a, 0x32, 0xf4, 0x3b,
-  0x92, 0x41, 0x4e, 0xab, 0xc6, 0x28, 0xe4, 0x59, 0x4e, 0x07, 0x43, 0x23,
-  0x5b, 0xc1, 0xfe, 0xc8, 0x8a, 0x1c, 0x68, 0x84, 0xf0, 0x23, 0xa7, 0x4c,
-  0xd7, 0xe3, 0xec, 0x36, 0xa3, 0x93, 0x27, 0x6f, 0x1d, 0xae, 0x2a, 0x3a,
-  0xcd, 0xdf, 0x1b, 0x11, 0x1a, 0x3c, 0xfa, 0xa5, 0x3a, 0x9e, 0xf5, 0x21,
-  0x23, 0x1a, 0x75, 0x39, 0x69, 0x39, 0xa7, 0x5b, 0x93, 0x0c, 0x7f, 0x64,
-  0xa7, 0x3d, 0x7d, 0x71, 0xf6, 0x4d, 0x4c, 0xf9, 0xf2, 0x62, 0x81, 0x84,
-  0x14, 0x49, 0x91, 0xac, 0xd5, 0x38, 0xfe, 0x66, 0x32, 0x49, 0x28, 0xa8,
-  0x7f, 0x9e, 0x9f, 0x57, 0x29, 0xfa, 0xc4, 0xc7, 0xf8, 0xd4, 0x90, 0x75,
-  0xa7, 0xb9, 0xd3, 0x6f, 0x0f, 0x27, 0x7f, 0xda, 0xdd, 0x85, 0xd6, 0xb9,
-  0x32, 0xeb, 0xb2, 0x69, 0x5e, 0x29, 0x6a, 0x73, 0x32, 0x17, 0xe3, 0xba,
-  0xdc, 0x92, 0xf0, 0x20, 0x16, 0x62, 0xd3, 0x6b, 0x23, 0x21, 0x12, 0x1d,
-  0x29, 0x51, 0xf7, 0xc4, 0x10, 0x90, 0x87, 0x02, 0xaa, 0x83, 0xe1, 0x17,
-  0x46, 0xc6, 0x9c, 0x87, 0x0a, 0xe4, 0x66, 0x7e, 0x32, 0x61, 0xb2, 0x5a,
-  0xa4, 0x53, 0xf3, 0x2b, 0xec, 0x5a, 0x5b, 0x36, 0xc8, 0xc9, 0x9e, 0x30,
-  0x9d, 0xd5, 0x84, 0x75, 0x28, 0x0a, 0xeb, 0xa0, 0x34, 0x87, 0x90, 0x2b,
-  0x14, 0xdd, 0xc3, 0xe5, 0xbc, 0xd7, 0x44, 0x0e, 0xe7, 0xe9, 0xf4, 0xc3,
-  0x4d, 0x5a, 0xcd, 0xd8, 0x88, 0x6d, 0x28, 0xe6, 0x3c, 0x9f, 0xe7, 0xcd,
-  0x1d, 0x9b, 0xa2, 0xbb, 0x57, 0x33, 0xc7, 0xab, 0x62, 0x01, 0xcd, 0x39,
-  0xba, 0xcc, 0x0b, 0x68, 0xb3, 0xa4, 0x92, 0xe6, 0x8d, 0x6f, 0x7f, 0x21,
-  0xc1, 0xbe, 0xb1, 0x52, 0xb9, 0xed, 0x3b, 0x90, 0xea, 0x1a, 0x3e, 0x47,
-  0x34, 0x4c, 0x47, 0xbb, 0xca, 0x06, 0x7d, 0x26, 0xa5, 0xe4, 0x93, 0xd4,
-  0x77, 0x46, 0x34, 0x5d, 0xc4, 0xd4, 0x1a, 0xca, 0xf0, 0x48, 0xbe, 0xcd,
-  0xee, 0xa6, 0x57, 0x60, 0x77, 0x96, 0x53, 0xb2, 0x25, 0x2a, 0x83, 0x41,
-  0x82, 0x15, 0xa8, 0x5c, 0xfd, 0x3e, 0x99, 0x78, 0xef, 0xf8, 0x26, 0x09,
-  0xc5, 0x1a, 0x7e, 0x5f, 0x75, 0x47, 0x34, 0xb1, 0x51, 0xb7, 0x58, 0x32,
-  0xf5, 0x14, 0x6e, 0xe2, 0xc4, 0x7c, 0x5e, 0x14, 0xd9, 0x5c, 0xb6, 0xef,
-  0x6c, 0xdd, 0x06, 0xd8, 0x67, 0xcd, 0x90, 0x25, 0x12, 0xa8, 0xd3, 0xdc,
-  0x53, 0x0e, 0xb8, 0x4e, 0x1b, 0xbd, 0x93, 0x34, 0xcf, 0xc3, 0x68, 0xf2,
-  0x3b, 0xf6, 0xab, 0x71, 0x6f, 0x37, 0xc1, 0x69, 0xaa, 0xdc, 0xa6, 0xb7,
-  0xf7, 0x9c, 0x6d, 0xf8, 0xb4, 0xc9, 0xd8, 0x63, 0xd9, 0xe2, 0xbf, 0x5a,
-  0x75, 0x80, 0x9c, 0x6d, 0x9d, 0xe6, 0x7c, 0xcd, 0x50, 0xef, 0x30, 0x99,
-  0xc7, 0x86, 0x91, 0xc3, 0xca, 0x8a, 0x8c, 0x9b, 0x55, 0x69, 0xf6, 0xba,
-  0xb5, 0x9f, 0x9b, 0x2c, 0x6c, 0x74, 0x8f, 0x89, 0x70, 0x73, 0x6f, 0x61,
-  0xb6, 0x7e, 0xa5, 0x95, 0xa5, 0xd7, 0x4a, 0xd2, 0xbe, 0xa1, 0x89, 0x4b,
-  0x3f, 0x37, 0x6c, 0xec, 0x9f, 0xbf, 0xa0, 0xbd, 0x20, 0x9a, 0xf0, 0xce,
-  0x12, 0x5a, 0x6c, 0x5d, 0xd4, 0xaf, 0xf5, 0x46, 0xc6, 0x20, 0xac, 0xc7,
-  0x40, 0xd4, 0x04, 0xd6, 0x77, 0xd8, 0xf5, 0x11, 0xaa, 0xae, 0x14, 0x10,
-  0xc7, 0x16, 0xf2, 0x83, 0x41, 0xb2, 0x99, 0x8d, 0x2f, 0x4d, 0x7b, 0x03,
-  0xb4, 0xb3, 0x7b, 0x80, 0x9f, 0x7b, 0xf4, 0x73, 0x7f, 0x20, 0x19, 0x58,
-  0xad, 0xa5, 0xc7, 0x6d, 0xde, 0xbd, 0x8b, 0x48, 0xe9, 0xf3, 0x2e, 0xf7,
-  0x21, 0xbb, 0x44, 0xfa, 0x18, 0x0f, 0xab, 0x5a, 0xc7, 0xbc, 0xca, 0xa1,
-  0xb8, 0xa5, 0xcb, 0xb0, 0x60, 0xfb, 0xd9, 0x75, 0xc6, 0x06, 0x3c, 0x33,
-  0x33, 0x84, 0xcd, 0x91, 0xcd, 0x5b, 0x4f, 0xd5, 0xf4, 0x7d, 0x95, 0x5d,
-  0xa5, 0xf5, 0x55, 0xb2, 0x6a, 0x98, 0x08, 0x0d, 0xdd, 0x76, 0x9b, 0x5b,
-  0xce, 0x29, 0x36, 0x96, 0xad, 0x1d, 0xd2, 0xf5, 0x58, 0x6d, 0x15, 0x6e,
-  0x17, 0xd9, 0x63, 0x37, 0x2f, 0x6f, 0xf4, 0x99, 0x91, 0x64, 0x47, 0xc5,
-  0xc4, 0x02, 0xb3, 0x9b, 0x64, 0xe7, 0xc3, 0x63, 0x7e, 0x5c, 0xf1, 0x02,
-  0xd2, 0x24, 0x52, 0xb7, 0x0c, 0x8b, 0xbb, 0x30, 0x2b, 0x06, 0x2b, 0xc4,
-  0x9c, 0xf6, 0x0d, 0x26, 0xa0, 0x55, 0x24, 0xe6, 0xcf, 0xca, 0x79, 0xf9,
-  0x85, 0x78, 0x1b, 0xe4, 0x6f, 0xba, 0x4f, 0x45, 0xfa, 0xaa, 0x39, 0xf6,
-  0xb8, 0x2b, 0x7a, 0xdd, 0x4f, 0xda, 0xca, 0x20, 0xad, 0xa4, 0x23, 0x93,
-  0x65, 0xff, 0x9e, 0xd2, 0xb5, 0xd1, 0x4b, 0xa1, 0x22, 0xc7, 0x8c, 0x6e,
-  0x6c, 0x44, 0xfd, 0xa7, 0x0e, 0x89, 0x19, 0xf1, 0x08, 0x96, 0xfd, 0x55,
-  0xfd, 0x80, 0x33, 0xe2, 0x31, 0x5d, 0x7e, 0xc7, 0x3a, 0x37, 0x24, 0xbc,
-  0xc5, 0x5b, 0x80, 0x2e, 0x15, 0xde, 0x79, 0x84, 0x71, 0xe8, 0x9d, 0xac,
-  0x09, 0x37, 0xf4, 0x56, 0xcc, 0x7a, 0x9b, 0xe9, 0x87, 0x74, 0x9c, 0x9c,
-  0x1c, 0x4e, 0x4e, 0xd1, 0xc5, 0x12, 0xf1, 0x2d, 0x5b, 0x08, 0x7e, 0xe9,
-  0x34, 0x97, 0xdd, 0x36, 0x59, 0x51, 0xc7, 0x0c, 0xea, 0xe1, 0x32, 0xab,
-  0xd3, 0xcb, 0x86, 0x56, 0xf8, 0x81, 0x29, 0x14, 0x19, 0x43, 0x11, 0xf1,
-  0x09, 0x1f, 0xb5, 0xa0, 0xa3, 0xa5, 0x39, 0xf9, 0xb3, 0x2d, 0x6b, 0x5e,
-  0x1c, 0x2a, 0x2d, 0x58, 0xef, 0x76, 0xbd, 0xba, 0x84, 0x0e, 0x52, 0xab,
-  0xc1, 0xc3, 0xf6, 0x60, 0x56, 0x23, 0x14, 0x15, 0x64, 0xda, 0xd6, 0xf2,
-  0x6d, 0xb4, 0x26, 0x64, 0xb6, 0x90, 0x88, 0x54, 0x94, 0xae, 0x55, 0x04,
-  0xd5, 0x50, 0x9e, 0x1f, 0x24, 0x1e, 0x0d, 0xd6, 0x8e, 0x08, 0x01, 0xbc,
-  0x29, 0xaa, 0x38, 0x5d, 0x48, 0x6e, 0x5f, 0x9f, 0xcd, 0x72, 0xca, 0x22,
-  0x1a, 0xa8, 0x9e, 0xfc, 0x6a, 0x39, 0x2c, 0xfb, 0x10, 0x98, 0x59, 0x5b,
-  0x45, 0x7b, 0xf6, 0xfc, 0x7f, 0x5d, 0xac, 0x10, 0x32, 0x17, 0xde, 0xc6,
-  0x10, 0xaa, 0x70, 0xcd, 0x60, 0x01, 0xd7, 0x69, 0xbe, 0x8f, 0x76, 0xdb,
-  0x9a, 0x2f, 0x11, 0x9b, 0x51, 0x00, 0xb2, 0xe4, 0x39, 0x7e, 0xde, 0xcb,
-  0x95, 0x29, 0xb2, 0x88, 0x9e, 0x17, 0xff, 0x3c, 0xf3, 0x4e, 0xb1, 0x1f,
-  0x26, 0x6d, 0x06, 0x1d, 0xdc, 0x5e, 0x44, 0x6e, 0x63, 0xf0, 0xbd, 0x61,
-  0xf2, 0x12, 0x19, 0xb4, 0x47, 0x6f, 0xbe, 0x26, 0x1a, 0x38, 0xdd, 0xdd,
-  0x23, 0x67, 0xa8, 0xd5, 0x1e, 0x66, 0xd4, 0x49, 0x3d, 0xb6, 0xb1, 0xf3,
-  0xb8, 0x03, 0x82, 0x78, 0x5d, 0xdc, 0x09, 0x43, 0x62, 0xa3, 0xb0, 0x43,
-  0x50, 0x2e, 0xc7, 0xec, 0xf7, 0xbb, 0xbf, 0x02, 0x45, 0xf4, 0x68, 0x28,
-  0x2b, 0x88, 0x7f, 0x3f, 0x64, 0x77, 0x62, 0x56, 0x34, 0xbf, 0xd1, 0x92,
-  0x7a, 0xeb, 0x6c, 0x9f, 0x4c, 0x9e, 0x7b, 0x2b, 0xf4, 0xe3, 0x01, 0x92,
-  0x45, 0x10, 0x43, 0xfd, 0xf3, 0xaf, 0xbb, 0x0e, 0xe3, 0xcb, 0x1e, 0x31,
-  0x10, 0x92, 0x31, 0x45, 0x83, 0x1e, 0x39, 0x40, 0x85, 0xf9, 0xbb, 0x24,
-  0x2f, 0x23, 0xaf, 0x19, 0xd4, 0x9e, 0x16, 0x56, 0x1e, 0x19, 0x71, 0x5c,
-  0x26, 0xc5, 0xca, 0x76, 0x17, 0x7e, 0x5a, 0xce, 0x83, 0x8b, 0xae, 0xa5,
-  0xb5, 0x92, 0x30, 0xbf, 0x27, 0x97, 0x1b, 0x69, 0x72, 0xe2, 0xc9, 0x64,
-  0x11, 0xba, 0x7b, 0x16, 0xac, 0x40, 0x4d, 0xb2, 0x97, 0xbb, 0x16, 0xf1,
-  0x26, 0xbf, 0x48, 0xf1, 0x18, 0x34, 0x34, 0x16, 0x93, 0xc6, 0x89, 0x13,
-  0x77, 0x63, 0xb2, 0xbf, 0xd9, 0x58, 0x5d, 0x5b, 0xb3, 0xe3, 0xb0, 0x8d,
-  0xda, 0x55, 0x6b, 0xd9, 0x47, 0x0d, 0x87, 0xab, 0x72, 0x15, 0xce, 0x25,
-  0xbb, 0x2f, 0x74, 0xb8, 0x71, 0x74, 0x8c, 0xd8, 0x50, 0x25, 0xc9, 0x85,
-  0xa3, 0xac, 0xd4, 0x5d, 0x4f, 0xb4, 0x07, 0x35, 0x74, 0xe0, 0x2d, 0xc9,
-  0x20, 0xb6, 0x15, 0x6a, 0x78, 0xe4, 0xf3, 0x93, 0x5f, 0x63, 0xe9, 0x94,
-  0x76, 0xe8, 0x86, 0xe6, 0x2d, 0x6d, 0xc9, 0xbd, 0x65, 0x81, 0x7f, 0x0b,
-  0x58, 0x72, 0xff, 0x25, 0x42, 0x8d, 0x1e, 0x79, 0x59, 0x0a, 0xa4, 0x80,
-  0x52, 0x71, 0xd4, 0x91, 0xf4, 0x82, 0x8c, 0x34, 0x49, 0x1a, 0x9e, 0xdf,
-  0x3d, 0x48, 0x9b, 0x53, 0xe9, 0x43, 0x95, 0x36, 0x4f, 0x93, 0x0b, 0x54,
-  0x9d, 0x2e, 0x81, 0x18, 0x1e, 0xde, 0x20, 0xf0, 0x89, 0x69, 0x17, 0xbe,
-  0x82, 0x7c, 0xfa, 0x81, 0x73, 0x49, 0x2e, 0xba, 0xda, 0x86, 0x4d, 0xa1,
-  0xe2, 0xf4, 0xbf, 0xc8, 0x16, 0x90, 0x22, 0x09, 0x3f, 0x06, 0x68, 0x12,
-  0x57, 0x73, 0x5e, 0x38, 0xab, 0x6d, 0xd4, 0xc4, 0x60, 0xc6, 0xfa, 0xfe,
-  0xe5, 0xab, 0xb7, 0xc9, 0x26, 0xc4, 0xef, 0xae, 0x86, 0xab, 0x77, 0xfb,
-  0x76, 0xd6, 0x4c, 0xb7, 0x97, 0x1f, 0xf2, 0x6d, 0xa3, 0x69, 0xce, 0xce,
-  0xb7, 0xac, 0x06, 0x45, 0xdd, 0x81, 0x0a, 0xad, 0x56, 0xaa, 0x6a, 0x29,
-  0xe9, 0xa5, 0x81, 0xb9, 0xdc, 0xe9, 0xa9, 0x8c, 0x47, 0x60, 0x15, 0x54,
-  0xf1, 0xb0, 0x10, 0x41, 0x93, 0x3f, 0x11, 0x06, 0xa2, 0xf3, 0x8c, 0xdc,
-  0x90, 0x19, 0xfb, 0x51, 0x8c, 0x82, 0xdd, 0x3d, 0xab, 0x9c, 0x88, 0x26,
-  0x56, 0x1c, 0xb6, 0xde, 0xa8, 0x71, 0x53, 0xee, 0x0a, 0x27, 0xfa, 0x0e,
-  0x91, 0xf7, 0x86, 0x45, 0x59, 0xe2, 0x3e, 0x9a, 0xc1, 0x06, 0x18, 0x09,
-  0x60, 0x36, 0xb2, 0xea, 0x78, 0x7b, 0x90, 0xd8, 0x4c, 0x3f, 0xb3, 0xca,
-  0x9c, 0xd0, 0x6a, 0xbd, 0xb4, 0x86, 0xc4, 0x2e, 0x56, 0xb5, 0x35, 0x62,
-  0xa6, 0x76, 0xbf, 0xc6, 0x31, 0x6e, 0xea, 0x6d, 0xa7, 0x15, 0xb8, 0x8c,
-  0x60, 0x4c, 0x27, 0xcb, 0x57, 0xd5, 0x65, 0x50, 0xb4, 0x55, 0x83, 0x9f,
-  0x06, 0x89, 0x97, 0x29, 0xd6, 0x4a, 0x18, 0x13, 0x33, 0x8f, 0xba, 0xbe,
-  0xe4, 0x06, 0x30, 0xd7, 0xb1, 0x3d, 0xc3, 0xb3, 0x6c, 0x9e, 0x2f, 0x72,
-  0x52, 0xbc, 0xfc, 0x21, 0x8c, 0x62, 0xde, 0x6c, 0x37, 0xa4, 0x9f, 0xc2,
-  0x21, 0x69, 0xfe, 0x65, 0x8a, 0xaf, 0xcd, 0x90, 0xc8, 0x1c, 0xc6, 0x51,
-  0xb5, 0x71, 0x95, 0xb9, 0x3d, 0x20, 0x9b, 0xc1, 0xb9, 0x26, 0xc6, 0xc1,
-  0x9e, 0xa5, 0x3e, 0x39, 0xde, 0xd9, 0x43, 0xf4, 0xd0, 0x33, 0x53, 0x4b,
-  0x96, 0x1f, 0xa6, 0xf5, 0xee, 0x6e, 0xf7, 0x96, 0xab, 0x1d, 0x45, 0x89,
-  0xf2, 0x9e, 0x5a, 0xc2, 0x7c, 0xf7, 0xf6, 0x55, 0xb2, 0x89, 0x9c, 0xfe,
-  0xa7, 0x8f, 0x77, 0xf7, 0xb6, 0xfc, 0x28, 0x28, 0x65, 0x00, 0xe1, 0xa5,
-  0x79, 0x47, 0x56, 0x29, 0xff, 0x00, 0x22, 0x0b, 0x47, 0xc4, 0x0d, 0xd7,
-  0xf4, 0x2c, 0x83, 0xd9, 0x7d, 0x9c, 0xbc, 0x50, 0xfb, 0xfe, 0x79, 0x66,
-  0x06, 0x19, 0xac, 0xb8, 0x4b, 0xae, 0xe4, 0xd1, 0x1b, 0xfd, 0xc8, 0x8a,
-  0xc9, 0x88, 0x6f, 0x36, 0x34, 0xd0, 0xc8, 0xda, 0xf9, 0xa3, 0x16, 0xbf,
-  0x56, 0xda, 0x63, 0x06, 0xc2, 0xbc, 0x18, 0xf0, 0x80, 0x04, 0x8c, 0xa1,
-  0x32, 0x1c, 0xc8, 0xfb, 0xb2, 0x58, 0xc2, 0x7a, 0x6d, 0xac, 0x03, 0xa2,
-  0xa5, 0xba, 0x1b, 0x28, 0x63, 0x1a, 0xe0, 0x22, 0x29, 0xe8, 0x66, 0x4f,
-  0x5d, 0xa3, 0x76, 0xf5, 0x7d, 0x31, 0xa8, 0xdd, 0x6a, 0x68, 0x26, 0x27,
-  0xc2, 0x31, 0x62, 0x4b, 0xbc, 0xc9, 0x3f, 0xc8, 0xc2, 0xd4, 0x66, 0x9f,
-  0xb2, 0x3d, 0xd8, 0x7b, 0x31, 0x19, 0x9e, 0x67, 0x92, 0xc7, 0xc4, 0xfc,
-  0x36, 0xd5, 0xc7, 0x83, 0x7b, 0xdc, 0xbc, 0xbe, 0xad, 0x97, 0x10, 0xdd,
-  0x42, 0x6a, 0x6c, 0x64, 0xb3, 0x0f, 0xc2, 0xee, 0x61, 0xe6, 0xf9, 0x20,
-  0x56, 0x1e, 0x92, 0x88, 0x6d, 0xa4, 0x51, 0x68, 0x28, 0xd6, 0x8b, 0x7f,
-  0x44, 0xf9, 0x71, 0x1d, 0x7d, 0x1d, 0x8b, 0xe0, 0x5d, 0x78, 0x63, 0x17,
-  0x64, 0x4a, 0x1c, 0x2f, 0x6e, 0xc6, 0x06, 0xa5, 0xb2, 0x6d, 0xfd, 0xa3,
-  0x78, 0x60, 0xcc, 0x9c, 0x46, 0x2c, 0xf0, 0x57, 0x71, 0xc0, 0x7b, 0x0c,
-  0x4e, 0x87, 0xc1, 0x8d, 0x5d, 0x5b, 0x61, 0xc8, 0xc9, 0x6a, 0xe4, 0xe9,
-  0xa2, 0x85, 0x0b, 0xd5, 0x99, 0x8a, 0x83, 0xff, 0x39, 0x04, 0xa3, 0x73,
-  0x36, 0xd9, 0xaa, 0x63, 0x8e, 0xcb, 0xe6, 0xb1, 0x24, 0x33, 0x9c, 0x7e,
-  0xf5, 0x83, 0x72, 0xcb, 0x98, 0xf6, 0x4e, 0x56, 0xa8, 0xbf, 0xda, 0xb8,
-  0x05, 0xa3, 0x4e, 0x20, 0xaa, 0x32, 0x97, 0xd8, 0x64, 0xb6, 0x11, 0x51,
-  0xfc, 0xc6, 0x96, 0x8b, 0xbc, 0xc5, 0x52, 0x0f, 0x9e, 0xd3, 0x77, 0x5d,
-  0x47, 0x93, 0x24, 0xb5, 0x7e, 0xfe, 0x13, 0x7f, 0xcd, 0x3c, 0xd6, 0xfc,
-  0xd5, 0x5c, 0xad, 0x16, 0xe7, 0x66, 0x3f, 0x8b, 0xe6, 0xf3, 0x41, 0xc2,
-  0xc1, 0x01, 0x17, 0xb2, 0x9e, 0x6b, 0x74, 0xce, 0x5c, 0x03, 0x0e, 0xd4,
-  0xb0, 0xd8, 0x5a, 0x35, 0x1e, 0x9d, 0xa6, 0x71, 0x7b, 0x21, 0xb0, 0xc9,
-  0x80, 0x0d, 0xd9, 0x81, 0xa8, 0xf7, 0xce, 0x90, 0xe7, 0x4f, 0xaf, 0xff,
-  0xf6, 0xd3, 0xb3, 0xfd, 0x47, 0xe9, 0xd3, 0x74, 0xfa, 0xe4, 0xe2, 0xd3,
-  0xf4, 0xf1, 0xec, 0xf1, 0xd3, 0x67, 0x7b, 0x9f, 0x3e, 0x4e, 0x9f, 0x3e,
-  0xba, 0x48, 0x9f, 0xec, 0x66, 0xbb, 0xcf, 0x2e, 0xf6, 0xf6, 0x67, 0xb3,
-  0x8b, 0xec, 0xd3, 0xd9, 0xd3, 0x74, 0x30, 0x26, 0xdd, 0x4b, 0x87, 0x1e,
-  0xb2, 0x5a, 0xf5, 0xba, 0xa5, 0xc9, 0xe4, 0x9b, 0x17, 0xa3, 0xdd, 0xe4,
-  0x2a, 0xbb, 0xd5, 0x03, 0xd6, 0x8e, 0x07, 0x01, 0xba, 0x0c, 0x4d, 0xa7,
-  0x7f, 0xb2, 0x8a, 0xeb, 0x82, 0xe8, 0x7e, 0x18, 0x4a, 0x48, 0x02, 0xe6,
-  0x55, 0xd4, 0x65, 0xe5, 0x18, 0x50, 0x6b, 0x3c, 0x3c, 0x50, 0x83, 0x3d,
-  0xe6, 0xd5, 0x3d, 0xfc, 0xc7, 0xc8, 0x95, 0x7c, 0x9d, 0x4e, 0xaf, 0x28,
-  0x7d, 0x56, 0x1e, 0x9c, 0xb0, 0x77, 0x74, 0x98, 0xc8, 0x2f, 0x30, 0x11,
-  0x7b, 0x6d, 0x7c, 0x5d, 0x95, 0xab, 0xe5, 0x69, 0x39, 0xcf, 0xa7, 0x77,
-  0xeb, 0x9a, 0xf3, 0x1f, 0x6b, 0x7d, 0x71, 0xc4, 0x2c, 0x3c, 0xaf, 0xb3,
-  0x3f, 0x50, 0xaf, 0x72, 0xec, 0xf8, 0x5e, 0xc5, 0x6a, 0x34, 0xcd, 0x97,
-  0x57, 0x08, 0x4c, 0x78, 0x4e, 0xe1, 0xa8, 0x70, 0xca, 0xf0, 0x07, 0x71,
-  0x85, 0x6a, 0x22, 0xc7, 0xb1, 0x96, 0xcd, 0xd4, 0xb7, 0x45, 0xdc, 0xca,
-  0x35, 0x4f, 0x59, 0x0d, 0x54, 0x12, 0x02, 0x9d, 0x07, 0x16, 0x3c, 0xd7,
-  0x11, 0x1f, 0x75, 0x15, 0xb5, 0xd9, 0x6c, 0x21, 0x5f, 0x8d, 0x25, 0xdf,
-  0x75, 0xb5, 0x64, 0xdd, 0x82, 0x2c, 0xf9, 0xfc, 0x5d, 0xf7, 0x94, 0x61,
-  0xf0, 0x42, 0x2e, 0x9c, 0x2d, 0x6d, 0x96, 0xf3, 0xdd, 0xdb, 0xe3, 0x83,
-  0xee, 0x22, 0x25, 0x40, 0x7d, 0xa8, 0x0f, 0xb6, 0xb7, 0xc9, 0xd9, 0x53,
-  0x67, 0xdb, 0xb3, 0x72, 0x5a, 0x6f, 0xd7, 0xf5, 0x5c, 0x17, 0x82, 0x50,
-  0x58, 0x7e, 0x4f, 0x13, 0x6e, 0xb9, 0x20, 0x76, 0x95, 0xcd, 0x46, 0x75,
-  0x1d, 0x04, 0xb1, 0x21, 0x95, 0x8c, 0xa3, 0x64, 0x8e, 0x24, 0x70, 0x92,
-  0xee, 0xb7, 0x91, 0x59, 0x58, 0x64, 0x7f, 0xe9, 0xcb, 0xb4, 0xb2, 0xd6,
-  0x0f, 0x6e, 0x03, 0xc8, 0x86, 0x11, 0xf1, 0x2b, 0x15, 0x46, 0xfd, 0x57,
-  0xdf, 0x8a, 0x03, 0x31, 0xba, 0xac, 0x6c, 0xda, 0x32, 0xc1, 0x31, 0xac,
-  0x0d, 0x35, 0x7d, 0xd2, 0xb1, 0x7a, 0xd8, 0x49, 0xc4, 0x9d, 0xfe, 0x6a,
-  0xf9, 0x4a, 0x13, 0xf7, 0xa4, 0x33, 0x03, 0x75, 0x21, 0xc4, 0x5c, 0xdc,
-  0x48, 0xbd, 0x2e, 0xcf, 0x96, 0xa5, 0xbd, 0xb6, 0xa7, 0x10, 0xb9, 0xe3,
-  0xdc, 0x81, 0x9f, 0x93, 0x3e, 0x4e, 0xbe, 0xe1, 0x58, 0x92, 0xee, 0xfd,
-  0x2a, 0x88, 0x3f, 0xbd, 0x91, 0x99, 0x3d, 0xfb, 0xdc, 0x67, 0x65, 0x4b,
-  0x56, 0x85, 0xf3, 0x8e, 0x24, 0x21, 0x77, 0xd5, 0xbc, 0x76, 0xe7, 0x2b,
-  0xaa, 0x32, 0xce, 0xc7, 0x36, 0x92, 0x46, 0x55, 0x95, 0x9e, 0xe8, 0x3b,
-  0xfa, 0x96, 0x54, 0x50, 0x73, 0x87, 0xe6, 0x97, 0xea, 0x81, 0xef, 0x09,
-  0x1b, 0xc5, 0x05, 0xd7, 0x20, 0x1c, 0x5f, 0x51, 0xbd, 0x4a, 0xca, 0x67,
-  0x93, 0xa0, 0x29, 0x09, 0x2c, 0xe1, 0x28, 0x37, 0x31, 0x32, 0xb4, 0xb1,
-  0x76, 0x3c, 0xc8, 0x1d, 0xff, 0x71, 0x44, 0x07, 0xda, 0xc0, 0x20, 0x34,
-  0x2f, 0x46, 0x0e, 0x2f, 0x5e, 0x93, 0xd2, 0xf9, 0x73, 0x8e, 0xa6, 0xea,
-  0xea, 0x84, 0x14, 0x42, 0x6e, 0x25, 0xc3, 0x18, 0x32, 0x51, 0x77, 0x3e,
-  0x36, 0x99, 0x44, 0x96, 0x37, 0x27, 0xa4, 0xac, 0x94, 0x32, 0x55, 0x62,
-  0x02, 0x40, 0xe9, 0xf9, 0x71, 0xd1, 0x60, 0x78, 0x33, 0x36, 0x36, 0x12,
-  0x58, 0xa1, 0x25, 0x48, 0x6c, 0x30, 0xac, 0xca, 0x5c, 0x8e, 0xc8, 0xa1,
-  0x00, 0x22, 0xda, 0xbc, 0x74, 0x62, 0x98, 0x64, 0xe3, 0x22, 0x4e, 0x6a,
-  0x1c, 0x70, 0x77, 0x5c, 0x36, 0x7e, 0xd8, 0x7f, 0x2d, 0xb9, 0x0d, 0xfc,
-  0x19, 0x91, 0xdf, 0xb9, 0xba, 0xd1, 0x1d, 0xe3, 0xc3, 0xfe, 0xc5, 0x0c,
-  0x48, 0x92, 0x67, 0xc2, 0xd8, 0x34, 0x39, 0x21, 0x2f, 0x09, 0x4e, 0x0f,
-  0xe7, 0xcc, 0xa8, 0xf1, 0xbb, 0x2e, 0x25, 0x10, 0x19, 0x03, 0xc5, 0x38,
-  0x79, 0x8c, 0x5d, 0xca, 0xb2, 0x18, 0x3c, 0x2d, 0x95, 0x25, 0xad, 0x5d,
-  0xf6, 0x49, 0x1d, 0x3a, 0x34, 0xdd, 0x62, 0xc6, 0x74, 0xdc, 0x20, 0x8d,
-  0x87, 0x06, 0x52, 0x65, 0xda, 0x43, 0x51, 0x76, 0x07, 0xa5, 0xe3, 0x88,
-  0x85, 0x58, 0x6b, 0xb6, 0x8a, 0x37, 0x00, 0xcd, 0x5a, 0xb1, 0xbb, 0x1c,
-  0xd5, 0xfc, 0xd8, 0xe3, 0xa4, 0x8f, 0x24, 0x4e, 0x1b, 0x75, 0xdb, 0x48,
-  0x56, 0x09, 0x49, 0x03, 0xa5, 0xa1, 0x1f, 0x60, 0x4c, 0x9f, 0x6d, 0xc5,
-  0x4c, 0xc9, 0xae, 0x25, 0xa5, 0x28, 0x80, 0x4f, 0xcc, 0xcb, 0x5a, 0x5d,
-  0x34, 0x10, 0x41, 0x18, 0x2a, 0x49, 0x92, 0x98, 0xf1, 0x01, 0x6f, 0x4d,
-  0xa7, 0x39, 0x7e, 0x6a, 0xa8, 0xb1, 0xe0, 0x4e, 0x24, 0x11, 0x8d, 0xd6,
-  0xe1, 0x3b, 0x81, 0xd1, 0x58, 0x9d, 0xf3, 0x20, 0xf9, 0xe9, 0xa7, 0x61,
-  0x62, 0x54, 0xe9, 0x4e, 0x73, 0x3f, 0x35, 0xe6, 0x53, 0x43, 0x8b, 0x3f,
-  0x71, 0xfa, 0xdd, 0x4f, 0xd7, 0x50, 0x15, 0x61, 0x83, 0xae, 0xe7, 0x70,
-  0x30, 0xb1, 0x30, 0xde, 0xb6, 0xdd, 0x31, 0x8c, 0x15, 0x41, 0xd5, 0xc4,
-  0x83, 0x0e, 0xfb, 0x57, 0x94, 0x23, 0x8e, 0xb1, 0x83, 0xab, 0x45, 0x91,
-  0x88, 0x56, 0xc3, 0xe4, 0x4a, 0x9c, 0x80, 0xee, 0x91, 0x8d, 0x3f, 0x6d,
-  0x38, 0xd2, 0x1a, 0x46, 0x0c, 0x49, 0x55, 0xc6, 0x42, 0x02, 0x5d, 0x75,
-  0xb9, 0x77, 0xcd, 0x29, 0x04, 0x14, 0xa9, 0xa9, 0xec, 0x62, 0x0d, 0x6f,
-  0x94, 0x13, 0x98, 0xe7, 0x39, 0xe7, 0xb1, 0x74, 0x0a, 0x28, 0x72, 0x3f,
-  0x97, 0x57, 0x77, 0x35, 0x58, 0xba, 0x8c, 0x25, 0x38, 0x4d, 0xbd, 0x31,
-  0xf4, 0x7a, 0xe4, 0x49, 0x55, 0x33, 0x9c, 0xb0, 0xc5, 0x47, 0xcd, 0x60,
-  0x36, 0x46, 0x1b, 0xa4, 0x14, 0x90, 0xf3, 0x4c, 0x2c, 0x74, 0x55, 0x98,
-  0x2b, 0x62, 0xf3, 0x0f, 0x5c, 0x8c, 0x6d, 0xd0, 0x65, 0xcb, 0x78, 0x59,
-  0xb6, 0xe2, 0x7a, 0x1d, 0x4c, 0x19, 0x12, 0x94, 0xc3, 0xe1, 0x0f, 0x23,
-  0x66, 0x2a, 0xc9, 0x8b, 0xb4, 0xef, 0xe6, 0x8d, 0xe7, 0x4d, 0x1a, 0x8d,
-  0x08, 0x3a, 0x72, 0xc9, 0x70, 0x8f, 0x9c, 0x96, 0x4b, 0x49, 0x89, 0x00,
-  0x0f, 0xac, 0xe1, 0xe1, 0x08, 0xf8, 0xaf, 0x86, 0xbc, 0x36, 0x16, 0xf7,
-  0x10, 0x67, 0x1e, 0xc0, 0x83, 0x37, 0x85, 0x40, 0xc3, 0x4d, 0x4a, 0x32,
-  0xe7, 0x4c, 0x29, 0xf2, 0x81, 0x62, 0x6c, 0x24, 0x65, 0x32, 0xd4, 0x1d,
-  0x71, 0x0d, 0x06, 0xc2, 0x13, 0xc6, 0xf4, 0x19, 0x03, 0x67, 0x05, 0x22,
-  0xd4, 0xa0, 0xfb, 0xf0, 0xf7, 0x36, 0x4a, 0x82, 0x90, 0x95, 0xc4, 0x23,
-  0x64, 0xba, 0xdf, 0x94, 0xa8, 0xbb, 0xd1, 0x3f, 0x38, 0xf8, 0x8d, 0xd3,
-  0x15, 0x35, 0xfa, 0x7c, 0x2b, 0xe1, 0x10, 0xf8, 0x3a, 0x12, 0x07, 0xe0,
-  0x62, 0xb2, 0xbc, 0xb5, 0x75, 0x51, 0x4d, 0x39, 0xd9, 0xbb, 0xe9, 0x22,
-  0xe3, 0x8b, 0xcf, 0x7b, 0x3a, 0x70, 0xdc, 0xeb, 0xdb, 0xc8, 0xa7, 0x42,
-  0x7f, 0x62, 0xc3, 0xd6, 0x5b, 0xc4, 0x1e, 0xee, 0xe5, 0x9c, 0x70, 0x18,
-  0x35, 0x91, 0x8b, 0x64, 0xa9, 0x60, 0x61, 0x76, 0xb7, 0x28, 0xec, 0x96,
-  0xfc, 0x80, 0x88, 0xc9, 0xfa, 0xe6, 0xe4, 0xf5, 0x51, 0xdc, 0xae, 0x0a,
-  0x0e, 0x9f, 0x35, 0xdd, 0xf7, 0xf7, 0xdc, 0xfb, 0x3f, 0xbc, 0xfc, 0xfa,
-  0xfd, 0xe1, 0xc9, 0x9b, 0xaf, 0x5e, 0x7d, 0x7d, 0x6f, 0x2b, 0xc9, 0xa6,
-  0x8a, 0x68, 0xdd, 0x10, 0x8c, 0xf1, 0xd3, 0xfd, 0xf1, 0xce, 0x56, 0xb7,
-  0x97, 0x7d, 0xd7, 0xcb, 0xc7, 0x0e, 0xf0, 0xd1, 0x96, 0x21, 0xff, 0x62,
-  0x24, 0x31, 0x5c, 0x07, 0x24, 0xec, 0x5f, 0x66, 0xcd, 0xf2, 0x66, 0x95,
-  0xcf, 0x38, 0xd1, 0x42, 0x44, 0xa4, 0xab, 0x52, 0xa3, 0xac, 0x60, 0x59,
-  0xe8, 0x36, 0xf3, 0x78, 0x4b, 0x83, 0x2d, 0xb8, 0x89, 0x17, 0xa7, 0xa7,
-  0x2f, 0x5f, 0x9c, 0xbd, 0xe8, 0xe9, 0xf4, 0x49, 0xe7, 0xe9, 0xc1, 0xbb,
-  0xc9, 0xd1, 0xdb, 0xd3, 0xb7, 0x27, 0xc0, 0xc2, 0xd9, 0x99, 0xab, 0x7b,
-  0xf0, 0x65, 0xda, 0xa4, 0x83, 0x9e, 0x16, 0x9e, 0x6e, 0x81, 0xe9, 0x24,
-  0x1a, 0x7b, 0xa6, 0x7e, 0xce, 0x2a, 0x63, 0xfd, 0x3f, 0x19, 0x83, 0x3e,
-  0xab, 0xa9, 0x50, 0x42, 0xd1, 0x9a, 0xc1, 0x30, 0x34, 0x05, 0x33, 0x61,
-  0x12, 0x9d, 0x94, 0x8e, 0x4d, 0x69, 0x60, 0x99, 0x1a, 0x57, 0xe6, 0x46,
-  0xef, 0xce, 0xa6, 0xab, 0x46, 0xc9, 0x9a, 0x28, 0x08, 0x18, 0x5b, 0xdd,
-  0x6d, 0x42, 0x32, 0xdb, 0x88, 0x92, 0x28, 0x45, 0x9b, 0xc7, 0xdd, 0xa2,
-  0xbe, 0x15, 0x3e, 0xe4, 0x04, 0xf2, 0x66, 0xd6, 0x97, 0x02, 0xfd, 0xed,
-  0x68, 0xc5, 0x92, 0x13, 0x6a, 0xcb, 0xe4, 0x69, 0x21, 0xc8, 0x37, 0x1e,
-  0x52, 0xc0, 0xc3, 0xfe, 0x64, 0x4e, 0xdc, 0x28, 0x39, 0x92, 0x7c, 0x4d,
-  0x9a, 0xb6, 0xf9, 0x20, 0x78, 0xa8, 0xb1, 0x9a, 0x85, 0xb0, 0xf2, 0x38,
-  0x23, 0xf0, 0x90, 0x10, 0x07, 0x5d, 0xfd, 0x8e, 0xb3, 0xb2, 0xcd, 0x43,
-  0x18, 0x34, 0x96, 0x5c, 0xe0, 0x2d, 0xc3, 0x20, 0xa8, 0x51, 0x7a, 0x09,
-  0x0a, 0xfc, 0x0c, 0xd0, 0x2a, 0x48, 0x65, 0xc0, 0x5f, 0xdb, 0xbb, 0xe3,
-  0x9d, 0x41, 0x38, 0x78, 0x1c, 0x75, 0x41, 0x84, 0x10, 0x47, 0x1b, 0x18,
-  0x5d, 0x53, 0x96, 0xf7, 0x8e, 0x8f, 0x99, 0x94, 0x11, 0x46, 0x97, 0xa6,
-  0xfd, 0xe8, 0x50, 0x46, 0x27, 0xc1, 0x5d, 0x87, 0x48, 0xde, 0x4a, 0x39,
-  0x9e, 0x61, 0x78, 0x45, 0x49, 0x78, 0x12, 0x86, 0xe0, 0xe6, 0xf3, 0x16,
-  0xe8, 0xe8, 0x20, 0xbe, 0xcc, 0x05, 0x81, 0xfd, 0x66, 0xdd, 0xd5, 0x5e,
-  0x93, 0x2e, 0xe7, 0x0b, 0x73, 0x36, 0x00, 0x96, 0xd4, 0x4b, 0x4b, 0x05,
-  0xee, 0x73, 0xe1, 0x82, 0x11, 0x4c, 0xa7, 0xba, 0xad, 0xac, 0x91, 0x36,
-  0x3e, 0x42, 0x33, 0x10, 0x41, 0x9f, 0x33, 0xd0, 0x42, 0xa0, 0xe1, 0xbf,
-  0x4e, 0x6f, 0xf3, 0xc5, 0x6a, 0xc1, 0xa0, 0x0f, 0x6c, 0x9a, 0x91, 0x27,
-  0xf5, 0xd6, 0x83, 0xe9, 0x86, 0x23, 0x56, 0xb0, 0xa9, 0x1b, 0xb5, 0xa7,
-  0xe8, 0x47, 0x6e, 0x10, 0x73, 0xe3, 0xaa, 0x92, 0x2a, 0xf9, 0xae, 0x8b,
-  0xbc, 0xa9, 0x3b, 0x06, 0x02, 0x73, 0xf3, 0xa7, 0x08, 0x40, 0x00, 0xd4,
-  0x64, 0x6e, 0x7d, 0x68, 0x11, 0x86, 0xcd, 0x50, 0x76, 0x2a, 0xb1, 0x79,
-  0x01, 0xac, 0x59, 0x95, 0x97, 0x33, 0x7b, 0x6c, 0x20, 0x2d, 0xe6, 0xc5,
-  0xca, 0x2c, 0x34, 0xdb, 0x97, 0x1b, 0xfd, 0x26, 0x30, 0x1a, 0x52, 0x6a,
-  0xc8, 0x84, 0x12, 0x7e, 0x34, 0x24, 0xf5, 0xe9, 0x78, 0x7f, 0x0f, 0x90,
-  0x4b, 0xbe, 0x0e, 0x28, 0x88, 0x7f, 0xd0, 0x34, 0xf3, 0x85, 0x4d, 0x97,
-  0x1e, 0xff, 0x61, 0xb6, 0x1c, 0x8a, 0x10, 0x5f, 0xa4, 0xb7, 0xb4, 0x7d,
-  0xd1, 0x6d, 0x2d, 0x93, 0xe7, 0xdf, 0x9c, 0x4c, 0xce, 0x76, 0x0f, 0x4e,
-  0x4f, 0xde, 0x9a, 0x9f, 0xf8, 0x7d, 0x8f, 0x7e, 0xdf, 0x0b, 0x54, 0xc8,
-  0xaf, 0x24, 0xa2, 0x56, 0x13, 0xce, 0x5c, 0x66, 0xa3, 0x60, 0xd1, 0x79,
-  0x0d, 0x41, 0x08, 0x07, 0x17, 0xd4, 0xcd, 0x8a, 0x18, 0x98, 0xbd, 0xae,
-  0x34, 0xe8, 0x6e, 0x9c, 0x84, 0x81, 0x7d, 0x79, 0xa3, 0x72, 0x92, 0x80,
-  0x38, 0x28, 0x40, 0x44, 0x57, 0x3d, 0xe7, 0x34, 0x7c, 0x49, 0x31, 0x53,
-  0xc0, 0x71, 0x8a, 0x15, 0x6b, 0x7f, 0x35, 0x9d, 0x1b, 0x51, 0x3e, 0x43,
-  0x6c, 0xc9, 0x2c, 0x63, 0x9f, 0x0b, 0x3e, 0x89, 0x69, 0x21, 0x92, 0xc1,
-  0x56, 0x31, 0x1c, 0x58, 0x67, 0x64, 0x44, 0x95, 0xea, 0xea, 0x31, 0xe3,
-  0x49, 0x09, 0x92, 0x49, 0x32, 0xb3, 0x82, 0x8c, 0x01, 0x8a, 0x84, 0xf5,
-  0x2d, 0x5b, 0x0a, 0x67, 0xf7, 0xe6, 0xe4, 0x2c, 0x49, 0x2f, 0x2e, 0x38,
-  0x65, 0x39, 0x63, 0xf4, 0x4c, 0x88, 0xa3, 0xdb, 0x0c, 0xdb, 0x24, 0x1e,
-  0xba, 0x30, 0x94, 0x43, 0x24, 0x8e, 0xb3, 0xe3, 0xc9, 0x36, 0x0c, 0x5b,
-  0x1c, 0x14, 0x37, 0x79, 0xf3, 0x6a, 0xd8, 0x32, 0x5f, 0xfb, 0xa1, 0x30,
-  0x5b, 0x50, 0x73, 0x04, 0xfb, 0xb6, 0xbb, 0x76, 0xcb, 0xa5, 0xbd, 0x11,
-  0x2d, 0xac, 0xdd, 0x38, 0x19, 0xd0, 0x86, 0x0e, 0x58, 0x80, 0x1c, 0xd0,
-  0xbe, 0x0e, 0x2c, 0x20, 0x82, 0x6c, 0x3d, 0x50, 0x2b, 0xef, 0xc2, 0x64,
-  0x67, 0xb2, 0x5c, 0x00, 0xdb, 0x07, 0x52, 0xd0, 0x00, 0x3a, 0x08, 0x26,
-  0x46, 0x93, 0x1a, 0x48, 0xc3, 0x7b, 0xdc, 0x30, 0xb5, 0x6b, 0x7e, 0x47,
-  0xb3, 0x44, 0xb4, 0xe7, 0x59, 0x2c, 0xdc, 0x9f, 0xfa, 0x71, 0x4d, 0xdb,
-  0xb6, 0xcd, 0xc0, 0xc8, 0x53, 0xc1, 0x4f, 0x29, 0x71, 0x18, 0xee, 0x82,
-  0x60, 0x86, 0xfc, 0x12, 0xa1, 0x03, 0xdd, 0xf4, 0x47, 0x37, 0x90, 0xc0,
-  0x68, 0x65, 0x98, 0xb5, 0xf9, 0x76, 0xe0, 0xd9, 0x0d, 0x9a, 0x20, 0x60,
-  0x9f, 0xc2, 0x48, 0x2b, 0xd5, 0x56, 0x74, 0x40, 0xc0, 0x73, 0x69, 0x22,
-  0x42, 0x7a, 0xcd, 0xc1, 0x77, 0xb8, 0x75, 0xac, 0x53, 0x48, 0xd3, 0xd7,
-  0xf4, 0x20, 0x11, 0x48, 0xa9, 0x80, 0xbb, 0xf1, 0xd2, 0xb2, 0x27, 0xa9,
-  0xdb, 0x1c, 0xa3, 0x6b, 0xa7, 0x30, 0x6a, 0x71, 0x16, 0xc8, 0x60, 0x77,
-  0xef, 0xe9, 0x78, 0xc7, 0xfc, 0xcf, 0xec, 0x8b, 0x18, 0x25, 0x08, 0xce,
-  0xd7, 0x81, 0xb6, 0xda, 0x27, 0xb3, 0xdb, 0x2e, 0x49, 0xf2, 0x05, 0x54,
-  0x56, 0x97, 0x83, 0xf1, 0x83, 0x2f, 0x15, 0x6c, 0xa4, 0xbd, 0x50, 0xd2,
-  0x99, 0x7c, 0xa2, 0x67, 0xbc, 0x5a, 0xcd, 0x23, 0x61, 0x7e, 0x9e, 0x65,
-  0x19, 0x79, 0x53, 0xf3, 0x6b, 0x16, 0xba, 0x47, 0xdf, 0x80, 0x37, 0x71,
-  0xda, 0xd6, 0xb8, 0x15, 0x24, 0xf5, 0xac, 0x65, 0x2e, 0x3c, 0x14, 0x95,
-  0x8c, 0x18, 0xf3, 0xc8, 0x9c, 0x86, 0xe7, 0xe5, 0xc5, 0x85, 0x91, 0xd6,
-  0xba, 0x17, 0xd0, 0xa1, 0x3c, 0xb2, 0xfd, 0x56, 0x50, 0xe9, 0x6d, 0xfe,
-  0x4d, 0x1b, 0x31, 0x35, 0x49, 0x9b, 0x36, 0xd7, 0xe2, 0xe6, 0xc6, 0xb1,
-  0x24, 0xb6, 0xd6, 0x13, 0x1c, 0x5e, 0xc0, 0xc4, 0x48, 0xd0, 0x0e, 0x01,
-  0x54, 0x91, 0x9f, 0x41, 0xde, 0x3d, 0x12, 0x1f, 0xf2, 0xe5, 0x12, 0x2a,
-  0x0c, 0x81, 0x50, 0x5b, 0x74, 0x34, 0xb4, 0x46, 0x8e, 0x5d, 0x46, 0x4a,
-  0x94, 0xd8, 0x41, 0xca, 0x2d, 0x53, 0x03, 0xdd, 0x79, 0x76, 0x11, 0xfa,
-  0x85, 0x38, 0xc8, 0xd1, 0x07, 0x65, 0x12, 0x30, 0x99, 0x19, 0xe0, 0x97,
-  0x8a, 0x94, 0x79, 0x0c, 0x2e, 0x16, 0x87, 0x57, 0x22, 0x09, 0xac, 0x31,
-  0xc5, 0xdc, 0xe5, 0x18, 0x5a, 0xa3, 0xdb, 0xe4, 0xd5, 0xff, 0x3c, 0x72,
-  0x10, 0xb1, 0x16, 0x83, 0x95, 0xd3, 0x5f, 0x62, 0xc9, 0x44, 0xc9, 0x60,
-  0x74, 0x98, 0x8c, 0x08, 0xc6, 0xce, 0x8b, 0x3d, 0x29, 0x3b, 0x26, 0x57,
-  0x12, 0xf5, 0x21, 0x47, 0x30, 0xb8, 0xd6, 0x36, 0x50, 0x2b, 0xc2, 0xab,
-  0x41, 0x0a, 0x0b, 0x08, 0xa6, 0x91, 0xe6, 0x19, 0xe2, 0x88, 0x34, 0x92,
-  0xfe, 0xe9, 0x67, 0xa1, 0xb0, 0xb4, 0xb8, 0x9d, 0x17, 0x90, 0x19, 0x49,
-  0x80, 0x09, 0x52, 0x34, 0x34, 0x97, 0x9b, 0xe1, 0x7a, 0x56, 0xcd, 0x1f,
-  0xe8, 0x4e, 0xa9, 0x08, 0xce, 0x15, 0x50, 0xe3, 0x1e, 0x51, 0x4f, 0x99,
-  0xa8, 0x51, 0x5f, 0x61, 0xf4, 0x77, 0xa3, 0x41, 0x3f, 0x57, 0x2b, 0x44,
-  0x0f, 0xaa, 0x85, 0x35, 0x58, 0x94, 0xe2, 0x3a, 0x21, 0xda, 0xb0, 0xc8,
-  0x4a, 0xba, 0xd6, 0x6c, 0x1d, 0xa1, 0x20, 0x49, 0x29, 0xde, 0xd0, 0x3d,
-  0xf3, 0x17, 0x8d, 0xe0, 0x09, 0x39, 0x08, 0x03, 0x97, 0x02, 0x3c, 0x86,
-  0xef, 0xca, 0x62, 0xe2, 0xa6, 0x24, 0x10, 0x51, 0x2b, 0x02, 0xf6, 0x1d,
-  0xdc, 0xb9, 0x79, 0x31, 0x62, 0x70, 0x00, 0x79, 0x90, 0xdc, 0x6b, 0x00,
-  0xd5, 0x16, 0x6a, 0xe4, 0xfd, 0x61, 0x3d, 0xbb, 0xd1, 0xfc, 0x40, 0xce,
-  0xb3, 0x45, 0x9f, 0x51, 0xe8, 0x49, 0x09, 0x4d, 0x30, 0xfa, 0x95, 0xed,
-  0x9d, 0x2c, 0x62, 0x1f, 0x8c, 0xfc, 0x5c, 0x0c, 0xf1, 0x39, 0xa5, 0x54,
-  0xeb, 0xea, 0x63, 0xb0, 0x4d, 0x56, 0xc4, 0xf2, 0xba, 0x5a, 0x26, 0x68,
-  0x79, 0xce, 0xb3, 0x92, 0xbc, 0xc9, 0x1a, 0x89, 0x25, 0xe1, 0xb1, 0x8b,
-  0xa3, 0x5b, 0xd2, 0xbd, 0xcc, 0x20, 0x42, 0xfc, 0x49, 0xd2, 0x9b, 0x5b,
-  0x68, 0x13, 0xe2, 0xd6, 0x65, 0x04, 0x63, 0x18, 0x3e, 0x87, 0xe6, 0x1c,
-  0x0c, 0xd4, 0x08, 0xcb, 0xc3, 0x8f, 0x73, 0x04, 0x1d, 0x90, 0x03, 0x1a,
-  0x8e, 0x72, 0xe1, 0x08, 0x40, 0x8a, 0x24, 0x3d, 0x01, 0xb9, 0x8e, 0xe2,
-  0xb7, 0x18, 0x11, 0x9f, 0xe6, 0xa0, 0xa1, 0x2c, 0xb1, 0x2c, 0x43, 0x2f,
-  0x39, 0x1a, 0x51, 0x35, 0xd5, 0xcc, 0xc2, 0x14, 0xc8, 0x40, 0x0d, 0x17,
-  0x16, 0xbd, 0xe8, 0x26, 0x25, 0x52, 0xb3, 0x5d, 0xc4, 0x72, 0x21, 0xbc,
-  0x90, 0xc8, 0xd1, 0xb9, 0x23, 0x67, 0x87, 0xfe, 0x14, 0x8d, 0x5c, 0x92,
-  0x87, 0x40, 0xf3, 0xe6, 0x62, 0xd9, 0x68, 0xbc, 0x2c, 0x69, 0x02, 0x54,
-  0xb2, 0x8b, 0xc2, 0x4b, 0x78, 0x73, 0x55, 0xce, 0x59, 0x2d, 0xee, 0x6a,
-  0x88, 0x36, 0x6d, 0xdd, 0x88, 0x56, 0x68, 0x07, 0x71, 0xbe, 0x64, 0x5b,
-  0xbe, 0xa6, 0x10, 0xe2, 0x96, 0xa3, 0xc4, 0x08, 0x78, 0x19, 0x70, 0x8e,
-  0xc7, 0x9a, 0xf1, 0x7f, 0x3d, 0x0c, 0xc2, 0xda, 0xcd, 0x39, 0x3f, 0x2f,
-  0x6b, 0xa1, 0x17, 0x64, 0x87, 0x1b, 0x12, 0x4b, 0x2b, 0x62, 0xcb, 0x82,
-  0xed, 0xa6, 0x25, 0x1e, 0xac, 0x4c, 0x26, 0xfc, 0x09, 0x82, 0x60, 0x90,
-  0x5d, 0x0b, 0x48, 0x05, 0x43, 0x26, 0x46, 0x00, 0x80, 0x4d, 0x96, 0x68,
-  0x87, 0x1a, 0x65, 0xec, 0xb6, 0xab, 0xdc, 0xc3, 0x5d, 0x30, 0xa7, 0xf0,
-  0x0a, 0x77, 0x7a, 0xde, 0xac, 0xd2, 0xbe, 0xa5, 0x6b, 0xc7, 0x3b, 0xde,
-  0xcb, 0x9e, 0x9c, 0xf8, 0xd2, 0x87, 0x39, 0xd2, 0xe3, 0x60, 0xf4, 0x37,
-  0xf2, 0x39, 0xce, 0xd9, 0xff, 0xba, 0x87, 0x31, 0x9d, 0xa6, 0xe2, 0x3c,
-  0xf3, 0x11, 0xcd, 0x28, 0x47, 0x57, 0xee, 0x13, 0xcd, 0x84, 0xe3, 0x36,
-  0xf5, 0xba, 0x7f, 0x15, 0xf1, 0xfd, 0xb3, 0xab, 0xce, 0x8c, 0x67, 0x7e,
-  0xe7, 0x5a, 0xf4, 0x72, 0x68, 0x2d, 0x3e, 0xb7, 0x43, 0x33, 0xb7, 0x5d,
-  0x74, 0x03, 0x99, 0x06, 0x13, 0x23, 0x82, 0x73, 0x9f, 0x07, 0x83, 0x44,
-  0x6b, 0x5b, 0xf0, 0xa5, 0x4e, 0xed, 0x6a, 0x06, 0x17, 0x49, 0x5b, 0xa4,
-  0xad, 0x8a, 0x00, 0xc9, 0xe7, 0xbf, 0xdb, 0x1c, 0x6a, 0x29, 0xed, 0x7e,
-  0xf6, 0xdd, 0x8b, 0xe3, 0x77, 0x47, 0xbb, 0x7f, 0x4d, 0xf0, 0xd7, 0x1e,
-  0xff, 0xb5, 0x37, 0x88, 0x6e, 0x97, 0xe1, 0x52, 0x1b, 0x9f, 0x6d, 0x24,
-  0xf5, 0xdd, 0xe2, 0xbc, 0x9c, 0xdb, 0xed, 0x92, 0xb5, 0x50, 0xb7, 0xd9,
-  0x50, 0xae, 0x71, 0xcd, 0x38, 0x12, 0x2b, 0x78, 0x97, 0x65, 0xd7, 0x12,
-  0x87, 0xa8, 0xec, 0x86, 0xdc, 0x75, 0x7e, 0x6e, 0x71, 0x43, 0x80, 0x01,
-  0xca, 0xc5, 0xc4, 0x71, 0xd7, 0x17, 0x1b, 0x4a, 0x97, 0x92, 0x1e, 0xec,
-  0xda, 0x3f, 0x93, 0xc2, 0x3a, 0xf8, 0x7e, 0x21, 0xfa, 0x70, 0xd8, 0x30,
-  0xc2, 0x30, 0xf2, 0x88, 0x93, 0x72, 0xc1, 0x08, 0x9f, 0x52, 0x2a, 0x88,
-  0xdf, 0x96, 0x40, 0x4b, 0x80, 0xc9, 0xdc, 0x09, 0x84, 0xc6, 0x46, 0x95,
-  0x59, 0xde, 0x4b, 0x73, 0xa6, 0x77, 0xbb, 0xcd, 0x9d, 0x8b, 0xec, 0xa2,
-  0x81, 0x93, 0xb4, 0x27, 0xa3, 0x63, 0x82, 0xf8, 0xd0, 0xa0, 0x0d, 0x77,
-  0x0c, 0x00, 0xff, 0x5d, 0xb6, 0x2a, 0xe6, 0x74, 0x79, 0x94, 0x82, 0xa6,
-  0xb6, 0xdc, 0x7f, 0x6c, 0x4e, 0x0e, 0x91, 0x83, 0x18, 0xc4, 0xc8, 0xac,
-  0x0d, 0x05, 0xa0, 0x24, 0x8b, 0x20, 0x60, 0xab, 0x30, 0xb2, 0xe4, 0xa6,
-  0x61, 0xef, 0x5b, 0xbe, 0x53, 0x56, 0x77, 0x8f, 0xb6, 0xc5, 0x73, 0x23,
-  0xd7, 0xeb, 0xbc, 0x01, 0x67, 0xd6, 0x63, 0xc0, 0x91, 0xd6, 0xa5, 0x37,
-  0x14, 0xeb, 0x91, 0xf5, 0xef, 0x5e, 0x21, 0x57, 0x44, 0x75, 0xce, 0xd3,
-  0xc0, 0x64, 0x4b, 0x07, 0x4e, 0x10, 0x10, 0x92, 0x4d, 0x47, 0xfb, 0xa6,
-  0xf7, 0xbb, 0x79, 0xb6, 0xa5, 0xba, 0x81, 0xbd, 0xf2, 0xb6, 0x5f, 0x97,
-  0xbf, 0x98, 0xb1, 0xa7, 0x7a, 0x6f, 0xc4, 0x2e, 0x4e, 0xb9, 0x08, 0xa3,
-  0xe0, 0x0e, 0x7c, 0x55, 0x3a, 0x2e, 0xc3, 0xd9, 0xe3, 0x3e, 0xf3, 0x68,
-  0x29, 0xc8, 0x54, 0xfb, 0x87, 0x50, 0xdc, 0xdf, 0x94, 0x01, 0xfd, 0xb4,
-  0xee, 0x48, 0xff, 0x56, 0xd4, 0x05, 0x31, 0xd4, 0x5c, 0x4a, 0xdc, 0x8e,
-  0x25, 0x33, 0x8e, 0x4e, 0x0b, 0x05, 0xd9, 0x40, 0xb0, 0xea, 0xbf, 0x8d,
-  0x7c, 0xa8, 0x36, 0x6f, 0xc5, 0xfc, 0x5d, 0x61, 0xb4, 0x5b, 0x17, 0xbe,
-  0x0e, 0xb2, 0x60, 0xf8, 0xb0, 0xde, 0xc0, 0x40, 0x3b, 0x7b, 0xce, 0xf7,
-  0x2c, 0x1a, 0x41, 0x85, 0x21, 0x86, 0xc6, 0xc8, 0x63, 0x8c, 0x85, 0x54,
-  0x30, 0xd8, 0x17, 0x69, 0x86, 0x81, 0xee, 0x51, 0x12, 0x00, 0x1b, 0x63,
-  0x2f, 0x72, 0xde, 0x38, 0x49, 0x1e, 0xb6, 0x7b, 0x1c, 0x1f, 0x6f, 0xcc,
-  0x24, 0x1b, 0x6c, 0x32, 0x1e, 0x50, 0xe4, 0xe2, 0x17, 0x32, 0x05, 0x72,
-  0x08, 0x14, 0xc2, 0xf3, 0x11, 0x37, 0x52, 0x13, 0x5d, 0x70, 0x62, 0x28,
-  0x2a, 0xc3, 0x1c, 0xd8, 0xe5, 0x70, 0xa2, 0x11, 0x56, 0x22, 0xc0, 0x52,
-  0x48, 0x9b, 0xf1, 0xaf, 0xb3, 0x42, 0xc6, 0xd4, 0x86, 0xaa, 0xe6, 0x82,
-  0x19, 0x54, 0x72, 0xc4, 0x46, 0x5f, 0x9f, 0x1b, 0x39, 0x24, 0x72, 0x0a,
-  0x52, 0xe7, 0xb3, 0x21, 0x21, 0xb5, 0x6b, 0x15, 0x59, 0xce, 0x04, 0xd8,
-  0x9f, 0xdf, 0xa1, 0xab, 0xd7, 0xc3, 0x04, 0xad, 0x4b, 0x61, 0x41, 0xd4,
-  0x3c, 0xe8, 0xd5, 0x11, 0x6c, 0x0c, 0x3a, 0xa8, 0x4b, 0x4c, 0xbe, 0xc9,
-  0xbe, 0x25, 0x97, 0x89, 0x9c, 0xe6, 0x13, 0x9a, 0x79, 0x91, 0xd8, 0xf9,
-  0x68, 0x96, 0x07, 0x91, 0x24, 0x2d, 0x0c, 0x1b, 0xc3, 0x2e, 0xfe, 0xae,
-  0x48, 0x1d, 0x0e, 0x4f, 0xb3, 0x55, 0x14, 0x42, 0x1c, 0x79, 0x96, 0xe7,
-  0x74, 0xcf, 0x10, 0x75, 0x24, 0x96, 0x27, 0xe4, 0x1c, 0xa6, 0x84, 0x6c,
-  0x0e, 0x43, 0x81, 0x4b, 0xd2, 0xbc, 0xca, 0xcd, 0x2e, 0x57, 0xd3, 0x2b,
-  0xca, 0x55, 0x27, 0xcb, 0x44, 0xa6, 0xe6, 0xb6, 0x40, 0xb4, 0x62, 0xee,
-  0xca, 0xcd, 0x8a, 0x94, 0xa3, 0x0d, 0x61, 0x59, 0x71, 0x77, 0x99, 0x27,
-  0xf4, 0xdc, 0x77, 0xc7, 0x1b, 0x6d, 0x0e, 0x82, 0x3b, 0x6c, 0xaf, 0x97,
-  0x49, 0x36, 0xaf, 0x1d, 0xef, 0xb5, 0x73, 0x74, 0x4c, 0x98, 0x94, 0x3b,
-  0x12, 0xff, 0x7b, 0xd3, 0xed, 0x39, 0x7b, 0xfe, 0x22, 0x18, 0x18, 0xa0,
-  0x97, 0x78, 0x6c, 0xd0, 0x5e, 0x40, 0x3e, 0x77, 0x0a, 0xca, 0x53, 0x94,
-  0xbd, 0xcd, 0xf9, 0xec, 0x47, 0x01, 0x7b, 0xba, 0x84, 0x7a, 0x28, 0x22,
-  0x2a, 0x36, 0x93, 0xb4, 0x91, 0x85, 0xe1, 0xb5, 0x3c, 0xfd, 0x05, 0xcc,
-  0x88, 0x3b, 0x4f, 0x1f, 0xef, 0xe0, 0x8e, 0x01, 0x4a, 0x21, 0x33, 0x5d,
-  0x9e, 0x91, 0x78, 0x66, 0x22, 0x07, 0x5c, 0x36, 0x4d, 0x50, 0x85, 0xfc,
-  0x59, 0xdc, 0xb8, 0xe2, 0x4f, 0xd0, 0xcb, 0x91, 0x1d, 0x4c, 0xd5, 0x0f,
-  0xe1, 0xcc, 0x31, 0x0b, 0x76, 0xd1, 0x04, 0x41, 0xa7, 0x1e, 0xa5, 0x45,
-  0x08, 0x10, 0x03, 0x19, 0xd1, 0x28, 0x9f, 0xe3, 0x67, 0x20, 0xc8, 0x11,
-  0xc2, 0x10, 0x42, 0xc7, 0xe0, 0x19, 0xdb, 0x6a, 0x7b, 0x5e, 0xd5, 0xbe,
-  0x29, 0xa3, 0xe5, 0x34, 0x0a, 0xad, 0xf5, 0x10, 0x4d, 0x10, 0xf5, 0x02,
-  0xb3, 0x22, 0x45, 0x1d, 0x3b, 0xd6, 0x71, 0x78, 0x03, 0x58, 0x06, 0x91,
-  0x84, 0xf6, 0xc0, 0x12, 0x00, 0xb6, 0xc7, 0x32, 0xc5, 0x06, 0x06, 0xbf,
-  0xc1, 0x48, 0xed, 0x8d, 0xde, 0xe7, 0xaa, 0x5a, 0x32, 0x3c, 0x10, 0x3e,
-  0x34, 0x7c, 0x66, 0x68, 0xef, 0xe4, 0xf2, 0x22, 0x62, 0x4a, 0x54, 0xbf,
-  0xee, 0xce, 0x93, 0x47, 0x8f, 0xd6, 0x32, 0xb2, 0x86, 0x14, 0x26, 0x84,
-  0xc0, 0x4d, 0x81, 0x98, 0x2f, 0xd6, 0x1e, 0xc8, 0x63, 0x22, 0xc0, 0xfd,
-  0x91, 0x41, 0x99, 0xd8, 0x76, 0x7f, 0x9f, 0xd7, 0x01, 0xea, 0x4c, 0xab,
-  0xf9, 0x85, 0x60, 0x66, 0xbd, 0x86, 0x90, 0x0e, 0xdb, 0xd8, 0x35, 0xf2,
-  0x93, 0x92, 0xe3, 0xaf, 0xd8, 0x6a, 0x7f, 0xf8, 0x16, 0xbf, 0x41, 0x08,
-  0x63, 0xab, 0x10, 0x25, 0x18, 0x53, 0x55, 0x49, 0x0e, 0xfe, 0x7d, 0xfd,
-  0x5d, 0x37, 0xbf, 0x74, 0xf3, 0x64, 0xb2, 0xbd, 0xff, 0x6c, 0x67, 0x2b,
-  0x12, 0x8f, 0x0d, 0x38, 0xf7, 0xd4, 0xb3, 0xdf, 0xed, 0xf8, 0xde, 0x63,
-  0x1e, 0x0d, 0xb6, 0x69, 0x0d, 0x32, 0x8c, 0x96, 0xf1, 0x12, 0xfe, 0xce,
-  0xc4, 0xef, 0x25, 0xa2, 0x49, 0x4c, 0xb8, 0x9f, 0x25, 0xfb, 0x36, 0x43,
-  0xc1, 0x9f, 0x28, 0xf0, 0xc4, 0x71, 0x4e, 0x69, 0x53, 0x29, 0x03, 0xb1,
-  0xe9, 0xd5, 0x8d, 0x34, 0xf4, 0x76, 0xbc, 0x33, 0x3d, 0x92, 0x72, 0x51,
-  0x9b, 0xf3, 0x2c, 0xe6, 0x36, 0xaa, 0x81, 0x60, 0x45, 0xc1, 0x87, 0x14,
-  0x80, 0xf0, 0xbb, 0xef, 0xb7, 0xb7, 0xa7, 0xbb, 0xcf, 0xc6, 0x4f, 0x5b,
-  0x7b, 0xba, 0xaa, 0x50, 0x71, 0xe9, 0xb9, 0x8d, 0x76, 0xa4, 0xa8, 0xd5,
-  0xf8, 0x72, 0x4a, 0xe6, 0xa2, 0xb8, 0xc3, 0x48, 0x9e, 0x64, 0x43, 0xb3,
-  0xf3, 0x81, 0x70, 0x6b, 0xa2, 0xc3, 0x0b, 0x1e, 0xfc, 0x64, 0x72, 0x1c,
-  0x9c, 0x3e, 0x8e, 0x8c, 0xb7, 0xee, 0x0d, 0xf2, 0xf6, 0xa7, 0x53, 0x28,
-  0x03, 0x24, 0x6c, 0x94, 0x54, 0xd1, 0xf2, 0xd3, 0x47, 0x7b, 0x7b, 0xc3,
-  0xe4, 0xf1, 0x78, 0xd7, 0x4f, 0xf3, 0x37, 0x84, 0x1b, 0x00, 0x13, 0x49,
-  0x9c, 0xa6, 0x67, 0xe8, 0x76, 0x39, 0xac, 0x14, 0x9b, 0x62, 0x11, 0x00,
-  0xa2, 0x49, 0xff, 0x5d, 0xad, 0xec, 0x87, 0xbd, 0xc7, 0x8f, 0x77, 0x9f,
-  0x1d, 0x9c, 0x8e, 0x1e, 0xef, 0xed, 0x22, 0xf9, 0x9f, 0x71, 0xe5, 0x6d,
-  0xc8, 0x96, 0x9f, 0xba, 0x93, 0xe4, 0x33, 0x46, 0x53, 0x9a, 0x13, 0xd2,
-  0x61, 0x4c, 0x76, 0x1c, 0x94, 0xcb, 0xac, 0xa8, 0x6b, 0xa3, 0x89, 0xbf,
-  0xe7, 0x2c, 0xc0, 0xed, 0xfa, 0x3d, 0x6b, 0x98, 0x03, 0xc9, 0xd7, 0xcf,
-  0x23, 0x22, 0x8c, 0xdd, 0x19, 0xe5, 0x66, 0x86, 0x4e, 0x35, 0xd1, 0x48,
-  0xeb, 0x95, 0xae, 0xcb, 0xc1, 0x8f, 0xc5, 0xd2, 0xa9, 0x12, 0x02, 0xc2,
-  0xd9, 0x3c, 0x3a, 0xdc, 0xe2, 0xed, 0xd2, 0x5d, 0x94, 0x02, 0xa8, 0x1e,
-  0x70, 0x20, 0x62, 0x7c, 0x90, 0x45, 0x11, 0x72, 0xe3, 0xbc, 0x20, 0x15,
-  0x08, 0xfe, 0x0a, 0x98, 0x09, 0x65, 0x5a, 0xac, 0x36, 0x2b, 0x36, 0x54,
-  0xbb, 0x94, 0xcb, 0x3a, 0x9b, 0x83, 0x00, 0x01, 0x51, 0xcf, 0xca, 0x45,
-  0x95, 0x94, 0x28, 0x86, 0x9a, 0xd3, 0x69, 0x50, 0xf5, 0x2a, 0x34, 0xd7,
-  0xd0, 0xd2, 0x76, 0x52, 0xf8, 0xd7, 0xa2, 0x84, 0x75, 0x00, 0x6a, 0xa1,
-  0xb6, 0x8f, 0xd2, 0x7a, 0x9a, 0xe7, 0x6c, 0x99, 0xe8, 0x31, 0x48, 0x68,
-  0x58, 0x33, 0xa1, 0x99, 0x12, 0x46, 0x42, 0x9e, 0x72, 0xd0, 0x85, 0x43,
-  0xcc, 0x0e, 0x9a, 0x85, 0xda, 0x69, 0x6e, 0xd7, 0x7b, 0xdb, 0x45, 0x1d,
-  0x96, 0x9a, 0x0d, 0x08, 0x56, 0x51, 0xac, 0xbb, 0x7a, 0x10, 0x44, 0x17,
-  0x41, 0xcf, 0x8c, 0x00, 0xaf, 0x49, 0x29, 0x25, 0x4a, 0xe5, 0xae, 0x4b,
-  0x30, 0x8a, 0xe8, 0xda, 0x53, 0x66, 0x8e, 0xe0, 0xa4, 0x5b, 0x63, 0x88,
-  0x15, 0xb7, 0x24, 0x92, 0xef, 0x8b, 0xa1, 0xe6, 0xdd, 0x37, 0x9e, 0x82,
-  0x98, 0x46, 0xb4, 0x39, 0x2e, 0x63, 0x48, 0xd1, 0x2e, 0x89, 0xcc, 0x43,
-  0x13, 0xce, 0x6c, 0x14, 0x97, 0xd6, 0xf2, 0x24, 0x01, 0x11, 0x8b, 0x25,
-  0xab, 0x13, 0x41, 0x3b, 0x44, 0x21, 0x87, 0x5b, 0x42, 0x91, 0x16, 0x63,
-  0x58, 0x91, 0xdd, 0x40, 0x10, 0xae, 0xa5, 0x6e, 0x5b, 0x55, 0xe5, 0xb0,
-  0x02, 0x57, 0x59, 0xb3, 0xaa, 0x24, 0xc9, 0x02, 0x61, 0xd6, 0xa0, 0xbb,
-  0x59, 0x04, 0xb5, 0x61, 0x4a, 0xd7, 0x53, 0x6d, 0x13, 0x32, 0x58, 0x37,
-  0x02, 0xda, 0x69, 0xb0, 0x36, 0x54, 0x89, 0xd1, 0xc3, 0x3e, 0x6f, 0xda,
-  0x81, 0x5a, 0x50, 0xbc, 0x39, 0x93, 0x8c, 0xc1, 0x36, 0xa5, 0x2c, 0x82,
-  0xa2, 0x31, 0x04, 0xb2, 0xae, 0xe7, 0xf8, 0xdc, 0xbe, 0x1d, 0xdd, 0xdc,
-  0xdc, 0x8c, 0x70, 0xe3, 0x20, 0x7c, 0x4e, 0x72, 0xa8, 0xc6, 0x49, 0x27,
-  0x51, 0xca, 0xb7, 0x75, 0x85, 0x9e, 0x4a, 0x2f, 0x8e, 0xb1, 0x3a, 0xcf,
-  0x1b, 0x4a, 0xd6, 0x15, 0xe2, 0xa2, 0x97, 0x24, 0x69, 0x56, 0xc6, 0x43,
-  0x6a, 0xa3, 0x9a, 0x94, 0x23, 0xd7, 0x8f, 0x9b, 0x0d, 0x21, 0xcb, 0x4d,
-  0x9b, 0x0c, 0xd0, 0x14, 0xa8, 0x48, 0x73, 0x90, 0x8c, 0xbe, 0x49, 0x06,
-  0x87, 0x32, 0xe1, 0x33, 0xf3, 0xc8, 0x41, 0x6b, 0x2e, 0xfc, 0x6c, 0xb4,
-  0x98, 0xcd, 0xe0, 0x57, 0xde, 0x62, 0x6a, 0xec, 0xe4, 0x82, 0x9e, 0x36,
-  0x7a, 0xb5, 0x89, 0x98, 0xdd, 0x11, 0x2b, 0xca, 0x36, 0x6a, 0x06, 0xe1,
-  0xa4, 0xa9, 0xa7, 0xb5, 0x54, 0x45, 0x3e, 0x67, 0xca, 0x5b, 0x73, 0x1c,
-  0xab, 0xf4, 0x66, 0xed, 0x59, 0x14, 0xf8, 0x06, 0xef, 0x34, 0xba, 0x52,
-  0x76, 0x88, 0xe2, 0x74, 0xe4, 0x41, 0xc5, 0xc8, 0x5c, 0xf0, 0x74, 0x58,
-  0x39, 0x0b, 0x15, 0x47, 0x5d, 0xa6, 0x24, 0xcb, 0x90, 0x22, 0xbe, 0x7e,
-  0xb1, 0x26, 0xc9, 0xd4, 0x09, 0x66, 0x6e, 0x16, 0x2d, 0x1f, 0x66, 0x8c,
-  0x79, 0x59, 0xaa, 0xfa, 0x18, 0x46, 0x33, 0xf4, 0xa2, 0x2c, 0x39, 0x1c,
-  0x9a, 0x2c, 0xf4, 0xde, 0x1c, 0x15, 0x87, 0x3d, 0x76, 0x93, 0x30, 0x0e,
-  0x3d, 0x4e, 0xaa, 0x42, 0x0f, 0x8a, 0xf1, 0x39, 0xab, 0x40, 0xe8, 0x94,
-  0xe5, 0x32, 0xd2, 0x72, 0x7a, 0xa1, 0x30, 0xcc, 0x71, 0xaa, 0xc9, 0xe1,
-  0xd7, 0xaf, 0x28, 0x69, 0xc3, 0xb0, 0xd2, 0x42, 0x2f, 0x00, 0x9e, 0x02,
-  0x57, 0xa0, 0xb6, 0xbc, 0xe7, 0x32, 0x77, 0xf9, 0x7b, 0x21, 0x14, 0x37,
-  0x53, 0x8d, 0x26, 0xe3, 0xd9, 0x50, 0x73, 0x4e, 0xcc, 0xb0, 0x15, 0x01,
-  0x55, 0x46, 0x49, 0x5d, 0x06, 0x50, 0x7c, 0xbd, 0xa8, 0x6b, 0x85, 0x11,
-  0x4a, 0x6b, 0xd5, 0x54, 0x70, 0xd7, 0x06, 0x39, 0x22, 0x8e, 0x60, 0xb9,
-  0x9c, 0x77, 0x16, 0x86, 0xa7, 0x4a, 0xff, 0xdd, 0x8c, 0x1f, 0x1f, 0x2f,
-  0xa4, 0x63, 0x14, 0xb5, 0x6b, 0x97, 0xb5, 0x4a, 0x1a, 0x52, 0xa6, 0x25,
-  0x9b, 0xc5, 0xd3, 0x9e, 0xe6, 0x30, 0xb1, 0x7f, 0x93, 0x80, 0x72, 0xc3,
-  0x2d, 0x49, 0xf0, 0xd6, 0x54, 0xe8, 0x56, 0x75, 0x44, 0x85, 0x96, 0xd5,
-  0x38, 0xf6, 0x78, 0x73, 0x54, 0x23, 0xf9, 0x33, 0xae, 0xec, 0xf7, 0x45,
-  0x22, 0x56, 0x67, 0x64, 0xbc, 0xf8, 0x2e, 0x69, 0x62, 0x36, 0x34, 0x78,
-  0x4e, 0x31, 0xc5, 0x32, 0xc4, 0x9b, 0xe3, 0x68, 0x05, 0x6f, 0xf5, 0x98,
-  0xe4, 0xa6, 0x29, 0x34, 0x73, 0x2a, 0xe9, 0xfe, 0x2f, 0xdd, 0xc5, 0xfb,
-  0xec, 0xfe, 0xd5, 0xfb, 0xc8, 0xc5, 0xbb, 0x67, 0xf5, 0xb8, 0x82, 0x90,
-  0xc6, 0xb8, 0x7f, 0xe6, 0x59, 0xda, 0x29, 0x6a, 0x8b, 0x8d, 0x5d, 0xd6,
-  0xe2, 0xde, 0xe6, 0x32, 0x9e, 0x1f, 0xe4, 0xb3, 0xdf, 0x6c, 0xd7, 0x89,
-  0x1a, 0x75, 0xf4, 0xf1, 0xe6, 0xd8, 0xf9, 0x5c, 0x8c, 0x5b, 0x60, 0xc0,
-  0x62, 0xf5, 0xa0, 0xd7, 0x05, 0x44, 0x9f, 0xca, 0x8a, 0x4a, 0x8c, 0x38,
-  0x75, 0x17, 0x6f, 0x4e, 0xb3, 0x7c, 0xc5, 0xd2, 0x11, 0xcc, 0xef, 0x0b,
-  0xbd, 0xf8, 0xef, 0x9d, 0x9c, 0x1f, 0xdf, 0x4e, 0x51, 0x82, 0x5c, 0x56,
-  0x44, 0xdd, 0x2c, 0x9e, 0x17, 0x77, 0x33, 0xf4, 0x00, 0xe8, 0xf1, 0x11,
-  0x5c, 0x62, 0xd0, 0xa2, 0x4a, 0x03, 0x5b, 0xc3, 0xf6, 0x6a, 0x69, 0x59,
-  0x54, 0x8a, 0x27, 0xe2, 0x5d, 0xce, 0x7b, 0xf7, 0x58, 0xf7, 0x0e, 0xb5,
-  0x81, 0xa2, 0x7b, 0xf7, 0xbf, 0xfb, 0xfc, 0x5c, 0x36, 0x2e, 0x4d, 0x51,
-  0x4c, 0xeb, 0x8e, 0x1a, 0xa8, 0x2a, 0x2a, 0x5c, 0x98, 0xc8, 0x96, 0xa1,
-  0x2c, 0x23, 0x73, 0x9f, 0xf6, 0x8c, 0x8e, 0xa0, 0x45, 0x66, 0x43, 0x0a,
-  0x9c, 0x98, 0x93, 0xfe, 0x94, 0x4b, 0xde, 0xd1, 0x67, 0x4e, 0x96, 0x61,
-  0x4b, 0x90, 0xcd, 0x72, 0x23, 0x32, 0x5c, 0x43, 0xa9, 0x96, 0x36, 0x3b,
-  0x64, 0x79, 0x9e, 0x79, 0xb3, 0xf6, 0xc8, 0xaf, 0xff, 0x6a, 0x54, 0xc0,
-  0x6f, 0xb9, 0xdb, 0x5b, 0x37, 0xe5, 0xee, 0xa7, 0xad, 0x9b, 0xd2, 0xbd,
-  0xd3, 0x7f, 0x47, 0x72, 0x6d, 0xc3, 0x2d, 0x74, 0x25, 0xe1, 0xa5, 0x7e,
-  0xa2, 0x97, 0x14, 0xde, 0x45, 0x3a, 0x3c, 0xaa, 0x4a, 0xa9, 0xea, 0x1b,
-  0x05, 0x02, 0xf7, 0x1c, 0x95, 0xc3, 0x96, 0x75, 0x97, 0x1c, 0xe0, 0x64,
-  0x1e, 0x48, 0xce, 0x2b, 0xa3, 0xd5, 0x91, 0x38, 0xaa, 0xb6, 0xb9, 0x94,
-  0x8d, 0x55, 0x57, 0x01, 0xde, 0x81, 0x59, 0xdf, 0xb9, 0x54, 0x4d, 0x31,
-  0xfb, 0xf6, 0xcd, 0xd9, 0xeb, 0x63, 0xae, 0x32, 0xc4, 0xb9, 0xf7, 0xc8,
-  0x63, 0xac, 0xc5, 0x30, 0x76, 0xbe, 0xc8, 0xa1, 0x2d, 0x35, 0x0d, 0xf3,
-  0x32, 0x61, 0x8f, 0x01, 0x3e, 0x00, 0x39, 0xe7, 0x45, 0x79, 0x5c, 0xc6,
-  0x3c, 0xad, 0x22, 0x48, 0x7a, 0x08, 0x73, 0x9e, 0x0c, 0xfc, 0x2b, 0x64,
-  0xdd, 0x43, 0x8e, 0x6d, 0x23, 0x29, 0xea, 0x2b, 0x6c, 0x05, 0x1e, 0x89,
-  0xe8, 0xbc, 0x56, 0x4c, 0xa3, 0x4a, 0xef, 0x54, 0xe2, 0xc0, 0xae, 0x1d,
-  0x64, 0x2e, 0x5b, 0x07, 0x8b, 0xf0, 0xf0, 0xd2, 0xb6, 0xa4, 0x15, 0xe4,
-  0xcc, 0xaf, 0x93, 0xbc, 0x20, 0x84, 0x40, 0x1a, 0x12, 0xb7, 0xed, 0x72,
-  0x55, 0xc1, 0xf2, 0x28, 0x42, 0xf5, 0x30, 0x89, 0xa4, 0xc6, 0xa8, 0x67,
-  0x57, 0x8d, 0x80, 0x36, 0x4a, 0xa1, 0xa5, 0xeb, 0x69, 0xe9, 0x1e, 0xb4,
-  0xdf, 0x66, 0xe9, 0x5d, 0x5f, 0x3e, 0x61, 0xcf, 0x51, 0xc6, 0x13, 0x6d,
-  0xa6, 0x21, 0x32, 0xd3, 0x3a, 0x95, 0x5d, 0x4f, 0xc9, 0xbf, 0x15, 0x88,
-  0x77, 0x31, 0x01, 0xdb, 0x55, 0xb4, 0xaa, 0x5d, 0x1d, 0x23, 0x95, 0xb4,
-  0x09, 0x81, 0x8f, 0x30, 0xf7, 0xa8, 0x90, 0x91, 0xef, 0xab, 0x8c, 0x39,
-  0x49, 0xc9, 0xef, 0x20, 0x65, 0x9c, 0x45, 0x19, 0xe7, 0xb5, 0xc9, 0x61,
-  0xfd, 0x6f, 0xa9, 0xa3, 0xac, 0x6d, 0x2f, 0xb2, 0xea, 0xd2, 0x03, 0x7b,
-  0x8e, 0x09, 0x8a, 0x69, 0xcb, 0xf6, 0xf2, 0xff, 0x8c, 0xf8, 0x3e, 0x25,
-  0xa6, 0xb4, 0x62, 0x7f, 0x1b, 0x7d, 0xb1, 0x81, 0x02, 0x59, 0xc4, 0x56,
-  0x66, 0x69, 0x61, 0x16, 0x02, 0x27, 0x36, 0x8c, 0x74, 0x9b, 0xcf, 0x3f,
-  0x9b, 0x97, 0xab, 0xfa, 0x6e, 0x23, 0x91, 0x82, 0x72, 0x52, 0x87, 0xa9,
-  0x61, 0x44, 0x09, 0xda, 0x4e, 0xb3, 0xc5, 0xab, 0xe2, 0x83, 0xea, 0x8f,
-  0x48, 0x27, 0xaa, 0x13, 0xaa, 0x09, 0xd5, 0x69, 0x6e, 0xc3, 0xeb, 0xed,
-  0xff, 0xf1, 0xdb, 0xee, 0xf3, 0xe9, 0xb1, 0xd2, 0xfc, 0x20, 0x9d, 0xb9,
-  0x15, 0x04, 0x10, 0x53, 0x9b, 0x85, 0x1d, 0x5b, 0x97, 0xac, 0x6d, 0x15,
-  0x77, 0x07, 0x43, 0x6c, 0x6b, 0x85, 0x88, 0x56, 0x1c, 0x56, 0x4f, 0x8e,
-  0x98, 0xbb, 0x76, 0xd8, 0x2b, 0x9c, 0x9c, 0x4a, 0x5d, 0x57, 0xf7, 0x85,
-  0x43, 0xdc, 0x50, 0x98, 0xe6, 0x8b, 0xb2, 0x3c, 0x4f, 0xab, 0x8d, 0x20,
-  0x9e, 0x98, 0x06, 0x4e, 0x15, 0x3c, 0x30, 0xfc, 0x19, 0xdb, 0x16, 0xe1,
-  0xd6, 0x72, 0x2c, 0xf4, 0x0b, 0x7e, 0x77, 0xcc, 0x36, 0x7d, 0xef, 0x8b,
-  0x48, 0x30, 0xcf, 0x7c, 0x66, 0x67, 0xe9, 0xbb, 0xda, 0x28, 0xc1, 0x04,
-  0x7b, 0x34, 0x74, 0x6a, 0xbd, 0xd5, 0xeb, 0x25, 0xb3, 0x2c, 0xbb, 0x19,
-  0x45, 0xb2, 0x83, 0x9d, 0x53, 0x05, 0x21, 0xb2, 0x08, 0x7e, 0x4c, 0xb8,
-  0x9a, 0xba, 0x56, 0xd4, 0x80, 0x5c, 0x6b, 0x55, 0x6a, 0xef, 0xc8, 0x87,
-  0x4e, 0x80, 0x18, 0x13, 0x71, 0x4c, 0xc3, 0x3b, 0x82, 0xc4, 0x91, 0x24,
-  0x94, 0x7c, 0x8d, 0x2d, 0xdd, 0xe3, 0x03, 0xc3, 0x50, 0x39, 0xe3, 0x59,
-  0xf9, 0xd7, 0xd5, 0x3a, 0x2f, 0x99, 0x03, 0xb1, 0x26, 0x8e, 0x29, 0x2c,
-  0x93, 0x1b, 0x19, 0xbd, 0xd2, 0x10, 0x57, 0xfe, 0xf3, 0x8c, 0xe0, 0xd5,
-  0xc9, 0xe0, 0x3e, 0x8a, 0x50, 0x5b, 0x4b, 0x61, 0xcc, 0xe6, 0xd9, 0x25,
-  0xcf, 0xef, 0xf9, 0xf1, 0xd1, 0x77, 0x47, 0xc7, 0xc1, 0x4d, 0xf8, 0xf5,
-  0x64, 0xb2, 0xfd, 0x21, 0xab, 0xce, 0xb3, 0xaa, 0xac, 0xb7, 0xe0, 0x0d,
-  0x4e, 0xe8, 0x39, 0x1b, 0x7f, 0xe9, 0x5d, 0x0f, 0x37, 0x0e, 0x62, 0x49,
-  0xcc, 0x94, 0x81, 0x19, 0x06, 0xe1, 0xf5, 0xdc, 0xa5, 0x94, 0x11, 0xa1,
-  0x4c, 0xbf, 0x85, 0xb5, 0x11, 0x57, 0x70, 0xb1, 0x90, 0x09, 0x35, 0x8d,
-  0xc0, 0x29, 0x12, 0x12, 0x0f, 0x8a, 0xff, 0x62, 0x4f, 0x39, 0xc7, 0x03,
-  0x0c, 0xcf, 0x4d, 0x22, 0x78, 0x63, 0x49, 0x68, 0x17, 0xc9, 0x4b, 0xe9,
-  0x53, 0x32, 0xc3, 0xb1, 0x4a, 0x8c, 0xc2, 0xc8, 0x17, 0xc1, 0xc9, 0xb7,
-  0xa3, 0x17, 0x93, 0xd1, 0xcb, 0xa3, 0xe3, 0xa3, 0xaf, 0x5f, 0x9c, 0x1d,
-  0x71, 0xd5, 0x0c, 0x86, 0x09, 0x8d, 0xcb, 0x2d, 0x72, 0x85, 0x7f, 0x2b,
-  0xcb, 0x62, 0x8b, 0x17, 0x34, 0xb9, 0xd4, 0xfa, 0x62, 0x57, 0x12, 0xaf,
-  0x03, 0x29, 0x3a, 0x12, 0xe6, 0x1f, 0x6f, 0xce, 0x9c, 0x86, 0xf9, 0x42,
-  0x86, 0x1a, 0xcc, 0x20, 0x9d, 0xdf, 0xa0, 0xde, 0xe7, 0xbb, 0x02, 0x49,
-  0x2e, 0xb9, 0x4d, 0xea, 0xe6, 0xd9, 0xfb, 0x46, 0x1e, 0xb7, 0xb2, 0xad,
-  0x0a, 0x8f, 0xbf, 0x15, 0x24, 0x04, 0x97, 0x51, 0xe9, 0x31, 0x94, 0x28,
-  0x0e, 0x04, 0x09, 0x3a, 0x2f, 0xe9, 0xc9, 0x4e, 0x65, 0x01, 0x57, 0x10,
-  0x01, 0xc6, 0x52, 0xf9, 0x2a, 0x82, 0x54, 0x84, 0x61, 0x72, 0x3d, 0x7b,
-  0xa9, 0x34, 0x51, 0x21, 0xd2, 0xae, 0xd1, 0xd2, 0x67, 0x02, 0x14, 0xc6,
-  0x3c, 0xec, 0x3c, 0x63, 0xac, 0x15, 0x52, 0x61, 0xcb, 0xb0, 0xaa, 0x32,
-  0xdd, 0x59, 0x37, 0x39, 0x97, 0x70, 0xa5, 0xd8, 0x3c, 0xc2, 0x0c, 0x18,
-  0x4b, 0x82, 0x21, 0x87, 0x07, 0x19, 0xea, 0xb3, 0xd1, 0x40, 0x96, 0x89,
-  0x73, 0x75, 0xdb, 0xae, 0x38, 0x62, 0xcb, 0x16, 0x58, 0xcf, 0x1d, 0x3b,
-  0x09, 0xe9, 0x23, 0x2e, 0xb1, 0x25, 0x8a, 0x19, 0x06, 0xf9, 0x6b, 0xed,
-  0x5f, 0x44, 0x98, 0xad, 0x74, 0x68, 0xa2, 0xfa, 0x68, 0x6e, 0x46, 0x94,
-  0xfb, 0x30, 0xfb, 0xf1, 0x86, 0x3b, 0xb4, 0xd5, 0x14, 0x66, 0xb2, 0x35,
-  0x24, 0x27, 0x4b, 0xbd, 0x9c, 0x75, 0x51, 0x5c, 0x8e, 0xeb, 0xb4, 0x6b,
-  0xea, 0xa0, 0x28, 0x84, 0xfe, 0x1a, 0x96, 0x3d, 0xb2, 0xf9, 0xb2, 0xa3,
-  0x6c, 0x19, 0x20, 0xf4, 0x6f, 0x7e, 0xa5, 0x05, 0x37, 0x5c, 0x0d, 0x5a,
-  0xaf, 0x18, 0xa8, 0x57, 0xb8, 0xef, 0xe8, 0xf4, 0xed, 0x19, 0x75, 0x72,
-  0x8c, 0x5f, 0x24, 0x10, 0xa2, 0x8e, 0x61, 0x5e, 0x4a, 0x89, 0x2a, 0xae,
-  0xb1, 0x0c, 0x7f, 0xa4, 0xab, 0x62, 0x2d, 0xa1, 0xc6, 0x1c, 0x60, 0x2e,
-  0x95, 0x15, 0xe4, 0x48, 0xd1, 0xea, 0x06, 0xd9, 0x3d, 0x0d, 0x32, 0x40,
-  0xd4, 0x63, 0x85, 0x21, 0x08, 0x2a, 0x19, 0x0d, 0x82, 0x83, 0xe4, 0xd5,
-  0x71, 0x78, 0x82, 0x2f, 0xd5, 0xf4, 0xc7, 0x7e, 0x8c, 0x9e, 0xa0, 0x04,
-  0xe2, 0x8a, 0xac, 0x23, 0xa2, 0x59, 0xbc, 0x99, 0x54, 0xf9, 0xe5, 0x95,
-  0xd9, 0x0a, 0x33, 0x94, 0x71, 0x67, 0xaa, 0x54, 0x30, 0x12, 0x38, 0xbb,
-  0xa1, 0x9f, 0x90, 0x4a, 0x65, 0x8a, 0x81, 0x4e, 0xd2, 0x4e, 0x68, 0xc2,
-  0xae, 0xd8, 0x3d, 0xdd, 0x2a, 0x94, 0x3b, 0x43, 0xa9, 0xd8, 0x5c, 0x55,
-  0x0b, 0x37, 0x48, 0x1a, 0x08, 0xfe, 0x92, 0x72, 0x34, 0xd4, 0x02, 0x68,
-  0x77, 0x82, 0xd8, 0xcb, 0x82, 0xa2, 0xd6, 0x75, 0x49, 0x09, 0x41, 0x9a,
-  0x34, 0x9d, 0x73, 0x96, 0x6d, 0x44, 0x6b, 0x89, 0x44, 0x27, 0x61, 0xe1,
-  0x6d, 0xcd, 0x4e, 0x9a, 0xa5, 0x6c, 0x5b, 0x44, 0xb6, 0x07, 0x6d, 0x74,
-  0xa1, 0xec, 0x8c, 0xfe, 0x67, 0x98, 0x60, 0x0e, 0x87, 0x87, 0x0c, 0x85,
-  0x57, 0x86, 0x2a, 0xd7, 0x09, 0xbd, 0x95, 0x31, 0xaa, 0x12, 0xbe, 0xe2,
-  0x9c, 0x30, 0x2d, 0x12, 0xec, 0x07, 0x1c, 0xd0, 0xd0, 0xce, 0x9a, 0x52,
-  0xe8, 0x3c, 0x18, 0xed, 0x57, 0xa7, 0xd7, 0x4f, 0xda, 0x51, 0x04, 0xb4,
-  0x7d, 0x24, 0x22, 0x14, 0x5d, 0xc1, 0x21, 0xe3, 0xc4, 0x2a, 0xd3, 0x37,
-  0x0d, 0x17, 0xd6, 0x21, 0x1b, 0x20, 0x03, 0xe2, 0x09, 0xfa, 0x7f, 0x49,
-  0x83, 0x43, 0x3f, 0xf4, 0x02, 0x1d, 0x79, 0xc0, 0x8d, 0x5d, 0x6a, 0x11,
-  0x42, 0x26, 0xe5, 0xf3, 0xcc, 0xf4, 0x97, 0xa3, 0x46, 0xab, 0x5f, 0xdf,
-  0x38, 0x12, 0xbd, 0x60, 0x08, 0x10, 0xf7, 0x0d, 0x8c, 0x39, 0x60, 0x3f,
-  0x78, 0x97, 0x03, 0x46, 0xfc, 0xe2, 0xc6, 0xb6, 0x50, 0xe2, 0xe8, 0x74,
-  0x28, 0x9e, 0x7e, 0x0a, 0x5f, 0x2e, 0xab, 0x30, 0x8b, 0x7d, 0x6a, 0xf1,
-  0xd5, 0xf4, 0xc9, 0xb4, 0xbe, 0x8e, 0x9f, 0xf0, 0xfa, 0xfa, 0x9f, 0x38,
-  0xe1, 0x93, 0xef, 0x6c, 0x84, 0x13, 0x9d, 0x64, 0x73, 0x94, 0x03, 0x28,
-  0x43, 0xf0, 0x78, 0x3b, 0xab, 0x8f, 0x3b, 0xdd, 0xe6, 0x3c, 0x87, 0xce,
-  0x8e, 0xd6, 0xf9, 0x36, 0x03, 0x90, 0x43, 0x7d, 0xfa, 0x62, 0xf2, 0x9d,
-  0x77, 0x9c, 0xbd, 0xad, 0x77, 0x58, 0xb2, 0x66, 0x05, 0x03, 0x57, 0x8c,
-  0xe2, 0x6b, 0xa3, 0xad, 0x28, 0x99, 0xd7, 0xd7, 0x0f, 0x21, 0x73, 0x33,
-  0x90, 0x80, 0xcc, 0x83, 0xa5, 0x5d, 0x47, 0xe6, 0xfe, 0xfe, 0xb4, 0x83,
-  0xe1, 0x3d, 0x22, 0x2f, 0x88, 0xb0, 0x29, 0x71, 0xab, 0x8f, 0xba, 0xd9,
-  0xb1, 0x48, 0x14, 0x1d, 0x86, 0x08, 0xd3, 0x38, 0x3f, 0x8e, 0xbe, 0xcd,
-  0x0b, 0x01, 0x7d, 0xeb, 0x76, 0xc6, 0x09, 0xbc, 0x8f, 0xbe, 0x35, 0x55,
-  0x20, 0x63, 0xda, 0xf6, 0x49, 0x3b, 0x24, 0x6b, 0x8f, 0x58, 0x7d, 0x08,
-  0x87, 0x70, 0x85, 0x34, 0x74, 0x94, 0xe3, 0x7c, 0x40, 0x34, 0xce, 0xb5,
-  0x1f, 0x41, 0x08, 0x52, 0x5d, 0x98, 0xd3, 0xdc, 0x43, 0xe3, 0x3e, 0x30,
-  0x1b, 0xbc, 0x94, 0x10, 0xc9, 0x6a, 0xaa, 0x54, 0x38, 0xe7, 0x82, 0x9f,
-  0xb8, 0xa6, 0xc9, 0x56, 0xe0, 0x03, 0x81, 0x5c, 0x04, 0x07, 0xb1, 0x85,
-  0x15, 0x96, 0x45, 0x71, 0x25, 0xea, 0x0c, 0xd1, 0x76, 0x84, 0x38, 0xd8,
-  0x3d, 0x9e, 0x90, 0x10, 0xe9, 0xfe, 0x87, 0x68, 0x32, 0xca, 0x8b, 0x51,
-  0x98, 0xde, 0xe0, 0xfb, 0x82, 0x9a, 0x16, 0x0c, 0x35, 0x52, 0x8f, 0x49,
-  0x56, 0x16, 0x97, 0x07, 0xe4, 0x58, 0xcd, 0x7a, 0x86, 0x87, 0x80, 0x8b,
-  0x2d, 0x46, 0x12, 0xe5, 0xa3, 0x60, 0x8a, 0xed, 0xb2, 0x4e, 0x4d, 0xd9,
-  0x32, 0xcd, 0x3d, 0xe9, 0xa0, 0x95, 0xcf, 0x8a, 0x7a, 0x44, 0xba, 0xd7,
-  0x05, 0x50, 0x74, 0x9e, 0xdb, 0x5f, 0x03, 0xd5, 0xe4, 0xe5, 0x1b, 0x0d,
-  0x42, 0xf1, 0x62, 0x50, 0xea, 0x8c, 0x33, 0xbf, 0xb8, 0x7a, 0x9b, 0x79,
-  0xc4, 0x26, 0xf2, 0xda, 0x5a, 0xbd, 0xcf, 0xa3, 0xe6, 0x21, 0xea, 0x22,
-  0x48, 0xbf, 0x4d, 0x39, 0x93, 0xce, 0x28, 0x82, 0xa4, 0xee, 0x63, 0x06,
-  0x6e, 0x6c, 0xc9, 0xa6, 0x08, 0xfa, 0xb0, 0x43, 0x45, 0x60, 0xcd, 0x34,
-  0xe3, 0x16, 0xc3, 0x90, 0xa2, 0x11, 0x08, 0x56, 0xa3, 0xca, 0x0b, 0x02,
-  0x37, 0xa8, 0x78, 0x3f, 0x04, 0x87, 0xaf, 0xed, 0x46, 0xac, 0xcd, 0x9b,
-  0x02, 0x93, 0x26, 0xf1, 0xba, 0x5b, 0x6b, 0xf5, 0x4e, 0x2c, 0xe0, 0xf2,
-  0xfa, 0xd1, 0x08, 0x0f, 0x3b, 0x3d, 0x93, 0x3f, 0x7d, 0x42, 0x9f, 0x8e,
-  0x83, 0x85, 0x0e, 0x52, 0xe3, 0xa4, 0xb0, 0xb7, 0x05, 0xc2, 0x46, 0xf0,
-  0x5c, 0x31, 0x43, 0x85, 0x1d, 0xda, 0x7b, 0x2d, 0x98, 0x02, 0x60, 0x54,
-  0x8e, 0xc7, 0xc0, 0xe2, 0x73, 0x28, 0x5e, 0x12, 0xc4, 0x3f, 0x1a, 0x91,
-  0xa6, 0x1d, 0x4b, 0xb6, 0xbf, 0x1f, 0xd9, 0x74, 0x3b, 0xe6, 0xe7, 0x32,
-  0xcd, 0xf8, 0x96, 0xb7, 0xae, 0x96, 0xf3, 0x9c, 0xcb, 0x2f, 0x3e, 0xcf,
-  0x97, 0x23, 0x7d, 0x8b, 0xef, 0x92, 0x45, 0xfa, 0x41, 0x6e, 0xf2, 0x47,
-  0x42, 0x07, 0xa3, 0x00, 0x2b, 0x09, 0x74, 0x81, 0xa8, 0xe7, 0xd2, 0x9f,
-  0x67, 0x8b, 0x68, 0x44, 0xcc, 0x6a, 0x2c, 0x3e, 0x33, 0x88, 0x82, 0xfb,
-  0x89, 0xe5, 0x72, 0xda, 0x9a, 0x79, 0x5e, 0xa0, 0x84, 0xe6, 0x6d, 0xd1,
-  0x48, 0xec, 0xbb, 0xbf, 0x75, 0x8c, 0xd7, 0x7a, 0x72, 0x70, 0x34, 0xbb,
-  0x9e, 0x1c, 0x74, 0x0b, 0xfe, 0x7b, 0x90, 0xc3, 0x93, 0xdf, 0x85, 0x1c,
-  0x9e, 0xfc, 0xb7, 0x21, 0x87, 0x27, 0xff, 0xdd, 0xc8, 0xe1, 0x51, 0x40,
-  0x0e, 0x4f, 0xfe, 0xbb, 0x90, 0x83, 0x16, 0x27, 0x55, 0x62, 0xc8, 0x02,
-  0x72, 0x98, 0x48, 0x88, 0x8b, 0x82, 0x84, 0x62, 0xe3, 0xf4, 0x2d, 0x76,
-  0x28, 0x49, 0x30, 0xbc, 0x46, 0xed, 0xfa, 0x28, 0xc8, 0x3d, 0x65, 0x93,
-  0x6c, 0x3a, 0x97, 0x36, 0xfa, 0xea, 0x34, 0xb1, 0x03, 0xf0, 0x76, 0xd5,
-  0x61, 0xf9, 0x91, 0xf4, 0x18, 0x35, 0xa7, 0xd7, 0xb0, 0xc4, 0x9a, 0xf9,
-  0x73, 0x84, 0x6f, 0xed, 0xa0, 0x08, 0x62, 0x60, 0x7d, 0x66, 0xe1, 0x0e,
-  0x9e, 0x63, 0xb9, 0x46, 0xfc, 0xf8, 0xe7, 0xd1, 0x14, 0xdb, 0x2c, 0x35,
-  0xd7, 0x8f, 0x1b, 0xd2, 0xef, 0x4d, 0x46, 0xed, 0x9d, 0x70, 0x64, 0x60,
-  0x1d, 0x79, 0x1e, 0x0d, 0xc4, 0x48, 0xa0, 0x2b, 0xd7, 0x59, 0x82, 0xb8,
-  0x9f, 0x02, 0xca, 0xab, 0x75, 0x35, 0x73, 0xcc, 0xda, 0x6d, 0x25, 0x13,
-  0x32, 0xc1, 0xd4, 0xed, 0xea, 0x3a, 0x24, 0xd1, 0x5b, 0x1c, 0x8b, 0x97,
-  0xe5, 0x37, 0xc4, 0x35, 0x46, 0xb0, 0x6c, 0x8c, 0xb8, 0xd2, 0xfc, 0xda,
-  0xe8, 0xc0, 0x27, 0xe1, 0x30, 0x0c, 0xfd, 0xc4, 0xea, 0x5b, 0x74, 0xc6,
-  0xf0, 0x61, 0x48, 0xa2, 0x82, 0x54, 0xe4, 0xfe, 0xcd, 0x07, 0x81, 0x95,
-  0x7d, 0xfe, 0xee, 0x6d, 0x68, 0xaf, 0xe5, 0x51, 0x74, 0x10, 0x70, 0xdb,
-  0x9d, 0x99, 0xce, 0xcb, 0x6f, 0xb6, 0x3c, 0xc3, 0x21, 0xb9, 0xae, 0xca,
-  0x58, 0x41, 0x53, 0xc6, 0x51, 0xb0, 0x68, 0x21, 0x84, 0xfd, 0xe4, 0xd7,
-  0x31, 0x16, 0x7f, 0x8d, 0x2f, 0x9d, 0x92, 0x21, 0x4c, 0x10, 0x18, 0xaa,
-  0xa0, 0xe8, 0x36, 0xb4, 0x80, 0xbc, 0x16, 0xcc, 0x4f, 0xe0, 0x22, 0xa9,
-  0x00, 0x44, 0x23, 0x0b, 0xa5, 0x1a, 0xaa, 0x4d, 0x3c, 0x39, 0xb6, 0xbe,
-  0x2c, 0xa2, 0x34, 0x4d, 0x91, 0xc6, 0x62, 0x52, 0xed, 0x42, 0x0b, 0xba,
-  0x20, 0x46, 0x16, 0xf8, 0x20, 0x63, 0x05, 0xc3, 0xb0, 0xf2, 0x92, 0x29,
-  0xc5, 0x3c, 0x8b, 0xfd, 0x2e, 0x70, 0x0b, 0xad, 0x96, 0x35, 0x45, 0xe2,
-  0x33, 0x12, 0x16, 0x59, 0xbe, 0x12, 0x2a, 0x89, 0xf5, 0x4d, 0x79, 0x93,
-  0x5d, 0xc7, 0x81, 0x06, 0xfb, 0x20, 0x50, 0xb4, 0x1c, 0x79, 0x6d, 0xc1,
-  0x5c, 0xf3, 0xe2, 0x2a, 0x43, 0x26, 0x11, 0x2b, 0x01, 0x1a, 0x97, 0x1c,
-  0x09, 0x0d, 0xaa, 0x4a, 0xf2, 0xed, 0x2a, 0x3b, 0x31, 0xb3, 0xb8, 0xce,
-  0xd3, 0x0e, 0xe1, 0xa9, 0x9f, 0xbb, 0x7d, 0x24, 0xfe, 0xc8, 0xa8, 0xf1,
-  0x27, 0x7b, 0x2d, 0x8a, 0x7c, 0x49, 0x0a, 0xd6, 0x6a, 0xb1, 0x14, 0x9c,
-  0x8d, 0x7b, 0x70, 0x06, 0x48, 0x8b, 0xdf, 0x4a, 0xbe, 0x27, 0x14, 0x01,
-  0xf6, 0x92, 0x49, 0xca, 0xad, 0x9a, 0xb1, 0x6c, 0x92, 0xa1, 0xfa, 0x9f,
-  0x7b, 0x20, 0x41, 0x39, 0x6f, 0x8f, 0x8a, 0x07, 0xd9, 0x57, 0xa4, 0xc2,
-  0x10, 0x97, 0x6d, 0xf2, 0x2d, 0x0e, 0x9d, 0x40, 0xe3, 0xfe, 0x0c, 0x27,
-  0x04, 0x43, 0x10, 0x0c, 0x4c, 0x14, 0xd4, 0x91, 0x9c, 0x5c, 0xb6, 0x06,
-  0x7d, 0xc2, 0x39, 0x33, 0x57, 0x99, 0x0f, 0x6e, 0x61, 0x41, 0x84, 0x25,
-  0x58, 0x95, 0x52, 0x0a, 0x0b, 0x89, 0xf2, 0x0f, 0xaa, 0xc4, 0x11, 0x74,
-  0x8d, 0x8c, 0x7e, 0x20, 0x38, 0xb3, 0x2b, 0x81, 0x0c, 0x4f, 0xb1, 0x2a,
-  0x04, 0x06, 0xf7, 0x07, 0x26, 0x81, 0x78, 0x49, 0x56, 0x3e, 0xdb, 0xc9,
-  0x2e, 0x39, 0xb4, 0x63, 0x5d, 0x86, 0x85, 0x8f, 0x78, 0x49, 0xe5, 0x03,
-  0xac, 0x63, 0x93, 0xcf, 0xdb, 0x11, 0x28, 0x7c, 0x69, 0x8e, 0xe6, 0xd7,
-  0x29, 0x66, 0x45, 0xcc, 0xe3, 0x65, 0x9a, 0x2d, 0x02, 0xcb, 0x73, 0x5d,
-  0xc2, 0x95, 0xa2, 0xd1, 0x2a, 0xfc, 0x57, 0x62, 0xf1, 0x17, 0x59, 0xd1,
-  0xe3, 0xa5, 0x49, 0xcc, 0xd9, 0x9f, 0x19, 0x51, 0x4c, 0xf2, 0x8a, 0xa9,
-  0xcc, 0x61, 0x90, 0x61, 0xe0, 0x45, 0xc2, 0xaf, 0x05, 0x8e, 0xa1, 0xa6,
-  0x46, 0x5d, 0x2f, 0x99, 0x34, 0xfd, 0x3c, 0x4a, 0xd1, 0x3c, 0xef, 0x6c,
-  0xae, 0xd0, 0x4a, 0x1a, 0x95, 0x3f, 0xad, 0xee, 0x96, 0x50, 0xa4, 0xf9,
-  0x5d, 0xe1, 0xb2, 0x18, 0x1d, 0x63, 0x78, 0xaf, 0xc7, 0xa6, 0x78, 0x57,
-  0x7b, 0x35, 0x30, 0x48, 0xf4, 0x40, 0x68, 0x06, 0xc0, 0xec, 0x8d, 0xfc,
-  0xa8, 0xa2, 0x08, 0x6e, 0xd5, 0x19, 0x41, 0x6e, 0xf5, 0x16, 0xa6, 0x94,
-  0x72, 0x93, 0x7e, 0x2c, 0x18, 0x29, 0x92, 0x86, 0x0e, 0x36, 0xc9, 0x59,
-  0xa1, 0xe8, 0x00, 0x70, 0xad, 0x6d, 0x25, 0x72, 0x4c, 0x2c, 0xc0, 0x43,
-  0x1d, 0xc8, 0x30, 0x77, 0xed, 0xe2, 0xac, 0x29, 0xd0, 0x78, 0x8a, 0x00,
-  0xf6, 0x2b, 0x6b, 0xd2, 0xcb, 0x91, 0x00, 0x18, 0xf5, 0x90, 0x8b, 0x67,
-  0x79, 0x10, 0x0a, 0x66, 0xe0, 0x08, 0x8a, 0xd0, 0xb4, 0x36, 0x64, 0x62,
-  0x17, 0x1a, 0x5b, 0x23, 0xa0, 0x52, 0xe0, 0x06, 0x81, 0xe7, 0x88, 0xd2,
-  0x4d, 0x8e, 0xce, 0xd2, 0x4b, 0xcf, 0xb7, 0xdc, 0x09, 0xba, 0xa2, 0xd2,
-  0x8f, 0x05, 0x47, 0x57, 0x19, 0x7d, 0xa1, 0x6e, 0xcc, 0x23, 0xaf, 0x2e,
-  0x46, 0x6f, 0xcc, 0xcc, 0x47, 0x01, 0xca, 0x1c, 0xec, 0x4d, 0xc2, 0xcc,
-  0x5c, 0xd4, 0x8b, 0xa4, 0xc0, 0xa3, 0x9b, 0x71, 0x14, 0xb5, 0x6c, 0x5a,
-  0x56, 0x82, 0x1d, 0x86, 0xf8, 0x28, 0x73, 0xfc, 0x28, 0x22, 0xac, 0xb6,
-  0x90, 0x30, 0xed, 0x10, 0xa2, 0x56, 0x2d, 0xc3, 0x20, 0xbf, 0x8d, 0xb2,
-  0xc3, 0x45, 0x55, 0x10, 0x14, 0x5b, 0x2d, 0x3c, 0x3e, 0xcb, 0x6a, 0xd4,
-  0xc6, 0x4b, 0x78, 0x24, 0x86, 0x33, 0x17, 0x16, 0xb8, 0x8a, 0x9d, 0xfa,
-  0x81, 0x23, 0xc2, 0x6c, 0x44, 0xed, 0x6a, 0xdb, 0xd0, 0xa3, 0xd1, 0x59,
-  0xbc, 0xab, 0xf5, 0x66, 0x54, 0x36, 0x29, 0x9b, 0x59, 0x93, 0x69, 0x90,
-  0x10, 0x6e, 0x60, 0x22, 0xa3, 0x3f, 0xc9, 0x84, 0x8b, 0x25, 0x17, 0x4f,
-  0x7e, 0x44, 0x7c, 0x90, 0xca, 0x7d, 0x02, 0x9e, 0x5d, 0x48, 0x90, 0x8c,
-  0x97, 0xfb, 0x56, 0x2a, 0xce, 0x55, 0xb7, 0xac, 0x30, 0xb1, 0xbe, 0x4e,
-  0x73, 0xd4, 0x19, 0x79, 0x22, 0xea, 0xd5, 0x39, 0x03, 0x19, 0x5b, 0x9c,
-  0xb6, 0xb5, 0xd7, 0x55, 0x3b, 0xf8, 0xcb, 0x9b, 0xd1, 0x3a, 0xda, 0x6c,
-  0x11, 0x27, 0x9e, 0xae, 0x39, 0xdc, 0xca, 0x50, 0x24, 0x0d, 0xa4, 0x7b,
-  0x37, 0xc9, 0x6d, 0xf4, 0xa2, 0x88, 0x8e, 0x9a, 0x28, 0x9b, 0xca, 0x2d,
-  0x80, 0x44, 0xe7, 0xa4, 0x2a, 0x30, 0x81, 0x51, 0xd8, 0x0b, 0xd7, 0xa3,
-  0x90, 0x90, 0x07, 0xb9, 0x5a, 0x18, 0x04, 0x2f, 0xbe, 0xa6, 0xb1, 0xeb,
-  0xc0, 0x5c, 0x82, 0xda, 0x17, 0xf9, 0x44, 0x5b, 0x59, 0x00, 0xc3, 0xf6,
-  0xb5, 0x46, 0xb9, 0xc4, 0x3d, 0x59, 0xa8, 0xeb, 0x56, 0x8e, 0x02, 0xf4,
-  0x76, 0x77, 0x76, 0xee, 0x05, 0x6a, 0x94, 0x45, 0x54, 0xbc, 0x46, 0xe2,
-  0x52, 0x79, 0x61, 0xc1, 0x1a, 0xad, 0x1c, 0xe7, 0xa0, 0x1a, 0x09, 0x59,
-  0x28, 0xcd, 0xf9, 0x9c, 0x77, 0x4d, 0x8b, 0xe8, 0xd2, 0xc2, 0x26, 0xda,
-  0xfb, 0xf5, 0xc6, 0x26, 0x91, 0x66, 0x04, 0xdb, 0x08, 0xb1, 0xea, 0x88,
-  0x86, 0x58, 0x1f, 0xb4, 0xdf, 0xe9, 0x86, 0x7a, 0xf0, 0xd1, 0xa6, 0x55,
-  0xc6, 0x8b, 0x96, 0x8a, 0x92, 0xe4, 0xcb, 0x3b, 0x67, 0x68, 0xb5, 0xde,
-  0x05, 0x1a, 0x17, 0xae, 0x50, 0x1e, 0xff, 0x78, 0x4d, 0x3a, 0x67, 0x1c,
-  0x8b, 0xf1, 0x5f, 0xbc, 0x84, 0x57, 0xc3, 0x46, 0x8c, 0xb0, 0x89, 0x26,
-  0x19, 0x63, 0x2e, 0x8f, 0x66, 0xd2, 0xdb, 0xd9, 0x02, 0xd6, 0xa0, 0x53,
-  0xf9, 0xd2, 0x2b, 0x62, 0xc9, 0x82, 0xce, 0xda, 0x3a, 0x1b, 0x6d, 0x68,
-  0xcd, 0x76, 0x02, 0xc1, 0xd3, 0xf6, 0xfe, 0x02, 0xde, 0x66, 0x44, 0x20,
-  0x36, 0x5d, 0xf6, 0x06, 0xdc, 0x1b, 0x1c, 0x63, 0x32, 0x0c, 0xdb, 0xb4,
-  0xd8, 0x8a, 0x2b, 0x5a, 0x48, 0xd0, 0xa6, 0x4a, 0xe1, 0x9d, 0xb2, 0x01,
-  0x2d, 0xc1, 0xa9, 0x9b, 0xf2, 0xeb, 0x23, 0x6b, 0x04, 0x38, 0x1a, 0x2d,
-  0xc3, 0x7b, 0x88, 0x4d, 0xc6, 0xc9, 0x1f, 0xce, 0x65, 0xcb, 0x68, 0x3d,
-  0x14, 0xd9, 0x46, 0x8a, 0x31, 0x33, 0x7f, 0xa3, 0x65, 0x0c, 0x69, 0xef,
-  0xcc, 0x79, 0x40, 0xae, 0x0f, 0xef, 0x70, 0x54, 0xdb, 0x6f, 0x79, 0x6a,
-  0x39, 0x79, 0x8c, 0x27, 0x53, 0x3b, 0x50, 0x5e, 0x4a, 0xcb, 0xc6, 0x17,
-  0xa6, 0xdd, 0x5a, 0x95, 0xf5, 0x22, 0x16, 0x87, 0x45, 0x72, 0x97, 0x79,
-  0x6a, 0x03, 0xf8, 0x92, 0xe4, 0x5e, 0xe4, 0x96, 0x2d, 0x06, 0x2e, 0xe7,
-  0x4d, 0x10, 0x74, 0x50, 0xc2, 0x31, 0x41, 0x8a, 0xfd, 0x1d, 0x88, 0x05,
-  0x08, 0x84, 0x02, 0x36, 0x76, 0x42, 0x9b, 0x43, 0x30, 0x44, 0xab, 0xca,
-  0x0b, 0x7e, 0x1a, 0x5c, 0xe5, 0x66, 0x57, 0x8b, 0x01, 0xdd, 0x72, 0x8e,
-  0x39, 0x4a, 0xbf, 0xc1, 0x64, 0x57, 0x73, 0xcf, 0x8b, 0x16, 0x5e, 0x02,
-  0x16, 0x3f, 0x25, 0xc0, 0x04, 0x70, 0xea, 0x1f, 0xb3, 0xaa, 0x84, 0xce,
-  0x9c, 0xcc, 0x21, 0x5e, 0x5a, 0x51, 0xa2, 0x18, 0x9c, 0x8e, 0xc6, 0x36,
-  0x23, 0xaa, 0x98, 0x4a, 0xfa, 0xa4, 0x2d, 0x59, 0x68, 0x4b, 0x6d, 0x2c,
-  0x60, 0x73, 0xc7, 0x5f, 0x58, 0xe3, 0x58, 0x31, 0x39, 0x6c, 0x82, 0xa0,
-  0xb2, 0x45, 0x8a, 0x38, 0x48, 0xa8, 0x6b, 0x7a, 0x47, 0x09, 0xf9, 0xae,
-  0x63, 0xa2, 0xee, 0x00, 0x85, 0xd7, 0xac, 0xe2, 0x65, 0x49, 0x96, 0x0b,
-  0xa1, 0x63, 0x2c, 0xe1, 0xb4, 0xca, 0x97, 0x0d, 0xe7, 0x99, 0x49, 0x62,
-  0xcc, 0xda, 0x1c, 0x6e, 0xf3, 0xdb, 0xe5, 0xbc, 0x3c, 0x4f, 0xe7, 0x02,
-  0xe6, 0x21, 0x61, 0xa9, 0xea, 0x9e, 0x6a, 0x95, 0x88, 0x00, 0x7b, 0x03,
-  0x79, 0x46, 0x0a, 0x61, 0x99, 0x19, 0x8f, 0x0e, 0x86, 0x14, 0x55, 0x71,
-  0xbb, 0x1e, 0xfd, 0xc2, 0x76, 0xc1, 0x08, 0xcc, 0xa3, 0x8b, 0xa1, 0x9c,
-  0x5e, 0xc5, 0xc6, 0xa1, 0xa8, 0xde, 0xda, 0x3b, 0x52, 0x81, 0x32, 0x4c,
-  0x50, 0x56, 0xc9, 0x6c, 0xc5, 0xf7, 0xba, 0xbb, 0x29, 0x36, 0x24, 0x8e,
-  0x47, 0xec, 0x27, 0x14, 0x6a, 0x6a, 0x6b, 0x48, 0x71, 0xb8, 0x4c, 0x2c,
-  0x80, 0x15, 0x25, 0x19, 0x44, 0x4b, 0x1f, 0x26, 0x57, 0xac, 0x34, 0x63,
-  0x84, 0x99, 0x37, 0x38, 0x4d, 0x9c, 0xf0, 0xd6, 0x8a, 0x8b, 0x64, 0x86,
-  0x14, 0x7f, 0xc1, 0x40, 0x2c, 0x24, 0x1c, 0xf1, 0x9e, 0xac, 0x59, 0x19,
-  0xbf, 0x0a, 0x0c, 0xa9, 0xa6, 0x6d, 0x86, 0x06, 0xc9, 0x69, 0x74, 0x5e,
-  0xce, 0xee, 0x7a, 0x2e, 0xfa, 0xb7, 0x4c, 0xca, 0x16, 0xc7, 0x8b, 0x34,
-  0x78, 0xd2, 0xe4, 0xe4, 0xf0, 0x13, 0x88, 0xa0, 0xc3, 0x9c, 0x52, 0x3e,
-  0x1c, 0x56, 0x52, 0xa1, 0x7b, 0xf5, 0xd1, 0x0e, 0x95, 0x90, 0xbf, 0xa4,
-  0xeb, 0xb5, 0x42, 0xc5, 0xc9, 0x42, 0xdc, 0xd3, 0x92, 0xdc, 0x22, 0xbe,
-  0x6e, 0x9c, 0x1c, 0xd6, 0x87, 0xb9, 0xb7, 0xc8, 0xfe, 0xd4, 0x12, 0xd7,
-  0x95, 0x63, 0x30, 0x80, 0x65, 0x99, 0x3a, 0x48, 0x27, 0x9b, 0xf6, 0x28,
-  0x31, 0xe0, 0xfa, 0x25, 0x6d, 0x5c, 0x98, 0xa3, 0x6b, 0xee, 0x02, 0x71,
-  0x57, 0x31, 0x06, 0x0a, 0xdd, 0x0e, 0x9a, 0x2a, 0x87, 0x29, 0xde, 0x49,
-  0xec, 0x88, 0x59, 0xf8, 0x2d, 0x45, 0xc8, 0xe5, 0x58, 0xb8, 0x98, 0xae,
-  0x5c, 0x37, 0xc4, 0x7c, 0x5b, 0xb7, 0xb7, 0x80, 0x6c, 0xd0, 0xa1, 0x61,
-  0x01, 0x31, 0xb5, 0xe9, 0x92, 0x64, 0x02, 0xa3, 0x3e, 0x29, 0xfe, 0x33,
-  0xc6, 0xe0, 0x64, 0xf5, 0xf7, 0xf6, 0xe2, 0x94, 0xaf, 0xce, 0xef, 0x06,
-  0x4e, 0x46, 0x72, 0x03, 0x3b, 0x21, 0x12, 0x24, 0xa6, 0x34, 0xa6, 0xd1,
-  0x77, 0xac, 0x4f, 0xc4, 0x50, 0xdd, 0xe8, 0x31, 0xab, 0x4d, 0x10, 0xcc,
-  0x4a, 0x5e, 0x99, 0xc5, 0x33, 0x0b, 0x47, 0x95, 0x31, 0xfc, 0x74, 0x3e,
-  0x33, 0x91, 0x4e, 0xd0, 0xfb, 0x9a, 0xbb, 0xd6, 0x12, 0xfa, 0x78, 0x8d,
-  0xfd, 0xce, 0x3e, 0xd4, 0x43, 0x8d, 0x74, 0xd5, 0x1a, 0xae, 0x33, 0xe7,
-  0x7a, 0xd1, 0x9b, 0x85, 0x5b, 0x58, 0xd2, 0xdc, 0xb6, 0x02, 0xfa, 0x1c,
-  0xc7, 0x22, 0x47, 0xcd, 0x72, 0x21, 0x60, 0x1e, 0xf5, 0x87, 0x4a, 0x56,
-  0x40, 0x25, 0xd6, 0x40, 0x79, 0x5b, 0xd6, 0x4c, 0x99, 0x37, 0x51, 0x50,
-  0xcf, 0x2c, 0x4b, 0xe7, 0x12, 0xc8, 0x84, 0xb1, 0x85, 0x09, 0xb4, 0x7c,
-  0xcd, 0xd6, 0x21, 0x35, 0x73, 0xb2, 0x42, 0xd1, 0x82, 0x63, 0x0b, 0x69,
-  0x37, 0x48, 0xef, 0xfd, 0x08, 0x4a, 0x66, 0x8f, 0x8c, 0x3a, 0x5b, 0x89,
-  0x7c, 0x63, 0x70, 0x63, 0x1e, 0x35, 0x5b, 0x72, 0x16, 0x6a, 0x26, 0x02,
-  0x22, 0x5a, 0xa6, 0x4b, 0x4c, 0xa2, 0x0a, 0x99, 0x70, 0xa1, 0xbd, 0x44,
-  0x81, 0xe1, 0x1b, 0x05, 0x3a, 0xa2, 0x96, 0xe4, 0xbe, 0x5b, 0x4f, 0xa3,
-  0x8b, 0xcc, 0x50, 0xcd, 0x4c, 0xd9, 0x1c, 0x31, 0x9f, 0x3a, 0xbd, 0xc8,
-  0x54, 0x01, 0x12, 0xf1, 0xa1, 0x9c, 0x9a, 0x95, 0x23, 0x73, 0x26, 0x33,
-  0x16, 0x68, 0xdf, 0x81, 0x98, 0xcf, 0x37, 0x37, 0x6e, 0x6a, 0x2b, 0xf6,
-  0x81, 0xc1, 0xc8, 0x95, 0x5f, 0xcf, 0xf3, 0xa5, 0x3a, 0xb4, 0x87, 0x49,
-  0x26, 0x31, 0xcb, 0xa8, 0x5c, 0x42, 0xbb, 0xb1, 0x1a, 0x45, 0xa0, 0xa3,
-  0x34, 0x16, 0x53, 0x6b, 0x5d, 0xcc, 0x61, 0x5c, 0xda, 0xec, 0xb4, 0xfe,
-  0x68, 0x67, 0x97, 0x46, 0xfb, 0x68, 0xe7, 0xe9, 0x5a, 0x27, 0x73, 0x9b,
-  0xb1, 0xb6, 0x65, 0xc8, 0x79, 0x9d, 0x8d, 0x28, 0x3e, 0xfe, 0x81, 0xf5,
-  0xae, 0xe9, 0x0d, 0x89, 0xa8, 0x17, 0x90, 0x08, 0x56, 0x02, 0x51, 0x06,
-  0x9d, 0xe0, 0xdd, 0xea, 0x2b, 0x00, 0xb5, 0x07, 0x32, 0x29, 0x5e, 0x93,
-  0xf7, 0x48, 0xc1, 0xa2, 0xb8, 0x10, 0x5e, 0xd3, 0x94, 0x5e, 0x96, 0x3a,
-  0xcb, 0xbc, 0x64, 0xf4, 0x9c, 0x35, 0x01, 0x84, 0x35, 0x15, 0x2d, 0x36,
-  0x35, 0xe7, 0xf4, 0x72, 0x58, 0x10, 0xd9, 0x75, 0xef, 0xac, 0x05, 0x40,
-  0x6f, 0xc8, 0xe4, 0xab, 0xbc, 0xc8, 0xeb, 0x2b, 0x68, 0x6a, 0x0b, 0x44,
-  0xc2, 0x5c, 0x66, 0x61, 0x5d, 0x1f, 0x73, 0x79, 0x0a, 0xf7, 0x30, 0xba,
-  0x31, 0x55, 0xae, 0x42, 0x84, 0x3a, 0xef, 0x90, 0x64, 0xc6, 0x4a, 0xa5,
-  0x6e, 0x02, 0x53, 0x76, 0xd3, 0xec, 0xab, 0x22, 0xef, 0x8a, 0xc8, 0xf7,
-  0xd5, 0x90, 0x47, 0x51, 0x63, 0x82, 0xd5, 0xf5, 0x4a, 0x8c, 0xc6, 0x6a,
-  0x47, 0x26, 0x9b, 0x20, 0x83, 0x93, 0x89, 0xe1, 0x4e, 0x74, 0x57, 0x41,
-  0x1f, 0xad, 0x28, 0xd3, 0xc0, 0x7c, 0xf6, 0x83, 0xd1, 0x9c, 0xc6, 0xcf,
-  0xec, 0xc7, 0x5b, 0x0f, 0xab, 0x39, 0xbf, 0xd7, 0xd1, 0x24, 0x90, 0xf4,
-  0x23, 0x41, 0x0e, 0x64, 0x38, 0xfb, 0x8c, 0xff, 0x88, 0x5b, 0x84, 0x09,
-  0xdc, 0xe5, 0xd5, 0xeb, 0x17, 0xc0, 0xa0, 0x75, 0x79, 0xc8, 0x2e, 0x37,
-  0xa8, 0x0b, 0x04, 0x40, 0xd4, 0x41, 0x9a, 0x55, 0x14, 0x13, 0x5c, 0xe0,
-  0x65, 0xac, 0x89, 0x7f, 0xd6, 0x86, 0xeb, 0x20, 0xdd, 0x63, 0x8e, 0x42,
-  0xc3, 0x38, 0x32, 0xe3, 0xe4, 0x38, 0xe3, 0x9a, 0x9b, 0x1b, 0x5f, 0x6c,
-  0x44, 0x60, 0x03, 0x36, 0x9e, 0x7b, 0xf5, 0x86, 0x6a, 0x57, 0xce, 0x77,
-  0xe3, 0xaf, 0xc8, 0x7e, 0x02, 0xfc, 0x22, 0xf7, 0x29, 0x5b, 0xc0, 0x89,
-  0x3c, 0xf1, 0x40, 0x41, 0x4d, 0x2d, 0x10, 0x54, 0xf1, 0x76, 0x24, 0x32,
-  0x43, 0xa4, 0x65, 0x04, 0xe3, 0xd6, 0x9a, 0xbb, 0xaa, 0x1e, 0x1b, 0x01,
-  0xac, 0x40, 0x71, 0x27, 0x16, 0xbc, 0x9c, 0x82, 0x34, 0x9d, 0x8d, 0x89,
-  0x47, 0xc4, 0x43, 0xa1, 0x60, 0x50, 0xa3, 0x95, 0x12, 0x34, 0x09, 0x9b,
-  0x19, 0xcc, 0xd7, 0x97, 0x97, 0xd1, 0x78, 0x69, 0xb3, 0x04, 0xd8, 0x78,
-  0xcc, 0xf9, 0xc2, 0x88, 0x2f, 0x24, 0x1d, 0x43, 0x2a, 0xed, 0xcf, 0xd2,
-  0x72, 0x3c, 0x21, 0xf2, 0x8c, 0x37, 0x8b, 0xe7, 0x7e, 0x22, 0x6c, 0x8f,
-  0x5f, 0x80, 0xc8, 0x40, 0xe8, 0x00, 0x06, 0x35, 0xfa, 0xd4, 0x3a, 0x05,
-  0x2e, 0x52, 0x43, 0x19, 0x77, 0x12, 0xb7, 0x36, 0x47, 0xda, 0xa2, 0xa8,
-  0xfe, 0x01, 0xb7, 0x9b, 0x93, 0x19, 0x5f, 0x12, 0xe5, 0x50, 0x97, 0x90,
-  0xd7, 0xb1, 0x10, 0xd1, 0x40, 0x32, 0xeb, 0x48, 0x8d, 0x4e, 0xb4, 0xf2,
-  0x9f, 0x98, 0x9d, 0x28, 0x67, 0xae, 0x6b, 0xa3, 0x97, 0x0c, 0x3a, 0x39,
-  0x89, 0x22, 0x5a, 0xbb, 0x98, 0x23, 0xca, 0x00, 0x24, 0xa6, 0xe1, 0x6c,
-  0x85, 0x3e, 0x68, 0x42, 0xd7, 0x8a, 0x4a, 0xfa, 0xae, 0x61, 0x46, 0xdb,
-  0x74, 0x48, 0x38, 0x75, 0xb1, 0x0b, 0x76, 0xb3, 0xb7, 0xff, 0xe9, 0xa7,
-  0x51, 0x23, 0x23, 0xe3, 0x20, 0x19, 0x1a, 0xc4, 0x32, 0x05, 0x90, 0x57,
-  0x52, 0x73, 0x1e, 0x04, 0x56, 0xab, 0x75, 0xad, 0xa4, 0x1a, 0xe3, 0xa6,
-  0xd7, 0xd0, 0xd8, 0x4c, 0x51, 0x4d, 0x0b, 0x08, 0x1c, 0xc2, 0xc5, 0x48,
-  0x15, 0x00, 0xd7, 0x58, 0xe4, 0x3d, 0x0a, 0x88, 0x88, 0x11, 0xb5, 0x62,
-  0x3a, 0x09, 0xa2, 0xb8, 0xe4, 0xbb, 0x31, 0x74, 0x97, 0x11, 0x2d, 0x28,
-  0xa3, 0x8e, 0x23, 0x49, 0x89, 0xae, 0x7a, 0x70, 0x27, 0x36, 0x12, 0x0d,
-  0xac, 0x3a, 0xcf, 0x2c, 0x80, 0x1e, 0xd7, 0xef, 0xed, 0xa0, 0x66, 0x72,
-  0xfe, 0x58, 0x91, 0x7c, 0xc1, 0x95, 0xf0, 0x4c, 0xf3, 0x9d, 0xe6, 0x08,
-  0x8a, 0xe5, 0x32, 0x6b, 0xc2, 0x7c, 0x69, 0x2f, 0xd3, 0x68, 0x4d, 0xe3,
-  0x91, 0xd3, 0x20, 0xe9, 0xde, 0xcf, 0xa5, 0x52, 0x53, 0x7e, 0xa1, 0x07,
-  0x54, 0x0b, 0xc7, 0x7d, 0xc1, 0x32, 0xf3, 0x73, 0x8b, 0xd3, 0x5b, 0x28,
-  0x87, 0xfa, 0x22, 0x0a, 0x8b, 0xec, 0xf2, 0xae, 0x08, 0xa6, 0xb7, 0x69,
-  0x8c, 0x1e, 0xe8, 0xb8, 0x37, 0x65, 0xac, 0x59, 0x20, 0x56, 0x59, 0x5f,
-  0x52, 0xe8, 0xe6, 0xb1, 0x62, 0x05, 0xcf, 0xad, 0xc9, 0x5c, 0x4a, 0x21,
-  0x22, 0x63, 0x10, 0xe3, 0x89, 0xad, 0x44, 0x2d, 0x02, 0x2f, 0x38, 0x84,
-  0x79, 0x3a, 0xd0, 0xd1, 0xf1, 0xae, 0xb7, 0x4e, 0xe1, 0xde, 0xbb, 0x30,
-  0x3b, 0x87, 0x1c, 0xca, 0x6b, 0xec, 0x52, 0xcd, 0xfc, 0xd8, 0x8a, 0xd4,
-  0x5a, 0xdd, 0x63, 0xf8, 0x6d, 0x23, 0xcc, 0xd3, 0x41, 0xc6, 0x10, 0x65,
-  0x5d, 0x42, 0xa7, 0xc5, 0x28, 0x09, 0x37, 0x91, 0x97, 0xf6, 0x39, 0x79,
-  0xce, 0x9a, 0x6a, 0x35, 0x85, 0xe8, 0x49, 0x26, 0x24, 0xea, 0x29, 0x56,
-  0xd3, 0x57, 0xfd, 0x7d, 0x76, 0xc6, 0x54, 0x79, 0x9b, 0xf6, 0x8c, 0x96,
-  0x58, 0x30, 0xc4, 0xd9, 0x1e, 0x21, 0x10, 0xf3, 0x2c, 0xa3, 0x46, 0xaa,
-  0x72, 0x90, 0x7d, 0x06, 0xa6, 0xc1, 0x3a, 0xff, 0x85, 0xe5, 0x37, 0x49,
-  0x38, 0x52, 0x9f, 0x09, 0x99, 0xe3, 0x32, 0x54, 0xf1, 0x4a, 0x5e, 0x1a,
-  0x8a, 0x2a, 0xf8, 0x2a, 0x07, 0xbd, 0x05, 0x7c, 0xda, 0xe5, 0xdd, 0xa5,
-  0x72, 0x1d, 0x41, 0xe0, 0xab, 0xb2, 0xcb, 0x15, 0x2e, 0x3a, 0xce, 0x08,
-  0xd7, 0x0a, 0x0a, 0xfa, 0xc4, 0x32, 0x5f, 0x52, 0xa5, 0xc3, 0x3a, 0x0f,
-  0x22, 0x49, 0x70, 0x3d, 0x6e, 0xd1, 0x94, 0x0b, 0xb3, 0x5a, 0xcd, 0xaa,
-  0x60, 0x47, 0x31, 0x97, 0x8a, 0x3e, 0xff, 0x3b, 0x39, 0xa2, 0x4a, 0x99,
-  0x39, 0xe7, 0x92, 0xbb, 0x1c, 0xcd, 0x24, 0xbb, 0x08, 0x34, 0xed, 0x8c,
-  0x82, 0x6a, 0xd9, 0xfc, 0x8c, 0x30, 0xd5, 0x46, 0x39, 0x00, 0xa3, 0x72,
-  0xc1, 0x6e, 0xf8, 0x57, 0x0f, 0x5f, 0x94, 0xa4, 0x15, 0x5a, 0x15, 0x1a,
-  0x42, 0xb7, 0x39, 0x02, 0x50, 0x57, 0xe9, 0x49, 0x72, 0x02, 0xd8, 0xfe,
-  0xc2, 0xc5, 0x10, 0x87, 0x5c, 0x2c, 0x42, 0x12, 0x04, 0xd9, 0x52, 0x9d,
-  0xd6, 0x9c, 0xa7, 0x69, 0xf6, 0xeb, 0x2e, 0x96, 0x3b, 0xcd, 0xf2, 0xf7,
-  0xdf, 0xad, 0x79, 0x06, 0xac, 0x2f, 0xa0, 0x50, 0x29, 0x18, 0x75, 0xc0,
-  0x21, 0xa0, 0x54, 0x14, 0x5b, 0x18, 0x5a, 0x5b, 0x39, 0x19, 0x8a, 0x84,
-  0xb8, 0x61, 0x78, 0x27, 0xd6, 0x7e, 0x43, 0x98, 0x66, 0x0c, 0xbf, 0xda,
-  0xe2, 0x7a, 0x54, 0xf0, 0x0a, 0x66, 0x9c, 0xbd, 0xc8, 0x97, 0x88, 0x65,
-  0x20, 0x24, 0x50, 0x55, 0xa9, 0xe1, 0x97, 0x7f, 0x5f, 0x5e, 0xaa, 0xf1,
-  0x30, 0x5a, 0x5d, 0x84, 0xd0, 0x69, 0xc3, 0x6a, 0xbf, 0x44, 0x87, 0xa3,
-  0xaf, 0x12, 0x19, 0xcf, 0x67, 0x5f, 0xb4, 0x1a, 0xd4, 0x42, 0x76, 0x7e,
-  0x29, 0x27, 0x41, 0xd3, 0x9b, 0x5e, 0xe6, 0xbd, 0x8b, 0xc0, 0xab, 0x40,
-  0xd1, 0x11, 0x36, 0x35, 0xa9, 0xbe, 0x2a, 0x33, 0xd9, 0xb9, 0x82, 0xec,
-  0x35, 0x8e, 0x6f, 0xd4, 0xf1, 0xcc, 0x75, 0x5e, 0xb1, 0xfe, 0x21, 0xd3,
-  0x9d, 0xfe, 0x6f, 0xe5, 0x55, 0x81, 0x3f, 0xd0, 0x3c, 0x5a, 0xff, 0x6c,
-  0x77, 0x37, 0x3a, 0xea, 0xf5, 0x1b, 0x46, 0x43, 0xc5, 0x25, 0x24, 0xc9,
-  0x26, 0x1e, 0x4f, 0x6b, 0x99, 0xa7, 0xc6, 0x94, 0x8f, 0x1f, 0xb1, 0x9a,
-  0xa7, 0xc4, 0x5e, 0x09, 0xb7, 0xd8, 0x7b, 0x99, 0x43, 0xfa, 0xa3, 0xcc,
-  0x30, 0xb7, 0x37, 0x03, 0xa1, 0x98, 0x46, 0x62, 0x0b, 0xfa, 0x27, 0x3e,
-  0x80, 0x2f, 0xf0, 0xee, 0xb3, 0xe7, 0x57, 0xab, 0xcb, 0x8c, 0xf8, 0x65,
-  0x73, 0xdb, 0x0c, 0x1e, 0x34, 0x6b, 0xb5, 0xa4, 0xb1, 0xca, 0xda, 0x78,
-  0xd1, 0xcb, 0x94, 0x3f, 0xd9, 0x12, 0x1c, 0xd8, 0x73, 0x4e, 0x20, 0xc4,
-  0xc0, 0x62, 0x8b, 0x31, 0xd2, 0x0d, 0x16, 0x42, 0x87, 0xbc, 0x68, 0x82,
-  0xad, 0xe5, 0xb0, 0x7c, 0xd6, 0xcc, 0xe0, 0x26, 0x3b, 0xff, 0xec, 0x0b,
-  0x58, 0x5f, 0x6f, 0xa9, 0xd4, 0x18, 0x4b, 0xb3, 0x58, 0xb8, 0x6d, 0xaa,
-  0x3c, 0x96, 0x78, 0x93, 0xe8, 0x36, 0x52, 0x56, 0xfd, 0xcd, 0x7a, 0x89,
-  0xd4, 0x5e, 0x93, 0x17, 0x65, 0xb9, 0xb6, 0x45, 0xac, 0x0a, 0x87, 0xc5,
-  0xd0, 0xba, 0x78, 0x19, 0x12, 0x9c, 0x37, 0xe0, 0x60, 0x22, 0x98, 0x24,
-  0xdc, 0x05, 0xc3, 0x67, 0x21, 0x06, 0xda, 0x43, 0x0e, 0x5f, 0xd6, 0xe2,
-  0xf5, 0xa6, 0xf9, 0x6c, 0xa8, 0xa9, 0xc6, 0x91, 0xca, 0x91, 0x6e, 0x0e,
-  0x7c, 0x0c, 0x89, 0x2a, 0xf0, 0xeb, 0x5f, 0xed, 0xeb, 0xf8, 0x61, 0x4e,
-  0x31, 0x15, 0xef, 0x59, 0x33, 0x9b, 0x57, 0x17, 0xb6, 0xc7, 0x6d, 0x0a,
-  0x83, 0xb0, 0xf5, 0x61, 0x37, 0x86, 0x2c, 0x5f, 0xff, 0x75, 0x83, 0x2c,
-  0x1f, 0x1a, 0xfd, 0x44, 0x55, 0x5b, 0x19, 0x70, 0x6f, 0x56, 0x06, 0xe2,
-  0x2c, 0x12, 0x3c, 0xb8, 0xae, 0x2b, 0x8d, 0xbe, 0x67, 0xe0, 0xde, 0xc8,
-  0x7f, 0x1a, 0xd0, 0xd8, 0x87, 0xf8, 0xeb, 0xa7, 0x81, 0x1b, 0xfe, 0x4f,
-  0xb4, 0x3b, 0x7f, 0xcd, 0x8b, 0xbf, 0x62, 0x0a, 0x3f, 0x0d, 0x78, 0x12,
-  0xa1, 0x22, 0xfc, 0x51, 0x9b, 0x8e, 0x7e, 0x91, 0x40, 0x4e, 0x3d, 0x7b,
-  0x1d, 0x7b, 0xfd, 0xb6, 0xba, 0x1d, 0x6c, 0x24, 0xc9, 0xc7, 0xf4, 0xeb,
-  0x97, 0x34, 0xa5, 0xec, 0xdd, 0xa4, 0xb3, 0xb8, 0x86, 0x7d, 0xbb, 0xf5,
-  0xe3, 0xa2, 0xb8, 0x23, 0x2d, 0x83, 0x6b, 0x54, 0xa4, 0xc0, 0xf2, 0xe4,
-  0x1e, 0xc0, 0x56, 0xb8, 0x62, 0xb6, 0x5e, 0xd9, 0x36, 0x0b, 0x84, 0xaf,
-  0x1b, 0xc4, 0xd5, 0x73, 0x67, 0xe1, 0xfd, 0x64, 0x5f, 0x0f, 0xee, 0xa3,
-  0x7f, 0x37, 0x3d, 0x90, 0x2e, 0x4a, 0x6d, 0xc8, 0x79, 0x27, 0x08, 0x00,
-  0x49, 0x01, 0xa0, 0x94, 0xac, 0x82, 0x63, 0x6a, 0xf8, 0x3a, 0xbc, 0xe0,
-  0x7c, 0xe8, 0x68, 0x44, 0x40, 0x9d, 0x2d, 0x72, 0x2a, 0x6d, 0x6c, 0x66,
-  0x35, 0x67, 0x85, 0x75, 0x1b, 0xb7, 0x04, 0xa5, 0xd9, 0x50, 0xc5, 0xe1,
-  0x9a, 0x54, 0x76, 0xd1, 0x65, 0xa5, 0x6e, 0x33, 0xaf, 0x43, 0x3f, 0xa9,
-  0x43, 0x30, 0x9f, 0x97, 0x55, 0xfd, 0xd9, 0xc0, 0x08, 0x49, 0x7f, 0x4d,
-  0x60, 0xb4, 0xce, 0x8a, 0xbf, 0x82, 0xe4, 0x56, 0x66, 0x03, 0xdd, 0xf9,
-  0xbd, 0x1d, 0x2d, 0xee, 0xcc, 0xb8, 0x37, 0x3e, 0x6a, 0xe7, 0xbc, 0x43,
-  0x3d, 0x43, 0xd4, 0x1b, 0xc7, 0x5c, 0x74, 0x83, 0xbb, 0xf8, 0x40, 0x7b,
-  0x87, 0x55, 0xbe, 0xff, 0x6c, 0x18, 0xa4, 0xfb, 0x7f, 0xc8, 0x82, 0x89,
-  0x78, 0x1c, 0x99, 0x54, 0xb7, 0xcf, 0x4e, 0xbe, 0xfd, 0xab, 0x36, 0xf0,
-  0xd3, 0xe0, 0x87, 0x11, 0x7f, 0x4a, 0x40, 0x25, 0x07, 0xc9, 0xc9, 0xb7,
-  0x4a, 0xf3, 0x0f, 0xa7, 0xf1, 0x75, 0x1d, 0x7c, 0xc1, 0xbf, 0x10, 0xb5,
-  0xaf, 0x6b, 0x16, 0xda, 0x83, 0xbe, 0x93, 0x7c, 0xc8, 0xee, 0x28, 0x89,
-  0x99, 0xc2, 0x7f, 0x97, 0x4b, 0xa4, 0x25, 0x2b, 0x32, 0x47, 0xc3, 0xc8,
-  0x1c, 0xa4, 0x53, 0xa4, 0xe7, 0x25, 0x67, 0x63, 0x35, 0x61, 0x79, 0x1d,
-  0x2a, 0xef, 0x41, 0x7b, 0xcb, 0x79, 0x38, 0x08, 0x77, 0x1c, 0x8b, 0x87,
-  0xb5, 0x1d, 0x07, 0xd7, 0xc6, 0x59, 0x18, 0x26, 0x47, 0x91, 0x3a, 0x6a,
-  0x0e, 0x52, 0x91, 0x7f, 0x23, 0x39, 0x8d, 0xc0, 0x23, 0xa1, 0x72, 0xa1,
-  0xdc, 0x32, 0x47, 0xb0, 0x2d, 0xb8, 0x08, 0x3b, 0x79, 0x6d, 0x18, 0x58,
-  0xf3, 0xaf, 0x31, 0x47, 0x96, 0xf8, 0xd6, 0x25, 0xe7, 0xed, 0xa2, 0x9c,
-  0xcf, 0xc4, 0xa7, 0x66, 0xa8, 0x9e, 0x37, 0xd8, 0x96, 0xdd, 0x36, 0x22,
-  0x08, 0x96, 0x42, 0xfc, 0x6c, 0xd2, 0x6d, 0x44, 0x70, 0x12, 0x5f, 0x38,
-  0x5b, 0xe7, 0x5c, 0x30, 0x0c, 0x50, 0x25, 0x41, 0xf8, 0x7f, 0x45, 0xf8,
-  0xcb, 0x79, 0x46, 0xc6, 0x28, 0x8b, 0x1f, 0x31, 0x12, 0xab, 0x72, 0xc4,
-  0xa2, 0x93, 0xd8, 0x73, 0xa3, 0x07, 0x87, 0x66, 0x68, 0x11, 0x24, 0x10,
-  0xf4, 0xfd, 0x0d, 0x19, 0x66, 0xd9, 0xe7, 0xa0, 0xc5, 0x31, 0x71, 0xe9,
-  0xc4, 0x27, 0x6b, 0x43, 0x79, 0xb0, 0x42, 0xe1, 0x69, 0x4b, 0xfe, 0x24,
-  0x16, 0x68, 0x2f, 0xe2, 0x87, 0x66, 0x2f, 0x9b, 0x35, 0x0e, 0x5e, 0xf8,
-  0x41, 0x42, 0x29, 0x47, 0xbb, 0x07, 0x5e, 0xa1, 0x53, 0xfe, 0x2c, 0xde,
-  0xbc, 0x8f, 0x3e, 0x27, 0xa3, 0x42, 0x8f, 0xb4, 0xfc, 0x6b, 0xda, 0xdf,
-  0xb3, 0xed, 0x7f, 0x12, 0x01, 0x7c, 0x63, 0x48, 0xb6, 0x78, 0xb7, 0x67,
-  0x2e, 0xa2, 0x5f, 0x8d, 0xaa, 0xd6, 0xb2, 0xd1, 0xb2, 0x29, 0x48, 0x18,
-  0xa2, 0x80, 0xc1, 0xb1, 0xaa, 0x1c, 0xd6, 0x89, 0x6b, 0x08, 0x5b, 0x8a,
-  0xd4, 0x42, 0x9a, 0x87, 0x59, 0xc6, 0xae, 0xca, 0xc8, 0x02, 0x80, 0x10,
-  0x56, 0xb9, 0x40, 0x09, 0x87, 0xd9, 0x01, 0x3b, 0xd1, 0x1d, 0x78, 0x55,
-  0xee, 0xa7, 0xf2, 0x39, 0xb4, 0x8f, 0x28, 0x46, 0xb7, 0x2d, 0x91, 0x12,
-  0x74, 0x65, 0x58, 0x31, 0x23, 0x3e, 0x7a, 0x05, 0xdc, 0x37, 0x36, 0x37,
-  0xc4, 0xca, 0x82, 0x8e, 0x52, 0x76, 0x70, 0x08, 0x78, 0x6a, 0x4a, 0x00,
-  0x25, 0x62, 0xdb, 0x19, 0x45, 0xa4, 0x91, 0x03, 0x62, 0xed, 0xf6, 0x4c,
-  0x78, 0x08, 0x85, 0xaa, 0x46, 0x33, 0x9e, 0x68, 0x0b, 0x96, 0x30, 0x54,
-  0x9a, 0xbd, 0x25, 0x96, 0xc6, 0x58, 0x57, 0x75, 0xa9, 0x07, 0x69, 0xb2,
-  0xf1, 0xd9, 0xd6, 0x46, 0x3f, 0x78, 0xb8, 0xd3, 0x10, 0xba, 0x15, 0xe2,
-  0xd5, 0x87, 0x5e, 0x13, 0xde, 0x95, 0x69, 0x9d, 0x4c, 0x4d, 0x0b, 0x44,
-  0xee, 0x64, 0x23, 0xda, 0xd0, 0x28, 0x76, 0x75, 0xad, 0x40, 0x60, 0x94,
-  0xc3, 0x46, 0xa7, 0x93, 0x61, 0xe6, 0x98, 0xc4, 0x7d, 0x87, 0x1d, 0xe3,
-  0x6c, 0xd7, 0x07, 0x9e, 0x94, 0x1e, 0x39, 0x9e, 0xf0, 0x01, 0x51, 0x15,
-  0x36, 0xb1, 0x8f, 0x78, 0x16, 0x8e, 0x75, 0x22, 0xf9, 0xc6, 0x67, 0x9b,
-  0x7c, 0x61, 0x39, 0xfb, 0x9a, 0xd7, 0xf7, 0x46, 0xf2, 0x53, 0x1c, 0x7d,
-  0x23, 0xe1, 0x77, 0x3d, 0xbd, 0x41, 0xc8, 0xf6, 0xbe, 0x37, 0x92, 0xe7,
-  0xf0, 0x7c, 0x7c, 0x4e, 0x1e, 0x2b, 0x79, 0xe5, 0xf9, 0x36, 0x7d, 0xd4,
-  0x11, 0xa5, 0xfb, 0x1a, 0xa2, 0x56, 0xcc, 0x56, 0xd1, 0xbf, 0x5f, 0xe0,
-  0x71, 0xd5, 0x24, 0x36, 0x92, 0xf1, 0xd8, 0x30, 0xa1, 0x7a, 0x41, 0x15,
-  0x7d, 0xd7, 0x5c, 0x2c, 0x84, 0xb4, 0x6b, 0x61, 0xae, 0x15, 0x2b, 0x8d,
-  0x2c, 0x3d, 0xaa, 0x75, 0xb3, 0x49, 0x92, 0xbf, 0xaa, 0x3e, 0x1b, 0x27,
-  0x2f, 0x6c, 0xf0, 0x66, 0x16, 0x29, 0xb3, 0x33, 0xb3, 0x61, 0xeb, 0x62,
-  0xd0, 0xc3, 0x86, 0x7c, 0x7a, 0x9e, 0x0b, 0xd2, 0xf9, 0xac, 0x6c, 0x15,
-  0x58, 0x60, 0x34, 0x29, 0x73, 0xb9, 0x8b, 0xd5, 0x33, 0x68, 0xae, 0x62,
-  0xef, 0x12, 0x7d, 0xef, 0x34, 0x1b, 0x19, 0xda, 0xe8, 0x48, 0x10, 0x41,
-  0x13, 0x1b, 0x09, 0xf7, 0xd4, 0xf6, 0x14, 0x29, 0x77, 0xc5, 0x16, 0x80,
-  0x3a, 0xf9, 0x74, 0x84, 0xa7, 0x9c, 0x49, 0x5e, 0xe9, 0xbe, 0x1d, 0x7f,
-  0x34, 0x14, 0xa1, 0x70, 0x44, 0x61, 0xb3, 0x91, 0xdc, 0x5f, 0xba, 0x09,
-  0xce, 0xd3, 0x3a, 0x7b, 0xf2, 0x48, 0xc5, 0x4b, 0x5e, 0xa5, 0x5a, 0x91,
-  0xae, 0x5a, 0x46, 0x59, 0xbe, 0x87, 0xbc, 0x09, 0x75, 0x0f, 0x02, 0xa1,
-  0x96, 0x40, 0x38, 0x43, 0x09, 0x61, 0xce, 0x80, 0xc1, 0x6d, 0x6a, 0x04,
-  0xc9, 0xcb, 0x86, 0x92, 0x97, 0x9f, 0x3e, 0xf1, 0x06, 0x7d, 0x8f, 0xf9,
-  0xa2, 0xc3, 0x49, 0x65, 0x86, 0xdd, 0x19, 0x25, 0x4c, 0xb0, 0x20, 0xbf,
-  0xe0, 0x5c, 0xc2, 0xf6, 0xc1, 0x90, 0xa7, 0x32, 0x47, 0x6b, 0x6d, 0xbc,
-  0xef, 0x18, 0xf9, 0x87, 0xe0, 0xaf, 0x4a, 0x38, 0xdd, 0xae, 0xd7, 0x12,
-  0xb5, 0xa7, 0x3a, 0xe9, 0xfb, 0x3c, 0x08, 0x26, 0xec, 0xfb, 0xe9, 0x1a,
-  0x4e, 0x85, 0x8b, 0x55, 0x45, 0xb7, 0x8f, 0x3c, 0xc6, 0x42, 0x82, 0xa6,
-  0x44, 0x8b, 0x9c, 0xfe, 0xfa, 0xc5, 0x9b, 0x77, 0x2f, 0x8e, 0x7f, 0xab,
-  0x3a, 0x31, 0x67, 0xad, 0x04, 0x01, 0x1f, 0x72, 0xa9, 0x83, 0x31, 0x18,
-  0x07, 0x5c, 0x0a, 0xbc, 0x10, 0x00, 0x60, 0xea, 0xc6, 0x92, 0x23, 0x3f,
-  0x1d, 0x74, 0x85, 0x00, 0xa7, 0x38, 0xf6, 0x20, 0x27, 0x47, 0x88, 0x53,
-  0xdd, 0xcb, 0x2a, 0x48, 0x6b, 0x29, 0xeb, 0x3e, 0xd0, 0xf7, 0x67, 0x54,
-  0x55, 0x9e, 0x33, 0xc1, 0x2c, 0x08, 0x4d, 0x8c, 0xca, 0x2d, 0x70, 0x8e,
-  0x0d, 0x1c, 0x54, 0x40, 0x7c, 0xb9, 0xd0, 0x5a, 0xd6, 0xb8, 0xf2, 0xe2,
-  0xc2, 0x39, 0x32, 0xba, 0x1e, 0xbf, 0xc3, 0xc3, 0x7e, 0x50, 0x8f, 0xdf,
-  0xb3, 0x4e, 0x41, 0x27, 0x1f, 0x8c, 0x96, 0xd1, 0x71, 0xf7, 0x51, 0x53,
-  0x32, 0x32, 0xcf, 0x73, 0x19, 0x5b, 0x7c, 0x55, 0x81, 0x90, 0xe7, 0xc1,
-  0x12, 0xa9, 0x88, 0x8b, 0x11, 0xbd, 0x9b, 0x1c, 0xbd, 0xa5, 0xc5, 0x3a,
-  0x7d, 0x31, 0x99, 0xd8, 0xbb, 0xb0, 0xd6, 0x38, 0xb5, 0x40, 0x19, 0x23,
-  0x31, 0x92, 0xdd, 0x41, 0xb2, 0x1a, 0x2e, 0xc4, 0x51, 0x92, 0x0d, 0xc8,
-  0x8d, 0x6d, 0x74, 0xbe, 0xb3, 0xd5, 0xc2, 0x1c, 0x18, 0x23, 0xf1, 0xce,
-  0x36, 0x6a, 0xf1, 0xcc, 0x76, 0x09, 0x8f, 0xd0, 0xf3, 0x59, 0x92, 0xa2,
-  0xbd, 0xa6, 0xf4, 0xa3, 0xaf, 0x90, 0xab, 0x25, 0x19, 0x56, 0xa9, 0x82,
-  0xf0, 0xb7, 0xb2, 0x8e, 0x86, 0x71, 0x9b, 0xd0, 0x60, 0xf2, 0xea, 0xec,
-  0xc8, 0x2c, 0xdf, 0xbb, 0xb3, 0x6f, 0x06, 0x62, 0x90, 0xec, 0x62, 0x75,
-  0x91, 0x0d, 0xdf, 0x88, 0xbb, 0xd9, 0xb5, 0x45, 0xe5, 0xa8, 0xd8, 0xbc,
-  0x12, 0x46, 0x43, 0x10, 0xe7, 0x73, 0x9d, 0x8e, 0xd7, 0xec, 0xd2, 0xe3,
-  0xf1, 0xe3, 0xee, 0x2e, 0xf5, 0xd7, 0x27, 0xe2, 0xd2, 0x21, 0x01, 0xb9,
-  0x4b, 0x25, 0x1a, 0xc4, 0xfe, 0x6d, 0xbb, 0xfa, 0x8b, 0xec, 0x72, 0x03,
-  0xac, 0x5f, 0xca, 0x60, 0x3b, 0x01, 0x6c, 0xaf, 0x03, 0x31, 0xb6, 0x6e,
-  0x72, 0xaa, 0xca, 0x63, 0x81, 0x0e, 0xc5, 0xfa, 0xcb, 0x0e, 0x52, 0xb3,
-  0x63, 0x69, 0x35, 0xb3, 0x08, 0x14, 0xa1, 0x7c, 0xa8, 0x81, 0xaa, 0x88,
-  0x79, 0xa7, 0x88, 0x9e, 0x07, 0x85, 0x45, 0xba, 0x68, 0xd4, 0x78, 0x6e,
-  0x11, 0x19, 0xd5, 0xa9, 0xd8, 0xa3, 0xad, 0xc4, 0xb3, 0x36, 0x76, 0x37,
-  0x5e, 0x72, 0x07, 0xeb, 0x2a, 0xa1, 0x26, 0xcf, 0xf9, 0xdf, 0x38, 0xbd,
-  0xd3, 0x95, 0x5b, 0x95, 0x73, 0x36, 0x2d, 0xca, 0x1b, 0x1c, 0x83, 0xcc,
-  0x99, 0xab, 0x92, 0xf9, 0x57, 0x51, 0xb8, 0xac, 0x18, 0xd4, 0x10, 0xc3,
-  0x5c, 0x84, 0x95, 0x7b, 0x37, 0x27, 0x5b, 0xd6, 0x02, 0x7b, 0x46, 0x2e,
-  0x46, 0x6a, 0x2d, 0x92, 0xe1, 0xec, 0x41, 0x3a, 0x8b, 0x78, 0x19, 0xc3,
-  0x74, 0xf1, 0x4e, 0x6f, 0xa8, 0x31, 0x11, 0xa3, 0x9e, 0xde, 0xcc, 0x7a,
-  0x40, 0x72, 0xc9, 0xec, 0x44, 0x21, 0x90, 0x5c, 0x59, 0x80, 0x92, 0x24,
-  0x0e, 0xbf, 0x7f, 0xe9, 0xd5, 0xeb, 0xd4, 0x28, 0x4b, 0xa6, 0x17, 0x11,
-  0x48, 0xfb, 0x60, 0x68, 0x33, 0x17, 0x2a, 0x3c, 0x26, 0x27, 0xeb, 0x2c,
-  0xcb, 0x96, 0xb6, 0x96, 0x55, 0x4e, 0x19, 0xae, 0x14, 0xdd, 0x03, 0xaf,
-  0x2a, 0xd5, 0x11, 0xa3, 0x8a, 0xd4, 0x3d, 0xa3, 0x13, 0xd6, 0x31, 0xf6,
-  0x22, 0x37, 0x10, 0x10, 0x49, 0x6e, 0xdd, 0xdd, 0xa7, 0xfb, 0x9f, 0x9a,
-  0xbb, 0xf9, 0x8e, 0xaa, 0x48, 0xb9, 0x25, 0xe3, 0x22, 0x04, 0xd1, 0xe6,
-  0xce, 0x3c, 0xb7, 0xae, 0x06, 0xa6, 0x0b, 0x60, 0x53, 0x52, 0x43, 0x8d,
-  0x20, 0x03, 0x95, 0xe0, 0xa8, 0x84, 0x88, 0x79, 0x66, 0x11, 0x65, 0xc1,
-  0x24, 0x64, 0x94, 0xd6, 0x89, 0x23, 0xc9, 0xc6, 0x1e, 0x01, 0x1b, 0xc9,
-  0x8e, 0x8a, 0x31, 0x1b, 0x96, 0xf2, 0xf6, 0xe8, 0xec, 0xad, 0xf9, 0x67,
-  0x72, 0x76, 0xf2, 0xb6, 0x07, 0x12, 0xba, 0x61, 0x20, 0x30, 0x2c, 0x9a,
-  0x86, 0xaf, 0xd0, 0x32, 0xb7, 0xe1, 0x62, 0x29, 0x8e, 0x9f, 0xd9, 0x0e,
-  0x85, 0x17, 0x2d, 0x46, 0x7d, 0x40, 0xe0, 0xb4, 0x5a, 0xfe, 0x44, 0x2f,
-  0xcc, 0xfd, 0xb0, 0x76, 0x62, 0xbc, 0xe7, 0xeb, 0x29, 0x84, 0x26, 0x0c,
-  0x62, 0xc4, 0x8c, 0x2d, 0xa3, 0xa7, 0xd1, 0x1a, 0xa5, 0x0d, 0x2e, 0x01,
-  0x57, 0xb7, 0x4c, 0x33, 0x54, 0x7a, 0x60, 0x94, 0x39, 0xb0, 0xbc, 0xb6,
-  0x21, 0xce, 0xea, 0xc5, 0x1d, 0x28, 0xec, 0xd0, 0x20, 0xd9, 0x24, 0xc3,
-  0xb2, 0xc8, 0x25, 0xf7, 0xd0, 0xaf, 0x91, 0x85, 0xb6, 0xdc, 0x84, 0xeb,
-  0x72, 0x91, 0xb1, 0xed, 0x9f, 0xec, 0x40, 0x96, 0x39, 0xd5, 0x52, 0x3e,
-  0x39, 0x67, 0xd4, 0xa7, 0x10, 0x71, 0xcb, 0x62, 0x97, 0x62, 0x97, 0x37,
-  0xba, 0x55, 0x08, 0x64, 0x5f, 0x32, 0xa3, 0xa9, 0x36, 0x84, 0x0a, 0xbb,
-  0xa1, 0xa3, 0xf2, 0x40, 0x4d, 0xdb, 0xcc, 0x7b, 0xb7, 0xcb, 0x64, 0x00,
-  0xfb, 0x14, 0xe7, 0x2c, 0x94, 0x29, 0xa4, 0x38, 0x3e, 0x14, 0x77, 0xa5,
-  0x01, 0x95, 0x24, 0x4b, 0xb8, 0x84, 0xbb, 0x31, 0x15, 0x6f, 0xc5, 0x53,
-  0x51, 0x37, 0x1b, 0x41, 0x11, 0x20, 0xd5, 0xcb, 0xd2, 0xb6, 0x6c, 0xf9,
-  0x50, 0x92, 0xa6, 0x3b, 0x4c, 0xb7, 0x25, 0xcf, 0x85, 0x6c, 0x56, 0x85,
-  0x36, 0xbf, 0x2e, 0x7b, 0x17, 0xef, 0x6a, 0xf9, 0xf0, 0xf2, 0xb7, 0xd2,
-  0x4d, 0x47, 0x82, 0xa1, 0xe8, 0x2b, 0x67, 0x64, 0x28, 0xa9, 0x34, 0x5f,
-  0x0c, 0x9e, 0x2f, 0x79, 0x57, 0x08, 0x36, 0x5d, 0x61, 0x74, 0x0b, 0x8a,
-  0x86, 0x98, 0xd9, 0x45, 0x03, 0xec, 0x23, 0xa2, 0xb8, 0xf8, 0xd2, 0x9a,
-  0x95, 0x2c, 0xd0, 0x53, 0xe9, 0xdf, 0x10, 0x6d, 0x98, 0x6c, 0xc8, 0x14,
-  0x5f, 0xa0, 0x37, 0x8d, 0xb4, 0xe7, 0xf4, 0x92, 0x69, 0xd3, 0x9d, 0x29,
-  0x65, 0x54, 0x05, 0x13, 0x3d, 0xf5, 0x37, 0x4d, 0x02, 0x45, 0x28, 0x50,
-  0xd7, 0xf2, 0x82, 0x86, 0x71, 0x9d, 0xda, 0xf8, 0x5c, 0x02, 0xa8, 0x15,
-  0xcb, 0x74, 0x28, 0x04, 0x3c, 0x6b, 0x55, 0xcc, 0x91, 0xe4, 0xd0, 0x46,
-  0xa5, 0x52, 0x31, 0x70, 0x1d, 0x24, 0x85, 0x0f, 0x62, 0xd5, 0x22, 0xc9,
-  0x36, 0x34, 0x50, 0x7b, 0x76, 0xbd, 0xa8, 0x20, 0x44, 0xa0, 0x6f, 0xb1,
-  0x65, 0x8a, 0x84, 0xad, 0xb4, 0x95, 0x17, 0x39, 0xb0, 0x0a, 0xcb, 0x6a,
-  0x1b, 0x39, 0x94, 0x19, 0x95, 0xa1, 0x31, 0xd7, 0xa3, 0x0b, 0xc9, 0x8e,
-  0x18, 0x38, 0xac, 0x28, 0xc7, 0xc1, 0xb1, 0xa6, 0xf1, 0x71, 0x24, 0x6d,
-  0x51, 0xea, 0x41, 0x64, 0x3e, 0x42, 0xd5, 0x38, 0x16, 0x7b, 0xcc, 0x35,
-  0x3c, 0x29, 0x04, 0xb2, 0x2d, 0x8e, 0xc9, 0x89, 0xb1, 0xd5, 0x24, 0x69,
-  0x5f, 0x49, 0xe4, 0x43, 0xb8, 0x61, 0x5f, 0x06, 0xb4, 0xd6, 0xef, 0xe4,
-  0x64, 0xce, 0xaa, 0x91, 0x68, 0x91, 0xf6, 0xc9, 0x24, 0xcd, 0xa1, 0xdd,
-  0x5b, 0x9d, 0x35, 0xab, 0x65, 0x78, 0xcf, 0x3b, 0x28, 0x09, 0xdb, 0xa2,
-  0xba, 0x4a, 0xbd, 0x21, 0x02, 0xc0, 0xc9, 0x2d, 0xbf, 0x8f, 0x6f, 0x1c,
-  0xad, 0xd2, 0x17, 0xdc, 0xee, 0x7d, 0xa0, 0x43, 0x7a, 0xbd, 0x8c, 0x91,
-  0xd4, 0x38, 0x30, 0xf2, 0xc5, 0xce, 0x80, 0x31, 0x9d, 0x24, 0xab, 0x98,
-  0x1d, 0xef, 0xf6, 0x6d, 0xb3, 0x2e, 0xde, 0x78, 0xc3, 0x33, 0xa3, 0xd9,
-  0x54, 0x52, 0xec, 0x13, 0xbb, 0xb3, 0xf9, 0x0e, 0x95, 0x13, 0x71, 0x7e,
-  0xb7, 0x3e, 0xe9, 0x9d, 0xfa, 0x9a, 0x51, 0x0d, 0x76, 0x9f, 0xed, 0x8d,
-  0x77, 0x9f, 0x7c, 0x3a, 0xde, 0xdd, 0x19, 0xef, 0x0e, 0xfc, 0xb1, 0x71,
-  0x09, 0x14, 0xb3, 0xfb, 0x7e, 0x43, 0x5d, 0x63, 0x31, 0xe2, 0x7b, 0xfa,
-  0x4b, 0x09, 0x70, 0x0f, 0x8b, 0xbb, 0x31, 0x9e, 0x1b, 0x73, 0xf5, 0xd4,
-  0xa0, 0x8f, 0x05, 0xe5, 0x10, 0x06, 0x7e, 0x90, 0x91, 0x8b, 0x32, 0x62,
-  0x5a, 0x5c, 0xe6, 0x20, 0x23, 0x8d, 0x6f, 0xf7, 0xd6, 0x89, 0xce, 0x3a,
-  0x23, 0xf4, 0x72, 0xe9, 0x4a, 0x3a, 0x9d, 0xf1, 0x11, 0x29, 0x4b, 0x17,
-  0x64, 0x02, 0x8f, 0xab, 0xfb, 0x10, 0xb3, 0x6d, 0xb6, 0xf9, 0xd1, 0x5a,
-  0x1f, 0xd0, 0xe2, 0xec, 0xa1, 0xeb, 0xc2, 0x04, 0x12, 0x88, 0x64, 0x17,
-  0x87, 0x50, 0xf0, 0xe5, 0xf8, 0x41, 0x95, 0xb8, 0x9d, 0xab, 0xdc, 0xbb,
-  0x64, 0x08, 0x5e, 0xd1, 0xb2, 0xb0, 0x16, 0x76, 0x05, 0xb5, 0xac, 0xd1,
-  0x49, 0x5d, 0xc0, 0x48, 0x0b, 0xe4, 0xc8, 0x4c, 0x5a, 0x9b, 0xc3, 0x3b,
-  0x7f, 0xf9, 0x8b, 0xe3, 0x48, 0x13, 0x0a, 0x8a, 0xa1, 0x2a, 0x7a, 0x8f,
-  0x87, 0x94, 0xce, 0x48, 0x9e, 0x7d, 0x2e, 0x47, 0x34, 0x38, 0xf8, 0x91,
-  0x8c, 0xc3, 0x3f, 0x8f, 0x7e, 0x34, 0x7f, 0xfe, 0x3c, 0xd0, 0x43, 0xcd,
-  0xc0, 0x9f, 0x36, 0xd3, 0xda, 0x03, 0x69, 0xa6, 0x0d, 0x1a, 0x26, 0x16,
-  0x5b, 0x99, 0x39, 0x32, 0xf6, 0xeb, 0xec, 0xf0, 0x94, 0x0f, 0x63, 0xc5,
-  0xce, 0x70, 0xa2, 0x66, 0xf0, 0x21, 0x12, 0xeb, 0xc1, 0xc2, 0x09, 0x13,
-  0x83, 0xe9, 0xc4, 0xae, 0xa5, 0xf7, 0xca, 0xd0, 0x85, 0x3a, 0xdc, 0x30,
-  0x07, 0x48, 0x8d, 0x7c, 0x7b, 0x09, 0xfb, 0x0a, 0xe3, 0xcb, 0x18, 0xbe,
-  0xab, 0x82, 0xb4, 0x54, 0xa0, 0x04, 0x74, 0xa8, 0x61, 0x03, 0xf6, 0x38,
-  0xdc, 0x98, 0x21, 0x0d, 0x13, 0xc1, 0xdd, 0xe7, 0xcc, 0x9e, 0x46, 0x10,
-  0x9f, 0xcd, 0x32, 0x98, 0x85, 0x52, 0x6e, 0x5b, 0xe5, 0xf5, 0x07, 0xcc,
-  0x4f, 0x92, 0xd4, 0xbc, 0xd0, 0x21, 0x8c, 0xe7, 0x13, 0x2f, 0x97, 0x5c,
-  0xd0, 0xf1, 0x6c, 0x3e, 0xb9, 0xb7, 0xb2, 0xed, 0x92, 0x94, 0xd8, 0x76,
-  0x85, 0xbd, 0x88, 0x02, 0x7b, 0xca, 0x63, 0x55, 0xf6, 0x00, 0xbc, 0x59,
-  0x8e, 0x0f, 0x4a, 0x4e, 0x8d, 0x9c, 0x6b, 0x49, 0xc3, 0x03, 0x81, 0x4c,
-  0x38, 0x35, 0x9e, 0x6e, 0xbf, 0xad, 0xee, 0xad, 0x85, 0xda, 0x90, 0x30,
-  0x14, 0x93, 0xa6, 0xea, 0x10, 0x54, 0x61, 0xa5, 0x83, 0x50, 0x30, 0xab,
-  0xcc, 0x30, 0xa8, 0x40, 0x06, 0x21, 0xe3, 0xf0, 0xc9, 0x80, 0x93, 0x57,
-  0x65, 0xba, 0x4f, 0xa2, 0xba, 0x02, 0x1d, 0x34, 0x27, 0x8c, 0xce, 0xd9,
-  0xa6, 0x8e, 0xc5, 0xa7, 0x55, 0xc7, 0xbf, 0x86, 0x5b, 0xb3, 0x2d, 0x67,
-  0x56, 0xde, 0x14, 0xb0, 0x2c, 0x41, 0xb1, 0xe8, 0xb2, 0x6f, 0x1a, 0xfe,
-  0x22, 0x56, 0x1b, 0xc0, 0xbb, 0x54, 0xf7, 0x76, 0x42, 0x53, 0x4a, 0xfd,
-  0x21, 0xe7, 0x45, 0x1e, 0xe5, 0xcb, 0xfb, 0x17, 0x50, 0x81, 0x44, 0xb1,
-  0xa5, 0x2d, 0xce, 0x62, 0x6f, 0x98, 0x7a, 0x75, 0x79, 0x49, 0x78, 0x59,
-  0x61, 0xa4, 0x5e, 0x53, 0xbb, 0x84, 0x06, 0x29, 0xa4, 0x64, 0x18, 0x39,
-  0x8d, 0xbc, 0x05, 0x05, 0x4a, 0x9d, 0x09, 0xc3, 0xa9, 0x5d, 0xfd, 0x81,
-  0x5e, 0x60, 0x07, 0x94, 0x50, 0x93, 0xe3, 0xed, 0x24, 0x99, 0x2a, 0x1b,
-  0xe9, 0x40, 0xbb, 0x7c, 0x30, 0x6f, 0x22, 0xa5, 0x23, 0x99, 0x23, 0x92,
-  0xad, 0xa1, 0x9f, 0xf7, 0x85, 0x0a, 0x3b, 0x11, 0x38, 0xf5, 0xfa, 0x74,
-  0xfc, 0xf4, 0xd1, 0x78, 0xa7, 0x6b, 0x06, 0xe3, 0x90, 0x59, 0x8e, 0x4f,
-  0x60, 0x51, 0x64, 0xad, 0xc9, 0x12, 0x56, 0x3a, 0xa3, 0xa8, 0x09, 0xac,
-  0x6c, 0x7e, 0x21, 0x50, 0xc3, 0x8c, 0x15, 0x5b, 0x59, 0x10, 0x4e, 0xc5,
-  0x20, 0xa1, 0x49, 0x77, 0x6f, 0xde, 0x0b, 0x5a, 0xd2, 0xfb, 0x4a, 0xbd,
-  0x32, 0x3b, 0xf5, 0x25, 0xae, 0x47, 0xe3, 0xbd, 0x80, 0x38, 0xea, 0xf9,
-  0x68, 0x3a, 0x9d, 0x4a, 0x71, 0x5f, 0x16, 0x70, 0xb6, 0x45, 0xc0, 0xe8,
-  0xb1, 0x3b, 0x4c, 0x32, 0xd9, 0xb3, 0xc3, 0xc3, 0x43, 0x91, 0x85, 0xce,
-  0xae, 0x3a, 0x52, 0x89, 0xc5, 0xc7, 0x14, 0xa9, 0x2c, 0x96, 0x54, 0x58,
-  0x5f, 0xad, 0x1a, 0x10, 0x3c, 0x2b, 0x03, 0xca, 0xbe, 0x6d, 0x96, 0x78,
-  0x07, 0xff, 0xbc, 0x34, 0x9b, 0x3a, 0x74, 0xe1, 0x8e, 0x21, 0x5a, 0x6b,
-  0x95, 0x2d, 0xb9, 0x76, 0x1b, 0xbd, 0x28, 0x6d, 0x3b, 0xb0, 0x08, 0xdf,
-  0xbc, 0xe1, 0x23, 0x8d, 0xea, 0x00, 0xeb, 0x58, 0x88, 0xb0, 0xb6, 0x42,
-  0xdd, 0xa6, 0xb9, 0xc4, 0x96, 0xa5, 0xd2, 0x57, 0xb7, 0xed, 0x7b, 0xf6,
-  0x43, 0x96, 0xba, 0xbd, 0x25, 0x4f, 0x7a, 0xb7, 0x24, 0xba, 0xf8, 0xd0,
-  0xcc, 0xb0, 0xec, 0x9b, 0x87, 0x04, 0x79, 0x7e, 0x28, 0x87, 0xea, 0xf0,
-  0x0a, 0xb1, 0x61, 0x73, 0x6c, 0x8e, 0x19, 0x72, 0xcd, 0x8c, 0x44, 0xee,
-  0xa0, 0xc9, 0xe4, 0x78, 0xfb, 0xec, 0x78, 0x12, 0x44, 0xd1, 0xdf, 0xc1,
-  0xec, 0x4c, 0xe6, 0xe5, 0xb6, 0xd9, 0x94, 0x97, 0x88, 0x8a, 0x5b, 0x88,
-  0xa1, 0xc7, 0x9e, 0x12, 0xee, 0x25, 0x0a, 0x80, 0xb6, 0x2a, 0x34, 0xc1,
-  0xc6, 0xde, 0xff, 0x45, 0x56, 0x10, 0x4e, 0x0a, 0xc4, 0x00, 0x3a, 0x01,
-  0x52, 0xdd, 0xf4, 0xcd, 0x8b, 0x33, 0xa4, 0xcc, 0x34, 0x12, 0x26, 0x02,
-  0x33, 0x52, 0x68, 0x5d, 0xbf, 0xb1, 0xb8, 0x3b, 0xe4, 0xf9, 0x49, 0xa7,
-  0xae, 0x94, 0x9b, 0x0a, 0xfc, 0x0b, 0x49, 0xc9, 0x14, 0xc2, 0x5b, 0xb7,
-  0xfc, 0xa8, 0x1b, 0xca, 0x37, 0x4c, 0x97, 0xe6, 0xbb, 0xbb, 0xb1, 0x1b,
-  0xdd, 0x0d, 0x5e, 0x80, 0xf8, 0x71, 0x78, 0x2b, 0xd7, 0x81, 0x2e, 0xb4,
-  0x97, 0x9f, 0x82, 0xe1, 0xcf, 0xcb, 0xcb, 0x1c, 0xd6, 0x44, 0xda, 0x2f,
-  0xdf, 0x79, 0x17, 0x98, 0x5a, 0x79, 0x75, 0x14, 0x06, 0xaa, 0x85, 0xb0,
-  0xcf, 0x47, 0x04, 0x77, 0x8d, 0x5d, 0x53, 0xf5, 0x63, 0xd9, 0x24, 0xe0,
-  0x30, 0xc7, 0x96, 0xa0, 0x7e, 0xf3, 0xa9, 0x51, 0x33, 0xa6, 0x88, 0x20,
-  0xa1, 0xe4, 0xc3, 0xba, 0x1d, 0xb6, 0x9b, 0xb7, 0x50, 0x84, 0xd5, 0xca,
-  0x5a, 0x87, 0xfe, 0x0e, 0x92, 0x36, 0x64, 0x86, 0x6b, 0x6d, 0xf9, 0xed,
-  0x7c, 0xc8, 0xaf, 0xa1, 0xd5, 0x5d, 0x06, 0x17, 0xb7, 0xad, 0x5e, 0x1f,
-  0x01, 0x2a, 0x26, 0x31, 0x17, 0xa6, 0x25, 0x99, 0xa0, 0x4b, 0xae, 0x16,
-  0x2d, 0x6d, 0x34, 0x1b, 0x46, 0x8b, 0x09, 0x0d, 0xbb, 0xb5, 0x58, 0x19,
-  0x44, 0xb9, 0x5d, 0x99, 0xa3, 0x85, 0x15, 0xa8, 0xc1, 0xc3, 0x9d, 0xe6,
-  0xbe, 0x3e, 0x72, 0x35, 0x9f, 0x3a, 0x80, 0x82, 0xed, 0x7a, 0x50, 0xe4,
-  0xcb, 0x84, 0x1f, 0xeb, 0x26, 0x07, 0x60, 0x45, 0x8f, 0xa2, 0xc4, 0x82,
-  0xf0, 0x99, 0xab, 0x26, 0xc3, 0xe7, 0x83, 0x25, 0xc9, 0xcc, 0x46, 0xc0,
-  0x02, 0x30, 0x4d, 0x9d, 0xfc, 0xff, 0x63, 0xc3, 0xd5, 0x36, 0x1c, 0x47,
-  0x6c, 0x19, 0x16, 0xa1, 0x2a, 0xa8, 0x70, 0xe0, 0xdc, 0x57, 0x43, 0x37,
-  0x60, 0xd7, 0x6f, 0x58, 0x9b, 0x8c, 0xa7, 0xb7, 0x7e, 0x3c, 0xdf, 0x1c,
-  0xbd, 0x78, 0xd9, 0x8b, 0xc5, 0xf2, 0x7b, 0x94, 0x3e, 0x70, 0x96, 0xd1,
-  0xf3, 0x8c, 0x4b, 0x58, 0xad, 0xd4, 0xd8, 0x42, 0xbb, 0xa3, 0x84, 0xca,
-  0x10, 0x3c, 0x19, 0xe1, 0xd0, 0xe0, 0x84, 0xf4, 0x56, 0x72, 0xea, 0xb5,
-  0xae, 0xf8, 0x11, 0x0c, 0x62, 0xf5, 0x86, 0xb4, 0xcd, 0xf9, 0x5a, 0x1e,
-  0x21, 0x5f, 0x12, 0x21, 0xcf, 0xcb, 0xf3, 0xf2, 0xe2, 0x62, 0xcd, 0xed,
-  0xce, 0x68, 0xd6, 0x94, 0x57, 0xc5, 0x04, 0x33, 0xc0, 0x32, 0xe2, 0xbd,
-  0x73, 0x8c, 0x9e, 0xa0, 0x7a, 0xaa, 0x81, 0x24, 0x3b, 0x08, 0xd4, 0x5d,
-  0x70, 0xf1, 0x38, 0x85, 0xcb, 0xe9, 0x1d, 0xaa, 0x26, 0x12, 0x30, 0x85,
-  0xcd, 0xbd, 0x4e, 0xc5, 0x24, 0xc9, 0x85, 0x89, 0xea, 0xe4, 0x3f, 0xfe,
-  0xf3, 0xc7, 0x9f, 0x23, 0xa5, 0x99, 0x60, 0x34, 0xbc, 0xe2, 0x6c, 0x45,
-  0xf6, 0x7c, 0x34, 0x75, 0x36, 0xbf, 0x70, 0x45, 0x70, 0xa8, 0x50, 0x76,
-  0xa7, 0xa6, 0x20, 0x94, 0xad, 0x79, 0x16, 0x81, 0x58, 0xaf, 0x34, 0xa2,
-  0x8a, 0x50, 0x90, 0x25, 0x5b, 0x18, 0xc5, 0x49, 0xa8, 0xae, 0xa1, 0x8b,
-  0xc2, 0xb6, 0x85, 0x07, 0x9c, 0x25, 0x3c, 0x1a, 0x94, 0x80, 0xb8, 0xa0,
-  0xae, 0x2f, 0xfe, 0xdd, 0xdb, 0x57, 0xd6, 0x52, 0xea, 0x33, 0xe4, 0x2b,
-  0x43, 0xa4, 0x77, 0xa3, 0xec, 0x2e, 0x3b, 0x37, 0x0c, 0xa2, 0x56, 0xd4,
-  0x93, 0xd1, 0xa2, 0x4e, 0x9e, 0x2f, 0x0c, 0x79, 0xe7, 0x3d, 0x78, 0x35,
-  0xdf, 0xe0, 0xb5, 0x44, 0x5f, 0xb3, 0xc9, 0xe6, 0x5a, 0x05, 0x9d, 0xd3,
-  0x80, 0x25, 0x07, 0xba, 0x6d, 0x0b, 0x49, 0x28, 0x5f, 0x25, 0xb0, 0x26,
-  0x5c, 0x3f, 0x12, 0x81, 0x9d, 0x70, 0x5e, 0x3d, 0xd0, 0x50, 0x92, 0xf5,
-  0x57, 0x46, 0xf6, 0x34, 0xa3, 0x37, 0x3a, 0x3a, 0x94, 0xfd, 0x7a, 0x28,
-  0xd4, 0x54, 0x29, 0x44, 0x6d, 0x14, 0x43, 0x43, 0x45, 0x1e, 0x51, 0xd0,
-  0x0c, 0xbf, 0xf1, 0x67, 0x34, 0x56, 0xbc, 0x77, 0x1f, 0x58, 0x16, 0x84,
-  0x11, 0xca, 0x41, 0xe7, 0x99, 0x95, 0x9c, 0xd9, 0x8a, 0x9a, 0xb8, 0xe0,
-  0x57, 0x6c, 0x6d, 0x4e, 0xe5, 0x57, 0xa8, 0x06, 0x9d, 0x13, 0x7b, 0xad,
-  0xa6, 0x9d, 0x87, 0xb0, 0x60, 0xcc, 0x35, 0xa5, 0xf3, 0x47, 0x4e, 0xc6,
-  0x2e, 0x28, 0xf1, 0x72, 0x3e, 0xcf, 0xe6, 0xcc, 0xdd, 0x24, 0x2a, 0xcb,
-  0xb5, 0x19, 0x2b, 0x6f, 0x6c, 0xcb, 0xc0, 0x67, 0x0a, 0x0f, 0x41, 0x7c,
-  0x40, 0x0d, 0x17, 0x51, 0x57, 0x31, 0xc1, 0xc4, 0xb1, 0x72, 0x6c, 0x96,
-  0x45, 0xd4, 0x0f, 0xaa, 0xe6, 0x40, 0x55, 0x4f, 0x19, 0x84, 0x07, 0x6f,
-  0x53, 0x74, 0x06, 0xd8, 0x07, 0x6f, 0xf8, 0x91, 0x6c, 0x78, 0xa7, 0x39,
-  0xb8, 0x6a, 0x9e, 0x3c, 0x7e, 0xfc, 0x98, 0x5d, 0x35, 0x83, 0x57, 0xd4,
-  0xf1, 0xdb, 0xa3, 0xc3, 0x93, 0xd7, 0xaf, 0x8f, 0xde, 0xbc, 0x3c, 0x7a,
-  0xa9, 0x01, 0x23, 0xde, 0x4c, 0x1c, 0x75, 0x84, 0x33, 0x42, 0x90, 0xa1,
-  0x59, 0xe7, 0xdd, 0xc7, 0x3b, 0xa3, 0xbd, 0xc7, 0x3b, 0x89, 0xa1, 0xc5,
-  0xd4, 0xa6, 0xbd, 0xa5, 0x73, 0x80, 0x0e, 0x24, 0x57, 0x2b, 0x23, 0xa5,
-  0x01, 0x84, 0xbc, 0x01, 0xe0, 0x84, 0x62, 0x61, 0x15, 0x59, 0x03, 0x35,
-  0x3c, 0x12, 0x58, 0x30, 0x1e, 0x58, 0x84, 0x55, 0xe7, 0xef, 0x14, 0xb1,
-  0x87, 0x08, 0x74, 0x6f, 0x07, 0x1d, 0x8d, 0x93, 0xaf, 0x8c, 0xe0, 0x71,
-  0x51, 0xde, 0x32, 0x2d, 0x1e, 0x5e, 0x19, 0x79, 0x34, 0x0b, 0x3d, 0x9d,
-  0xed, 0xf7, 0xf1, 0xfa, 0x3e, 0xbf, 0xfe, 0x07, 0xba, 0xf8, 0x1f, 0x3f,
-  0x6b, 0xeb, 0xa5, 0xe6, 0x20, 0x53, 0xd1, 0x1a, 0x4d, 0x71, 0xec, 0x81,
-  0x4b, 0x98, 0xb0, 0x36, 0xff, 0xcd, 0x8b, 0x53, 0x3c, 0x6d, 0xb4, 0xfa,
-  0x93, 0x1f, 0xfe, 0xe6, 0x72, 0x46, 0xaf, 0x77, 0x35, 0x18, 0x52, 0x52,
-  0x63, 0xa9, 0x7a, 0x70, 0x11, 0xfa, 0xcc, 0x9d, 0x1c, 0x6b, 0xf5, 0x49,
-  0xbd, 0x5f, 0x68, 0x86, 0x08, 0x60, 0x05, 0x18, 0x29, 0x15, 0xf6, 0x94,
-  0x4d, 0xab, 0xb4, 0x36, 0x59, 0x88, 0x67, 0x41, 0xc6, 0x67, 0x0c, 0xe3,
-  0x36, 0xe7, 0xe2, 0x56, 0x79, 0x31, 0x63, 0xa0, 0xd0, 0x96, 0x5d, 0xb7,
-  0xa9, 0x56, 0x59, 0xcc, 0xe8, 0x3a, 0x5e, 0x17, 0x99, 0x02, 0x79, 0xb6,
-  0xca, 0x17, 0x69, 0x95, 0xcf, 0xef, 0x94, 0xc0, 0x6f, 0xb8, 0xc6, 0x37,
-  0x47, 0x5a, 0x91, 0xeb, 0xcc, 0xc1, 0xde, 0x97, 0x41, 0xd4, 0xaa, 0x2d,
-  0x58, 0x05, 0x22, 0x66, 0x4c, 0x2f, 0x71, 0x71, 0xf2, 0x62, 0xad, 0x85,
-  0x04, 0x6b, 0x9b, 0x0f, 0xac, 0x2c, 0x11, 0xcd, 0xe8, 0x85, 0x74, 0xfb,
-  0xd5, 0xab, 0xe3, 0xa3, 0xad, 0xe4, 0xab, 0xac, 0x91, 0xa4, 0x29, 0x0d,
-  0x50, 0xc6, 0x6d, 0xff, 0x2f, 0x24, 0x5b, 0x59, 0x44, 0x61, 0x49, 0x39,
-  0x8e, 0x86, 0x92, 0x89, 0x09, 0x8f, 0xe4, 0x0c, 0xcd, 0xc0, 0xe2, 0xcd,
-  0xa1, 0x29, 0xc2, 0x9d, 0xa7, 0xa1, 0x69, 0xea, 0x1e, 0x95, 0x9d, 0x8f,
-  0x84, 0xed, 0x2a, 0xc2, 0xc4, 0xd8, 0x89, 0x99, 0xec, 0xf7, 0xd6, 0x08,
-  0x04, 0x0c, 0x5a, 0x42, 0xa6, 0xd5, 0xdd, 0x9c, 0xd7, 0xcb, 0x39, 0xb8,
-  0x41, 0x14, 0xe2, 0x68, 0x9e, 0xb9, 0x44, 0x41, 0xa2, 0x7c, 0xa3, 0x38,
-  0x38, 0x3c, 0x58, 0x62, 0xa8, 0x98, 0xaf, 0xb7, 0x70, 0xdf, 0xe8, 0xc2,
-  0x21, 0x6a, 0x85, 0xff, 0xdd, 0xfe, 0x62, 0x1d, 0x1c, 0xdd, 0xd1, 0xad,
-  0x11, 0xc9, 0x75, 0x4e, 0x44, 0x51, 0x54, 0x7d, 0x58, 0x5d, 0x8e, 0x2a,
-  0x71, 0xb6, 0x28, 0x21, 0x22, 0xb9, 0x92, 0xe9, 0x4f, 0x35, 0xdd, 0xbf,
-  0x49, 0x7d, 0x49, 0x15, 0x1d, 0xa8, 0xec, 0xac, 0xbd, 0x5d, 0x32, 0xea,
-  0xd1, 0x06, 0x29, 0x47, 0x4b, 0xb9, 0x32, 0x57, 0x96, 0x9a, 0x88, 0x7c,
-  0x8b, 0x23, 0xd8, 0xdf, 0x22, 0x2c, 0xea, 0x78, 0xf1, 0xd8, 0x95, 0x94,
-  0xd9, 0x20, 0x53, 0x0c, 0x67, 0xa5, 0xd5, 0x51, 0x8f, 0x81, 0x64, 0xcb,
-  0x89, 0x67, 0x90, 0x8a, 0xc1, 0xb3, 0x4d, 0x87, 0xc5, 0xe7, 0x15, 0x64,
-  0x39, 0x4e, 0x18, 0xa3, 0x42, 0x49, 0x15, 0x63, 0x67, 0x47, 0x04, 0x25,
-  0xe9, 0xdd, 0x67, 0x41, 0x5d, 0x71, 0xdd, 0xef, 0xa6, 0xad, 0x84, 0x86,
-  0x92, 0xa2, 0x59, 0x3b, 0x12, 0x27, 0x81, 0x1e, 0x82, 0x24, 0xfa, 0xe9,
-  0x87, 0x9c, 0xf2, 0x1a, 0x57, 0x24, 0xc9, 0xa5, 0x85, 0x26, 0x72, 0xf1,
-  0x30, 0x6d, 0x49, 0x1a, 0x43, 0x6e, 0x63, 0xca, 0x86, 0xe8, 0x29, 0x21,
-  0x4a, 0x52, 0x12, 0xec, 0x05, 0x40, 0x1e, 0xd6, 0xf1, 0xcc, 0x29, 0x21,
-  0xc2, 0x9e, 0x16, 0x95, 0xd1, 0x90, 0x5e, 0x49, 0x62, 0x62, 0xa4, 0x82,
-  0x85, 0x39, 0xc6, 0x40, 0x00, 0x81, 0xa9, 0xee, 0x46, 0xf0, 0xf5, 0x36,
-  0xaa, 0x8c, 0xcb, 0x63, 0x8d, 0x8d, 0x12, 0xba, 0x40, 0x46, 0x81, 0x56,
-  0x9a, 0xc0, 0x94, 0x65, 0x79, 0x0c, 0x6f, 0xbb, 0xcc, 0xaf, 0xa3, 0x85,
-  0x77, 0x52, 0x3b, 0x30, 0x0a, 0xf2, 0xb0, 0xc3, 0x70, 0xb5, 0xc3, 0xd5,
-  0x23, 0xce, 0x66, 0x6d, 0x80, 0xdc, 0xca, 0xca, 0x06, 0x27, 0x78, 0x0e,
-  0x61, 0x15, 0x68, 0x76, 0xc5, 0x81, 0x21, 0xff, 0x64, 0xf0, 0x8d, 0x91,
-  0x7c, 0x0e, 0x06, 0xb6, 0xf6, 0x0b, 0x99, 0x65, 0x89, 0x3b, 0xb6, 0x28,
-  0x87, 0xf4, 0x8b, 0x22, 0x28, 0x0b, 0xc4, 0xd8, 0x06, 0x22, 0xb4, 0x37,
-  0xca, 0xb8, 0x6c, 0xbe, 0x4e, 0x18, 0x15, 0x6d, 0xf3, 0x67, 0x38, 0x01,
-  0x35, 0x4c, 0x1e, 0xc4, 0x90, 0x7e, 0x18, 0x1d, 0x52, 0xe7, 0xa3, 0x6f,
-  0xa8, 0xb9, 0xbf, 0x0e, 0xac, 0xbd, 0xb8, 0xfb, 0x95, 0x19, 0xf8, 0x27,
-  0xb1, 0x88, 0x21, 0xa7, 0x9f, 0x3a, 0xd8, 0x4f, 0x8a, 0x43, 0x51, 0xc8,
-  0x41, 0x4c, 0x15, 0x47, 0x64, 0x5b, 0x37, 0x9c, 0x9c, 0x31, 0x75, 0x58,
-  0x1d, 0xdc, 0x46, 0x2c, 0x98, 0x5b, 0x64, 0x89, 0x38, 0xc8, 0x62, 0x36,
-  0x2a, 0x2f, 0x46, 0x14, 0x60, 0x6d, 0x98, 0xff, 0x07, 0xc4, 0x32, 0x79,
-  0xa7, 0x8e, 0xf0, 0x46, 0x08, 0xdc, 0x75, 0x36, 0x8b, 0x85, 0x47, 0x51,
-  0x6e, 0x31, 0x49, 0x1d, 0x42, 0xf8, 0x9a, 0xa7, 0xc1, 0x1b, 0x79, 0x20,
-  0x46, 0x7d, 0x7a, 0x5d, 0x2b, 0x4f, 0x83, 0x13, 0x6a, 0x3e, 0x45, 0x60,
-  0x4a, 0xa3, 0xec, 0x8a, 0x21, 0xcb, 0xef, 0x34, 0x6b, 0x52, 0xdf, 0x16,
-  0x6c, 0x09, 0x26, 0xf3, 0xf5, 0x6a, 0xa9, 0x10, 0xdd, 0xeb, 0x43, 0x2d,
-  0xa1, 0xbc, 0x10, 0xf6, 0x36, 0x44, 0x6e, 0x8d, 0x27, 0x32, 0x6c, 0xcd,
-  0x96, 0xde, 0x36, 0x47, 0xec, 0x0e, 0xac, 0xd8, 0x66, 0xde, 0x16, 0xa1,
-  0x1b, 0xd4, 0xe5, 0x47, 0xb8, 0xd8, 0x1f, 0x5a, 0x2b, 0xe1, 0x8f, 0x94,
-  0x7c, 0xab, 0x90, 0xd1, 0x12, 0xcc, 0x95, 0x7c, 0x31, 0x8a, 0x82, 0x5b,
-  0x39, 0x37, 0x9a, 0xad, 0xc7, 0xea, 0x27, 0x7a, 0xf8, 0xb5, 0x55, 0x7d,
-  0x01, 0xe6, 0xb1, 0x7f, 0x33, 0xfa, 0x39, 0x50, 0x84, 0x03, 0x67, 0xab,
-  0xf0, 0x29, 0x25, 0x28, 0x69, 0xb5, 0xe8, 0xbd, 0xa6, 0xd3, 0x59, 0x68,
-  0x18, 0x77, 0x1a, 0x4b, 0x87, 0xa6, 0x66, 0xda, 0x70, 0xf9, 0x4f, 0x23,
-  0x5d, 0x93, 0xa3, 0x1f, 0xe8, 0x0c, 0x90, 0xe3, 0x07, 0x41, 0xd4, 0xf5,
-  0x01, 0xe7, 0x5c, 0x67, 0xb3, 0x81, 0xa5, 0x4d, 0xad, 0xc1, 0x15, 0xad,
-  0xee, 0xc3, 0x10, 0x1d, 0x7a, 0xcd, 0xe8, 0xb1, 0xd2, 0xbf, 0x11, 0xf8,
-  0x3e, 0xec, 0x16, 0xb1, 0xb7, 0x47, 0x3a, 0x62, 0xb9, 0x67, 0xbf, 0x9b,
-  0x0c, 0x81, 0x23, 0xaf, 0xc1, 0xa6, 0xfa, 0xc2, 0xa2, 0x7b, 0xe2, 0x95,
-  0xe9, 0xcc, 0x7e, 0x05, 0xad, 0x62, 0xf4, 0xc6, 0x10, 0xca, 0x41, 0xf2,
-  0x6f, 0x65, 0xc6, 0x79, 0xb8, 0xf7, 0xa4, 0xe1, 0x7e, 0xff, 0xe2, 0xed,
-  0x9b, 0x57, 0x6f, 0xbe, 0x3e, 0xb0, 0xcb, 0x0e, 0x66, 0xdb, 0xad, 0xfc,
-  0xe5, 0xd2, 0xe6, 0x6b, 0x82, 0x9f, 0xe6, 0x32, 0x7a, 0x49, 0x6f, 0xed,
-  0x10, 0xf8, 0x61, 0xe9, 0x6e, 0x60, 0xa3, 0x69, 0x95, 0xb1, 0x4f, 0x87,
-  0x03, 0xea, 0x35, 0xeb, 0x43, 0x52, 0x50, 0x69, 0xad, 0xa9, 0x20, 0x6e,
-  0x04, 0x7c, 0x62, 0x74, 0x0c, 0xe9, 0x00, 0x51, 0xd4, 0x9e, 0x28, 0x8a,
-  0x63, 0x32, 0x27, 0x7a, 0x2c, 0x7d, 0x92, 0x64, 0x04, 0x71, 0x8a, 0xdc,
-  0x85, 0x22, 0x57, 0x46, 0x6a, 0x2f, 0x93, 0x8e, 0xc9, 0x21, 0x44, 0x0a,
-  0xef, 0xab, 0xd5, 0x03, 0xa5, 0x16, 0x58, 0x4d, 0xb4, 0x58, 0xe7, 0x64,
-  0xe4, 0xb0, 0x4b, 0xa2, 0x5a, 0x79, 0xc4, 0xfe, 0x22, 0x75, 0x2e, 0xd2,
-  0x15, 0x9f, 0x60, 0x86, 0x05, 0x94, 0x4f, 0x5d, 0x4e, 0x89, 0x5d, 0x81,
-  0x07, 0x87, 0x68, 0xbb, 0x18, 0x6d, 0x56, 0x26, 0x58, 0x3b, 0xf5, 0xf8,
-  0xa5, 0xf9, 0x17, 0xf7, 0x58, 0x14, 0x53, 0x65, 0x9e, 0xb9, 0x8c, 0xaa,
-  0x5e, 0x4b, 0xef, 0x0b, 0xad, 0x8b, 0x39, 0x32, 0x5c, 0xad, 0x90, 0x6a,
-  0x98, 0x19, 0x3e, 0x64, 0x00, 0x1e, 0xdf, 0xa4, 0x73, 0xc5, 0x42, 0xda,
-  0x7c, 0x99, 0x3c, 0x87, 0xf0, 0x7e, 0x59, 0x56, 0x77, 0x9f, 0x07, 0x68,
-  0x99, 0x54, 0xac, 0x18, 0x0f, 0xd9, 0x88, 0x3f, 0x38, 0xf0, 0x48, 0x8c,
-  0x70, 0x71, 0xc4, 0xc2, 0x74, 0x5d, 0x33, 0x63, 0xc1, 0xec, 0x0d, 0x6a,
-  0xa1, 0x5c, 0x52, 0xc9, 0x0c, 0x17, 0xa0, 0xed, 0xc5, 0xe8, 0xb1, 0x08,
-  0xca, 0x71, 0x00, 0x54, 0xdd, 0x3a, 0x5f, 0x40, 0x5b, 0xa0, 0xf8, 0x30,
-  0xe9, 0x29, 0x92, 0xdb, 0x97, 0x58, 0xa6, 0x0a, 0x19, 0x4e, 0xad, 0x04,
-  0x96, 0xd1, 0x0e, 0xcc, 0x38, 0x07, 0x7d, 0x7d, 0x76, 0xe5, 0x66, 0x19,
-  0x01, 0xa6, 0xa6, 0x25, 0x19, 0x9c, 0xf7, 0x36, 0x6c, 0x3b, 0x19, 0xe8,
-  0x7c, 0x11, 0x88, 0x1c, 0x48, 0x7b, 0xeb, 0x26, 0x49, 0xab, 0xc7, 0x2f,
-  0xe7, 0x12, 0xfc, 0x6f, 0x9a, 0xce, 0x2b, 0x05, 0x4f, 0x6a, 0x05, 0xc4,
-  0x82, 0x88, 0x97, 0xab, 0xf3, 0xc5, 0xec, 0x71, 0xf2, 0xdc, 0xfc, 0x08,
-  0x44, 0x68, 0x0a, 0x28, 0x4e, 0x26, 0x87, 0x90, 0xa3, 0xc1, 0x16, 0x21,
-  0x0f, 0x30, 0x46, 0x92, 0x57, 0xcf, 0x6c, 0x7f, 0xcf, 0xec, 0xe2, 0x6d,
-  0xaa, 0xc0, 0xbd, 0x33, 0x73, 0x42, 0x1a, 0x8a, 0x4b, 0xec, 0x01, 0x99,
-  0x72, 0x46, 0x2b, 0xcc, 0x79, 0x77, 0xef, 0xd3, 0x04, 0x79, 0x29, 0xaf,
-  0x5f, 0x3e, 0x36, 0x5c, 0x2d, 0x9b, 0x7e, 0xa8, 0x57, 0x0b, 0x1b, 0x06,
-  0x0b, 0x9a, 0x6d, 0xa4, 0x90, 0x46, 0x00, 0x0f, 0x62, 0x06, 0x3e, 0xcf,
-  0xa7, 0xc8, 0x0b, 0x1d, 0xb6, 0x5c, 0x97, 0x17, 0xea, 0xba, 0xf4, 0xac,
-  0x0c, 0x56, 0x28, 0xa0, 0x58, 0x12, 0x0e, 0xb8, 0x8a, 0x78, 0xa5, 0xcc,
-  0x1a, 0x98, 0xee, 0x51, 0x62, 0xc6, 0x68, 0x5d, 0x6b, 0x6d, 0xf1, 0x4f,
-  0xdb, 0xee, 0x8c, 0x2b, 0x10, 0xee, 0x73, 0x0b, 0x8c, 0x13, 0xd5, 0x45,
-  0x26, 0x5b, 0x8e, 0x7b, 0x76, 0x1d, 0x9d, 0x46, 0x97, 0x34, 0xaa, 0x29,
-  0x01, 0x4d, 0x8d, 0x93, 0x97, 0xce, 0x55, 0x4c, 0xf8, 0x56, 0x81, 0x10,
-  0x37, 0x5b, 0xc5, 0x1d, 0xaa, 0xed, 0x44, 0x0c, 0x0b, 0x38, 0xf4, 0xcd,
-  0xe4, 0xcc, 0x77, 0x9d, 0x58, 0x2f, 0x89, 0x92, 0x9d, 0x1d, 0x76, 0xe0,
-  0x98, 0xc8, 0x0b, 0x51, 0x84, 0x0b, 0x8e, 0x09, 0x27, 0xdd, 0x08, 0xad,
-  0x01, 0x92, 0x3b, 0x13, 0x45, 0x8f, 0x64, 0xb5, 0x76, 0x68, 0x4a, 0xf2,
-  0x02, 0x8c, 0xbc, 0x7b, 0x44, 0x25, 0x2e, 0x33, 0x63, 0xe3, 0x99, 0x8c,
-  0x42, 0xb0, 0x67, 0xa8, 0x3d, 0x5b, 0x92, 0x9c, 0xeb, 0x37, 0x94, 0x6b,
-  0x47, 0xc7, 0x65, 0x1f, 0x39, 0xf7, 0xdb, 0xe6, 0x67, 0xb0, 0xfa, 0x18,
-  0x03, 0x76, 0x56, 0x4d, 0x2d, 0x19, 0x0c, 0x3c, 0x00, 0xa3, 0xcd, 0x5f,
-  0xb2, 0xaa, 0x94, 0x5c, 0xa3, 0x2d, 0x9a, 0xe9, 0x75, 0x99, 0xcf, 0x12,
-  0x01, 0x68, 0xda, 0x56, 0x1c, 0xba, 0x80, 0x3f, 0xb8, 0xbb, 0x9a, 0x40,
-  0x83, 0x00, 0x42, 0x67, 0x9a, 0xa4, 0xa5, 0xb1, 0x88, 0x39, 0x0f, 0x0b,
-  0x95, 0x8c, 0xd9, 0x81, 0x1c, 0x35, 0x93, 0xd9, 0x44, 0xed, 0xbe, 0x5d,
-  0xbd, 0x85, 0x22, 0x53, 0x24, 0x3f, 0x81, 0x01, 0xa4, 0x54, 0x83, 0x8f,
-  0x1a, 0x91, 0x88, 0x02, 0x78, 0x46, 0x6b, 0xcb, 0xe6, 0x3c, 0xea, 0xd8,
-  0x93, 0x8c, 0x50, 0xb0, 0x33, 0x7e, 0xd6, 0x53, 0x88, 0xa0, 0x05, 0x4a,
-  0x88, 0x1c, 0x4d, 0x9b, 0x65, 0x4c, 0x72, 0x0f, 0xcc, 0x13, 0x98, 0x29,
-  0x80, 0xf1, 0x34, 0x7c, 0x21, 0xe8, 0x1c, 0x4f, 0x6e, 0xe3, 0x09, 0x29,
-  0x1c, 0xc8, 0x34, 0x62, 0x84, 0x62, 0xbe, 0x94, 0x28, 0x38, 0xd2, 0xc6,
-  0x3e, 0x70, 0x22, 0x32, 0x90, 0x68, 0x28, 0xf2, 0x24, 0xa2, 0x6d, 0x3a,
-  0x38, 0x0c, 0x6b, 0x6d, 0x76, 0x02, 0x8a, 0x80, 0x07, 0x78, 0xb8, 0x36,
-  0x9a, 0x45, 0x8d, 0x95, 0x22, 0x74, 0xa9, 0x40, 0x62, 0x97, 0x9e, 0x6b,
-  0x17, 0xae, 0xc0, 0xc0, 0x88, 0x8c, 0x21, 0x4c, 0x84, 0x0c, 0x28, 0x7e,
-  0x36, 0x05, 0x96, 0x37, 0xc5, 0x65, 0x05, 0xc3, 0x2e, 0x25, 0xc3, 0xa6,
-  0x31, 0xff, 0x6b, 0x8c, 0x3c, 0xfd, 0x50, 0x88, 0x27, 0x4f, 0xc6, 0x3b,
-  0xc3, 0xd6, 0xaa, 0x48, 0xf0, 0x4e, 0x3c, 0x12, 0x62, 0xb4, 0x33, 0x94,
-  0x6d, 0xda, 0x1d, 0xef, 0xf4, 0x61, 0xf2, 0xd3, 0x3e, 0xb5, 0xd0, 0x23,
-  0x5b, 0xfb, 0x63, 0xde, 0xf4, 0x15, 0x7c, 0x16, 0x32, 0xf3, 0x80, 0xe4,
-  0x3c, 0x25, 0x5b, 0x0c, 0xef, 0xd9, 0xac, 0xd5, 0xd0, 0x5a, 0x79, 0xc5,
-  0x2f, 0x8b, 0xcd, 0xc3, 0xdd, 0x15, 0xd7, 0x31, 0xfe, 0xda, 0xeb, 0x12,
-  0x9d, 0xf9, 0xfa, 0x21, 0x44, 0x17, 0x99, 0xcb, 0xee, 0xda, 0x61, 0xb4,
-  0x32, 0xd4, 0x76, 0x86, 0xae, 0xbb, 0x1d, 0x5b, 0xd6, 0x8d, 0xc7, 0xa3,
-  0xc7, 0x22, 0x8c, 0xc6, 0x09, 0x0b, 0x6d, 0xd1, 0x1b, 0x48, 0xf3, 0x2b,
-  0xab, 0x11, 0x6c, 0x0d, 0x66, 0xb3, 0x02, 0xdd, 0x2f, 0xb6, 0x19, 0x24,
-  0xa6, 0xe5, 0x75, 0x0d, 0xa5, 0x9c, 0x10, 0xf5, 0x41, 0x9d, 0x70, 0x75,
-  0xfb, 0x25, 0x3c, 0xea, 0x68, 0xba, 0x12, 0x11, 0xc8, 0x9e, 0x35, 0x2d,
-  0xd0, 0x9f, 0x58, 0xd2, 0x77, 0x4b, 0x22, 0x40, 0x88, 0x15, 0x8d, 0x5f,
-  0x73, 0x8e, 0x06, 0xc7, 0x40, 0x53, 0xb1, 0xd1, 0x79, 0x08, 0x91, 0xe2,
-  0xb3, 0xd6, 0x3c, 0xf5, 0x5a, 0xbb, 0xaa, 0x01, 0x00, 0xe0, 0xca, 0x6f,
-  0x73, 0x55, 0x2c, 0x1d, 0x63, 0x0c, 0x8c, 0x9f, 0x4f, 0x95, 0xd1, 0x90,
-  0xa5, 0x81, 0x56, 0x0e, 0x11, 0xea, 0x61, 0xb3, 0xdb, 0xd9, 0x16, 0x43,
-  0x9f, 0x25, 0x49, 0x8f, 0xd9, 0x5a, 0x37, 0x57, 0xb4, 0x52, 0xac, 0x50,
-  0x3f, 0xf2, 0x67, 0xcf, 0x76, 0x3c, 0xb8, 0xf0, 0x5a, 0x80, 0x63, 0xd8,
-  0xa9, 0xc4, 0xc7, 0xb3, 0x19, 0x3f, 0x8c, 0xb8, 0x77, 0x86, 0xd1, 0xd1,
-  0x81, 0xdc, 0x7c, 0xe2, 0x6f, 0x81, 0x82, 0x3e, 0x8b, 0x10, 0xd7, 0xaf,
-  0x3a, 0x0b, 0x7b, 0xeb, 0x42, 0x37, 0xc2, 0x33, 0xb8, 0x3f, 0xd6, 0xde,
-  0xfa, 0xd6, 0x2a, 0x60, 0x67, 0xbd, 0x45, 0xeb, 0x1e, 0xb6, 0x5a, 0x3d,
-  0x6b, 0xb3, 0xab, 0x47, 0xd1, 0xe7, 0x6d, 0xfe, 0x7a, 0x75, 0xf7, 0x56,
-  0xd6, 0x2f, 0xe0, 0x57, 0x3d, 0x47, 0x75, 0x3f, 0xbe, 0x9a, 0xbf, 0x46,
-  0x3e, 0xfb, 0x28, 0x01, 0xad, 0x73, 0xf2, 0x83, 0xfd, 0xda, 0x97, 0x70,
-  0x46, 0x17, 0x6e, 0x45, 0x02, 0xab, 0xfa, 0x37, 0xba, 0x31, 0xf6, 0x6c,
-  0x72, 0xd6, 0x90, 0x0b, 0x09, 0x2d, 0x40, 0x48, 0xaa, 0xf8, 0x8e, 0x69,
-  0xe9, 0xf7, 0xfd, 0x38, 0x1f, 0x2b, 0x11, 0x20, 0x75, 0x2a, 0x34, 0xd3,
-  0x42, 0x48, 0xb3, 0x3d, 0x92, 0x91, 0x10, 0x57, 0xa2, 0xaa, 0xa3, 0xa6,
-  0x1b, 0x94, 0x55, 0x7b, 0x31, 0x6f, 0x46, 0x93, 0xeb, 0xe9, 0x50, 0xc4,
-  0x0d, 0xbb, 0x52, 0x01, 0xb8, 0x34, 0x99, 0x83, 0x05, 0x35, 0x14, 0xbe,
-  0x5f, 0x42, 0x0b, 0x27, 0x04, 0x69, 0x96, 0x19, 0xd5, 0x53, 0x8f, 0x5d,
-  0xf4, 0xf9, 0x0f, 0xa7, 0x19, 0x85, 0x20, 0xb0, 0xe9, 0x87, 0x5a, 0xa7,
-  0x24, 0xc9, 0x89, 0x9c, 0x7f, 0xd6, 0x5a, 0xa3, 0x7b, 0xa4, 0xe2, 0x8e,
-  0xa9, 0x85, 0xe1, 0xf5, 0x81, 0x8a, 0xf5, 0xef, 0xef, 0x5e, 0x1d, 0xfa,
-  0x2a, 0x03, 0x7b, 0x80, 0xd7, 0xba, 0x59, 0x87, 0x02, 0x4e, 0xc1, 0xa0,
-  0xd5, 0x58, 0x57, 0x49, 0x42, 0xd0, 0x78, 0xe1, 0xd6, 0xde, 0x96, 0x5c,
-  0x34, 0xa5, 0x6b, 0xb9, 0xbf, 0x29, 0x3e, 0xee, 0x8c, 0xee, 0xe9, 0x19,
-  0xdd, 0xff, 0xad, 0xcf, 0xe8, 0xfe, 0xc7, 0x9e, 0x51, 0xe1, 0x6f, 0xf1,
-  0x13, 0xda, 0x77, 0x5a, 0xbb, 0xa3, 0xf3, 0x4e, 0xaf, 0x78, 0xca, 0x3a,
-  0x75, 0x1b, 0x19, 0x34, 0x67, 0x24, 0x52, 0xf0, 0x88, 0x85, 0xf5, 0x58,
-  0x4e, 0x2c, 0x9f, 0x61, 0x05, 0xc0, 0x1d, 0x26, 0xaf, 0xb8, 0x12, 0x89,
-  0x0f, 0x2b, 0x7b, 0xcc, 0xa8, 0x02, 0xe2, 0xae, 0x73, 0x99, 0x86, 0x11,
-  0xe4, 0x91, 0x7c, 0x0a, 0x98, 0xc9, 0x39, 0x07, 0xfa, 0xc3, 0x57, 0xc8,
-  0xf2, 0xb3, 0xc8, 0x8c, 0xd5, 0x8a, 0xbc, 0xa1, 0xc9, 0x8b, 0x25, 0x69,
-  0x2e, 0xbb, 0xe3, 0x5b, 0x35, 0xb3, 0x46, 0xd4, 0xff, 0x2a, 0xa3, 0x45,
-  0x36, 0x32, 0x9e, 0x24, 0x1c, 0x75, 0x86, 0x83, 0x86, 0x59, 0x80, 0x9f,
-  0x83, 0xf2, 0x2b, 0x35, 0x39, 0xed, 0x25, 0x86, 0xc0, 0x2f, 0x83, 0x62,
-  0x67, 0xe7, 0x77, 0x4d, 0x24, 0xfd, 0x95, 0x2a, 0x69, 0x61, 0x19, 0x36,
-  0x6b, 0x09, 0xaf, 0x7f, 0x64, 0x16, 0x72, 0x6b, 0x98, 0x20, 0x48, 0x99,
-  0x16, 0x01, 0x09, 0x8a, 0xd6, 0x23, 0x48, 0x35, 0xa9, 0x2e, 0x61, 0x6b,
-  0x97, 0xbc, 0xb7, 0x20, 0x53, 0xf0, 0x97, 0x4c, 0xc3, 0xbb, 0x35, 0x76,
-  0x5a, 0x60, 0xb7, 0xa3, 0x38, 0xa7, 0x9d, 0x22, 0x1b, 0x08, 0x21, 0x82,
-  0x0b, 0x1e, 0x67, 0x2b, 0x4a, 0x79, 0x94, 0x72, 0x70, 0x75, 0xb7, 0xa4,
-  0x02, 0x23, 0x41, 0x09, 0x77, 0x6c, 0xa0, 0x47, 0x03, 0x39, 0x57, 0x05,
-  0x25, 0xc7, 0x5d, 0x57, 0xa9, 0x12, 0x77, 0x1e, 0x73, 0x0e, 0x35, 0xb6,
-  0x6a, 0xc1, 0x1f, 0x6b, 0x1b, 0xe6, 0x70, 0x08, 0x2e, 0xce, 0x47, 0x51,
-  0x0f, 0x22, 0x5f, 0xc5, 0xcb, 0x44, 0xd9, 0x17, 0xa7, 0xe4, 0xf6, 0xe1,
-  0x1e, 0xc4, 0x3a, 0xcf, 0x66, 0x48, 0x2b, 0x23, 0x41, 0x8d, 0x84, 0xb3,
-  0xb3, 0x2c, 0x3f, 0xe4, 0x59, 0x90, 0xf0, 0x3e, 0xa3, 0xba, 0x3a, 0xac,
-  0x66, 0x3b, 0xec, 0xfe, 0x16, 0x5b, 0x50, 0xb8, 0xfd, 0xf1, 0x78, 0x1c,
-  0x81, 0x0a, 0xba, 0xce, 0xb3, 0x9b, 0x96, 0x9f, 0x52, 0x46, 0x36, 0xb4,
-  0xa5, 0x11, 0xe9, 0xdb, 0xd1, 0x35, 0x56, 0xc8, 0x34, 0x79, 0x0e, 0xd4,
-  0xe2, 0x9e, 0x54, 0x3d, 0xc7, 0x56, 0xfc, 0xa7, 0xbd, 0x65, 0x6e, 0x15,
-  0x5f, 0x8d, 0x82, 0xd0, 0xbb, 0x2a, 0x4f, 0x43, 0x58, 0x6c, 0xab, 0x3b,
-  0xaa, 0x32, 0xea, 0x73, 0x4d, 0x6c, 0x34, 0xe7, 0x76, 0xe5, 0xb5, 0x54,
-  0xf7, 0x24, 0x5d, 0x3e, 0x0c, 0xa5, 0xe1, 0x6e, 0xda, 0x3c, 0x47, 0xee,
-  0x0c, 0x95, 0x67, 0xcc, 0xd5, 0x3a, 0xcd, 0xb4, 0xfa, 0xa7, 0x96, 0x29,
-  0x22, 0x53, 0x71, 0x24, 0x24, 0x53, 0x76, 0xc4, 0xab, 0x59, 0xe8, 0x45,
-  0x10, 0xba, 0x42, 0x92, 0x89, 0x4e, 0x30, 0x1e, 0x0c, 0xa3, 0xfb, 0xea,
-  0x87, 0xa8, 0xf8, 0x33, 0x31, 0x1a, 0x98, 0x94, 0xc4, 0x16, 0x47, 0x95,
-  0x43, 0xb7, 0x5f, 0x53, 0xe6, 0xd4, 0x02, 0x19, 0x3a, 0x97, 0x1f, 0x97,
-  0x78, 0xa4, 0x99, 0x49, 0xe3, 0xb5, 0x5f, 0xbe, 0x20, 0x80, 0x71, 0x71,
-  0x18, 0xd9, 0x68, 0x98, 0x8b, 0xea, 0x45, 0xb7, 0x98, 0x6f, 0x64, 0x46,
-  0x14, 0x42, 0x41, 0xd9, 0x15, 0x02, 0xf2, 0x88, 0xc5, 0x08, 0x32, 0x88,
-  0x80, 0x81, 0x74, 0x81, 0xa2, 0x2c, 0x0c, 0x27, 0x56, 0x7f, 0x5c, 0x67,
-  0xdb, 0x86, 0x60, 0xeb, 0xed, 0xba, 0x9e, 0xa3, 0xbf, 0x9a, 0xc0, 0x2e,
-  0xd7, 0x5c, 0x54, 0xec, 0xa3, 0xe9, 0xd4, 0x5a, 0x9d, 0xa6, 0x78, 0xb7,
-  0xc5, 0xcc, 0x6d, 0x09, 0x6d, 0x29, 0x0b, 0xd9, 0x75, 0xbe, 0x30, 0xc0,
-  0x3f, 0x55, 0x79, 0xf1, 0x51, 0x0c, 0x98, 0xf5, 0xb8, 0x80, 0x55, 0xdb,
-  0x8e, 0xab, 0xb1, 0x03, 0x44, 0xff, 0xaa, 0x2f, 0x65, 0x4e, 0xce, 0xa9,
-  0x17, 0x33, 0x62, 0x16, 0xc4, 0x26, 0x96, 0xa1, 0xfc, 0x9c, 0x85, 0x2b,
-  0x33, 0x9b, 0x45, 0xee, 0x65, 0x94, 0xb7, 0x8d, 0x40, 0xe9, 0xf5, 0xb9,
-  0x54, 0xbc, 0xa9, 0x21, 0x05, 0xef, 0xc0, 0x81, 0xb9, 0xde, 0xdc, 0xdc,
-  0x8c, 0xd7, 0xf9, 0x54, 0x7e, 0xe3, 0x6a, 0xd3, 0x27, 0x86, 0x62, 0x8f,
-  0xf3, 0x62, 0x75, 0x9b, 0x78, 0xd8, 0x59, 0xb6, 0xfc, 0xa7, 0xb5, 0x83,
-  0x7d, 0xf7, 0xf6, 0xab, 0xa1, 0x35, 0x18, 0x49, 0x58, 0x2f, 0x1c, 0x6e,
-  0x75, 0x28, 0x15, 0x66, 0x39, 0xe3, 0x99, 0x01, 0x9c, 0xff, 0xf0, 0xc5,
-  0xe9, 0xfb, 0x37, 0x47, 0x67, 0xef, 0xdf, 0xbe, 0xf8, 0x1e, 0x4b, 0xc8,
-  0x56, 0x1f, 0x73, 0x1b, 0xc2, 0x51, 0x5a, 0x95, 0x25, 0x4a, 0xc1, 0xbd,
-  0x26, 0xc3, 0x4c, 0x5e, 0x10, 0x6c, 0x55, 0xac, 0x52, 0xa7, 0xc3, 0xe2,
-  0x93, 0x71, 0x9a, 0xb1, 0x1c, 0x24, 0xad, 0xf5, 0xfa, 0x90, 0x55, 0x45,
-  0x36, 0x1f, 0x97, 0xd5, 0x25, 0xc8, 0x70, 0xfb, 0xa5, 0xf0, 0xce, 0x68,
-  0x73, 0xdb, 0x12, 0xee, 0x05, 0x8b, 0xdd, 0x75, 0x75, 0x01, 0x24, 0xa8,
-  0x4f, 0x1e, 0x58, 0xc8, 0xdd, 0x23, 0xcd, 0x47, 0xc4, 0xfc, 0x96, 0xd7,
-  0x8f, 0xd6, 0xdc, 0x6c, 0x4d, 0x4b, 0xdb, 0x92, 0x6a, 0xcd, 0x44, 0x41,
-  0x64, 0x59, 0xf2, 0x83, 0xf8, 0x38, 0xeb, 0x7d, 0x7e, 0x37, 0x8c, 0x00,
-  0xcb, 0x90, 0xbc, 0x58, 0x5a, 0x88, 0x1e, 0x4a, 0x1c, 0x46, 0xf4, 0x61,
-  0xf4, 0x38, 0x8b, 0x29, 0x2b, 0xd0, 0x8c, 0xac, 0x91, 0xa2, 0x0f, 0x7e,
-  0x67, 0xf4, 0x24, 0xd4, 0x3c, 0x51, 0x99, 0xde, 0x9b, 0xf3, 0x13, 0x99,
-  0xf3, 0x93, 0x7f, 0x6a, 0xce, 0x4f, 0xfe, 0x89, 0x39, 0x3f, 0xfa, 0x8d,
-  0xe7, 0xfc, 0x28, 0x3a, 0x67, 0xaf, 0x97, 0xd1, 0xdf, 0x31, 0xe7, 0xbf,
-  0xaf, 0x8a, 0x0f, 0x23, 0x33, 0x5e, 0xdc, 0xc0, 0x23, 0xb9, 0xbb, 0x7b,
-  0x54, 0x42, 0x9b, 0x54, 0x45, 0xd6, 0x43, 0x86, 0x55, 0x16, 0x1c, 0x77,
-  0x7a, 0x4d, 0x33, 0x04, 0x5d, 0xc9, 0x54, 0x8e, 0xbc, 0xef, 0xca, 0xf9,
-  0xdd, 0x38, 0xfc, 0x1c, 0x38, 0x0a, 0xf5, 0x14, 0x96, 0x10, 0xa8, 0x0e,
-  0x03, 0x19, 0x8d, 0x36, 0x3b, 0xd0, 0x72, 0x6c, 0x74, 0xd2, 0xd3, 0x10,
-  0x3f, 0x6e, 0x4a, 0x66, 0xb8, 0x2b, 0xad, 0x28, 0x4a, 0xc1, 0x41, 0x92,
-  0xfa, 0xc4, 0xa5, 0x0f, 0x15, 0x5b, 0x4f, 0x1b, 0xe6, 0x80, 0x09, 0xa4,
-  0x56, 0x86, 0x3c, 0xe3, 0xec, 0x6e, 0x89, 0x06, 0xcd, 0xbd, 0x5c, 0x99,
-  0xfb, 0x97, 0x23, 0xf4, 0xe6, 0x37, 0x14, 0xb6, 0xa5, 0x83, 0x4c, 0x3a,
-  0x03, 0x14, 0x4f, 0xec, 0x55, 0x76, 0xb7, 0x11, 0x08, 0x0b, 0xd3, 0x79,
-  0x09, 0x7e, 0x33, 0x5b, 0xaf, 0xdc, 0x9c, 0x0f, 0xa9, 0xcc, 0x22, 0x5a,
-  0xe3, 0xfb, 0x62, 0xea, 0x3e, 0x18, 0xfd, 0xdd, 0x2f, 0x1d, 0x37, 0x1a,
-  0x7d, 0xc8, 0xb2, 0x65, 0x3a, 0x27, 0xc8, 0x22, 0x04, 0x85, 0xf5, 0x95,
-  0xcf, 0x6c, 0x05, 0x8c, 0x6b, 0x32, 0x15, 0xbd, 0xd1, 0x0a, 0xc9, 0x25,
-  0x3e, 0xc7, 0x1b, 0xb9, 0x20, 0x2f, 0xc2, 0x8c, 0x30, 0x04, 0xe2, 0xd5,
-  0xd4, 0x6c, 0x54, 0x58, 0x62, 0x07, 0x41, 0x4a, 0xff, 0xb9, 0x73, 0xaf,
-  0x71, 0x17, 0x8a, 0xcf, 0x89, 0x98, 0xc5, 0xeb, 0x1c, 0xb1, 0xca, 0x5d,
-  0x8c, 0x77, 0xfb, 0x3e, 0xbf, 0x4e, 0x68, 0x7d, 0xad, 0x02, 0x35, 0xbc,
-  0x81, 0x54, 0xa4, 0xcb, 0xde, 0x7f, 0x10, 0x35, 0xee, 0xea, 0x26, 0x5b,
-  0x04, 0x24, 0xa5, 0x48, 0xf5, 0x52, 0xf5, 0xe7, 0xf0, 0xf4, 0xfd, 0xb7,
-  0x47, 0x47, 0xa7, 0xaf, 0x5e, 0x1e, 0x1f, 0xc9, 0x81, 0xb1, 0x1f, 0xbd,
-  0x39, 0xfb, 0xee, 0xd8, 0xd5, 0x83, 0x16, 0x17, 0x64, 0x97, 0xe0, 0xc5,
-  0x43, 0xc8, 0x4c, 0x79, 0x48, 0x45, 0x32, 0x8d, 0xaa, 0xfe, 0xe2, 0xd5,
-  0x0f, 0x46, 0x62, 0x3d, 0x1d, 0xbd, 0xfb, 0x21, 0xa8, 0x0c, 0xe5, 0xe5,
-  0xdd, 0x85, 0x1e, 0x59, 0x97, 0x86, 0x37, 0x1a, 0x15, 0xa5, 0xdb, 0xc0,
-  0xde, 0x58, 0xe4, 0xdf, 0xf8, 0x1a, 0x34, 0xcd, 0xad, 0x0a, 0x2b, 0x30,
-  0xf0, 0x8b, 0xaa, 0xa0, 0x78, 0xf1, 0xbe, 0x4f, 0x76, 0xb4, 0xb8, 0xea,
-  0x5a, 0x7f, 0x5f, 0xa7, 0xa0, 0xeb, 0x87, 0xec, 0x8e, 0xb0, 0x71, 0x93,
-  0xe7, 0xf8, 0x19, 0x2f, 0x6e, 0x7d, 0x5a, 0xe5, 0xd7, 0x90, 0xfd, 0xcc,
-  0xb3, 0xec, 0x71, 0xc2, 0xa3, 0x63, 0xeb, 0x89, 0x92, 0xa0, 0x1c, 0x34,
-  0x42, 0x21, 0x79, 0xd4, 0x68, 0xd4, 0x9a, 0x44, 0xbe, 0x5e, 0xb2, 0xdf,
-  0x52, 0x7b, 0xd4, 0xa0, 0x59, 0x9e, 0x71, 0xf2, 0xf2, 0xe8, 0xed, 0x30,
-  0x39, 0x3d, 0x7a, 0xcd, 0xc9, 0x7b, 0x47, 0x6f, 0xbe, 0xe6, 0xea, 0xe7,
-  0x5a, 0xd4, 0x5a, 0x4a, 0xbc, 0x37, 0xb1, 0x6a, 0x3a, 0xbc, 0x26, 0xe6,
-  0x5d, 0x72, 0xba, 0xd4, 0xb5, 0xb9, 0x5d, 0x7f, 0x47, 0x60, 0x32, 0x9e,
-  0xdb, 0x73, 0xf3, 0x23, 0xb6, 0x54, 0x46, 0x87, 0xf8, 0x26, 0xb2, 0x5c,
-  0x22, 0x98, 0xd9, 0xa0, 0x42, 0x51, 0x08, 0xb0, 0x1a, 0xbc, 0x62, 0x66,
-  0x41, 0xc2, 0xf0, 0x36, 0x5d, 0x20, 0x52, 0xf9, 0x08, 0x9a, 0x8d, 0x92,
-  0x7d, 0x32, 0x89, 0x60, 0xa2, 0x52, 0x30, 0x93, 0x6f, 0x86, 0xa0, 0x4b,
-  0xaa, 0xfc, 0xe0, 0x16, 0x23, 0x86, 0x3a, 0x41, 0x3e, 0xf4, 0x10, 0xf1,
-  0xd3, 0x2c, 0x77, 0x3e, 0x63, 0x64, 0x1b, 0x58, 0x00, 0xcb, 0x0a, 0x91,
-  0x6d, 0x80, 0x94, 0xf9, 0x7f, 0xb7, 0xc7, 0x75, 0x7d, 0xb5, 0x9d, 0xcf,
-  0xde, 0x57, 0x75, 0xba, 0xd1, 0xbd, 0x8b, 0xbc, 0xaf, 0x67, 0xf8, 0x3a,
-  0xd9, 0x18, 0xdb, 0x47, 0xe5, 0x77, 0x7c, 0x1e, 0x75, 0x1c, 0xea, 0x15,
-  0xc4, 0x0a, 0xb4, 0x06, 0xba, 0x6b, 0xd5, 0x74, 0xa3, 0x62, 0x57, 0x46,
-  0x80, 0x73, 0x55, 0x96, 0xa4, 0x06, 0xfa, 0xf2, 0xc3, 0xb4, 0xde, 0xdd,
-  0x0d, 0xab, 0x7e, 0xd8, 0xe0, 0x83, 0xa1, 0x26, 0x2c, 0x9c, 0x7e, 0x7b,
-  0x38, 0xf9, 0xd3, 0xee, 0x2e, 0xe5, 0x87, 0x6c, 0x22, 0x8e, 0xff, 0xe9,
-  0xe3, 0xdd, 0xbd, 0xad, 0x98, 0xf8, 0x18, 0x04, 0x3c, 0x5e, 0xdc, 0x31,
-  0xc2, 0x98, 0xb7, 0x81, 0x14, 0x82, 0x23, 0x89, 0x60, 0xb6, 0xe9, 0x59,
-  0x86, 0xe8, 0x69, 0xca, 0x98, 0xe7, 0x48, 0x00, 0x0a, 0x2a, 0x0f, 0x80,
-  0x43, 0x2c, 0xbe, 0xdc, 0x80, 0x47, 0x7f, 0x30, 0xb0, 0x54, 0x65, 0xd3,
-  0x6a, 0xa4, 0x28, 0xb7, 0x3f, 0x6a, 0x0e, 0xa3, 0x08, 0xdc, 0x77, 0xfe,
-  0xbc, 0xf2, 0xba, 0x05, 0xe0, 0xc7, 0xd7, 0x97, 0x2b, 0x18, 0xdf, 0x09,
-  0x5e, 0x42, 0xec, 0x52, 0xe0, 0x0b, 0x90, 0x31, 0x0d, 0x98, 0x7e, 0x40,
-  0xf0, 0x5e, 0x00, 0x88, 0x5d, 0x7d, 0x8f, 0x41, 0xf8, 0x8d, 0x86, 0xc6,
-  0x44, 0xee, 0x23, 0x19, 0x98, 0xb3, 0x1b, 0x6f, 0xf2, 0x77, 0x3d, 0x93,
-  0xd5, 0x79, 0xf2, 0x7c, 0x6e, 0x5e, 0x9c, 0xf7, 0xa4, 0x23, 0x1f, 0x71,
-  0xe5, 0xc3, 0x6f, 0xb3, 0xea, 0x3c, 0xab, 0xca, 0xba, 0x93, 0x39, 0x49,
-  0xb3, 0x15, 0x3c, 0x05, 0xe4, 0x49, 0x99, 0x76, 0x34, 0x8e, 0xb4, 0x7b,
-  0x15, 0x60, 0xdb, 0x64, 0x79, 0x02, 0xbc, 0xb3, 0x0d, 0xca, 0xdf, 0xc4,
-  0x01, 0x40, 0xc9, 0x3f, 0xfc, 0x6b, 0xb8, 0xf1, 0x05, 0x55, 0xdd, 0xca,
-  0xd3, 0xf9, 0x06, 0xaa, 0xab, 0x75, 0x8f, 0x91, 0x50, 0xda, 0xc6, 0x18,
-  0x49, 0xb9, 0xac, 0xac, 0x51, 0x78, 0x28, 0xd9, 0x94, 0xd2, 0x44, 0xc6,
-  0xa2, 0x89, 0x2f, 0x38, 0xe6, 0x2e, 0x3e, 0xba, 0x0e, 0x2a, 0xce, 0xd9,
-  0xe6, 0xda, 0x90, 0x74, 0x7d, 0xa9, 0x17, 0xbf, 0xf1, 0x35, 0xc5, 0xdb,
-  0xf0, 0x50, 0xcf, 0x94, 0xb3, 0x9f, 0x29, 0x9b, 0xef, 0x34, 0xa7, 0x7b,
-  0xe5, 0xef, 0xb3, 0xbe, 0x1f, 0xad, 0xda, 0xfe, 0x82, 0x51, 0x37, 0x3a,
-  0x81, 0x09, 0x14, 0xf3, 0x81, 0x34, 0xcf, 0x19, 0x2b, 0x86, 0x82, 0x2a,
-  0xe0, 0x95, 0x95, 0xa6, 0xcd, 0x0c, 0x9d, 0xef, 0x37, 0xea, 0x46, 0x97,
-  0x4e, 0x47, 0xac, 0xba, 0x1f, 0x26, 0x62, 0x87, 0xa0, 0x4c, 0xd1, 0x9b,
-  0x0a, 0x18, 0xd4, 0x94, 0xc5, 0xe4, 0xa3, 0x82, 0xf5, 0x80, 0x13, 0x2a,
-  0x52, 0xb5, 0xd9, 0xa4, 0xb9, 0x54, 0x3b, 0xd6, 0x30, 0xed, 0x4a, 0xc7,
-  0xc4, 0xe1, 0xbd, 0xce, 0x60, 0x80, 0xf7, 0xfe, 0xe5, 0xde, 0xf8, 0x8b,
-  0xfb, 0xf6, 0xce, 0x89, 0xf4, 0xb1, 0x00, 0x94, 0x07, 0x63, 0x70, 0x76,
-  0x52, 0x9f, 0x29, 0x95, 0x6a, 0x44, 0x77, 0xd2, 0x73, 0xc3, 0x4f, 0xb3,
-  0x00, 0x84, 0x70, 0xd2, 0xc2, 0xad, 0x91, 0x42, 0xf0, 0x9a, 0x56, 0x4c,
-  0xef, 0x81, 0xda, 0x09, 0x9f, 0xc7, 0xf9, 0x90, 0x89, 0xf6, 0x47, 0x31,
-  0x5b, 0x2a, 0x95, 0x85, 0x72, 0xf0, 0x17, 0x74, 0x6a, 0xa9, 0xf8, 0x87,
-  0x82, 0xc7, 0x69, 0xfa, 0x08, 0x2f, 0x07, 0x4c, 0xdd, 0x92, 0x98, 0x40,
-  0xca, 0x45, 0x1a, 0xd8, 0x40, 0x28, 0x13, 0x8c, 0x2b, 0x2d, 0x09, 0x11,
-  0x6c, 0xcc, 0xd8, 0x2a, 0x4a, 0x5b, 0x62, 0x87, 0x8a, 0x83, 0x27, 0x96,
-  0x5e, 0xae, 0x52, 0x63, 0x4e, 0x74, 0xa0, 0x2a, 0x9c, 0x9b, 0x26, 0x6e,
-  0xf2, 0x59, 0x73, 0x45, 0x95, 0xcf, 0x54, 0x33, 0xaa, 0x05, 0x6f, 0x05,
-  0x66, 0xf0, 0x3c, 0xcc, 0x04, 0x3e, 0xef, 0x31, 0xde, 0xf1, 0x86, 0xd1,
-  0xa2, 0x26, 0x0c, 0x3c, 0x08, 0x23, 0x1d, 0xed, 0x03, 0x19, 0xcd, 0xb7,
-  0x59, 0xd4, 0xb3, 0x90, 0x5b, 0xa9, 0x39, 0x45, 0x17, 0x28, 0x6b, 0x16,
-  0xa8, 0x6b, 0x9a, 0xb2, 0x3b, 0xd6, 0x13, 0x42, 0x85, 0x0e, 0x3f, 0x70,
-  0x15, 0x92, 0x6f, 0x37, 0xb4, 0xd6, 0xfc, 0xaa, 0x68, 0xfc, 0xd4, 0x42,
-  0x2a, 0xa6, 0xf3, 0x21, 0x9f, 0x97, 0x51, 0x93, 0xfd, 0xd0, 0xf0, 0x9a,
-  0x05, 0xb7, 0xf0, 0x7a, 0x43, 0x8d, 0xa4, 0x00, 0xa2, 0xb9, 0x4c, 0xe5,
-  0x7b, 0x06, 0xa1, 0xda, 0xb8, 0xe4, 0x87, 0xbe, 0x76, 0x0f, 0x75, 0x9a,
-  0x83, 0x57, 0x80, 0xbd, 0x00, 0x1a, 0xe8, 0x5b, 0x1f, 0x20, 0x73, 0xed,
-  0xdb, 0x61, 0xb2, 0xbf, 0xa0, 0x4d, 0xd9, 0xfd, 0x3a, 0xc6, 0xb8, 0xb0,
-  0xa9, 0xa4, 0x7b, 0x69, 0x88, 0xdc, 0xe8, 0x6f, 0x50, 0xb9, 0x68, 0xc1,
-  0x98, 0x2e, 0x6d, 0x76, 0x2c, 0xbb, 0xe3, 0x7c, 0xaf, 0x59, 0x57, 0x36,
-  0xc2, 0x56, 0x2d, 0xa1, 0x24, 0xcc, 0x32, 0xad, 0xbe, 0xb0, 0x20, 0xcb,
-  0x26, 0x0a, 0xe5, 0x2e, 0x05, 0x66, 0x08, 0xe4, 0x3a, 0xb2, 0xd0, 0xce,
-  0xf5, 0x1c, 0x0f, 0x50, 0x31, 0xc2, 0x32, 0x48, 0x39, 0x99, 0x2f, 0x49,
-  0x41, 0xb2, 0x35, 0x43, 0xbd, 0x41, 0x21, 0xd3, 0x7f, 0x9a, 0x88, 0x8d,
-  0xe7, 0x77, 0xbc, 0x12, 0xe7, 0x14, 0x3e, 0x9c, 0xd7, 0xcd, 0x28, 0x82,
-  0xa3, 0x4d, 0x3e, 0xa6, 0xd3, 0x93, 0xd3, 0xfd, 0x2d, 0x1f, 0x6c, 0x58,
-  0x40, 0x67, 0xb8, 0x2c, 0x35, 0x85, 0x4b, 0x5a, 0x40, 0x9a, 0xa1, 0xb2,
-  0x1b, 0x4e, 0x5d, 0x0e, 0x75, 0xcb, 0xa9, 0x20, 0x71, 0x82, 0xb9, 0x50,
-  0x8f, 0x64, 0xee, 0x77, 0x19, 0x74, 0x5e, 0x7d, 0x5a, 0x77, 0x30, 0x15,
-  0x76, 0xf6, 0x93, 0x10, 0xae, 0xab, 0xe6, 0x4c, 0x1b, 0x42, 0xba, 0x1a,
-  0x51, 0x42, 0x74, 0xbb, 0x7a, 0x13, 0x32, 0xba, 0x82, 0x51, 0x26, 0x1c,
-  0xd8, 0x14, 0x89, 0x86, 0x14, 0x27, 0xb2, 0x7b, 0x92, 0x9c, 0x11, 0xea,
-  0xdd, 0x21, 0xd4, 0x36, 0x17, 0xcd, 0x01, 0x6b, 0x29, 0xa8, 0x96, 0xb1,
-  0xea, 0xc7, 0x7d, 0xa8, 0x04, 0xae, 0x8e, 0x50, 0x4b, 0x23, 0x93, 0xda,
-  0x90, 0x18, 0xdd, 0x9b, 0xe3, 0x89, 0x8f, 0x3d, 0x45, 0x89, 0xc2, 0xa1,
-  0xd8, 0xc4, 0x51, 0xdb, 0x1e, 0xc0, 0x82, 0x17, 0xbd, 0x74, 0xfc, 0x6a,
-  0x72, 0x36, 0x8e, 0x95, 0xc3, 0x31, 0x22, 0xfa, 0x04, 0xc9, 0x88, 0x2d,
-  0x14, 0x22, 0x0e, 0x3b, 0x96, 0x2c, 0x7a, 0xf6, 0xc2, 0xb1, 0xbb, 0x28,
-  0xaf, 0x7c, 0xc4, 0x9d, 0x6e, 0x73, 0x66, 0x94, 0x7f, 0xe5, 0x24, 0x0e,
-  0x49, 0x00, 0x51, 0x37, 0x51, 0xbd, 0x3a, 0x1f, 0x79, 0x30, 0xb5, 0x2c,
-  0xf4, 0x50, 0x41, 0x44, 0x43, 0xc2, 0xe6, 0x9a, 0xfa, 0x10, 0x2a, 0x9a,
-  0x9b, 0x4c, 0x55, 0xb4, 0x48, 0x02, 0x2f, 0xdc, 0xb2, 0x77, 0x4f, 0x93,
-  0x8c, 0xe0, 0xcc, 0xc9, 0xd2, 0x84, 0x67, 0x1f, 0x4c, 0x59, 0x58, 0x0a,
-  0xdf, 0xe5, 0x67, 0x48, 0x5e, 0x4a, 0xe8, 0xb6, 0x33, 0xba, 0xe0, 0x1a,
-  0xb4, 0x74, 0xb7, 0xce, 0x19, 0x1a, 0xd2, 0xa1, 0xa3, 0xbc, 0x3a, 0xcb,
-  0xd8, 0xee, 0x64, 0x87, 0xdd, 0x87, 0xb0, 0x3e, 0xca, 0x67, 0x1c, 0x50,
-  0x5a, 0xb7, 0x51, 0x86, 0x19, 0x0d, 0x06, 0x9c, 0x87, 0xcb, 0xad, 0x41,
-  0x7e, 0xeb, 0xdb, 0x49, 0x36, 0xcc, 0xb5, 0x02, 0xe8, 0x47, 0x3f, 0x70,
-  0x38, 0x3a, 0x79, 0xca, 0x86, 0x7d, 0xf0, 0x97, 0xa1, 0x7d, 0x5b, 0x90,
-  0xad, 0xde, 0xbd, 0x7a, 0x79, 0x6c, 0x17, 0x4b, 0x16, 0x87, 0x42, 0xfc,
-  0xed, 0x54, 0x91, 0xf3, 0xa7, 0xac, 0x93, 0xf7, 0x24, 0xf0, 0xfa, 0xac,
-  0x8a, 0xfc, 0x1f, 0x14, 0xcc, 0x45, 0x02, 0xec, 0x45, 0x4e, 0x58, 0x89,
-  0x29, 0xd9, 0xcf, 0xc5, 0xab, 0x8b, 0x30, 0x2f, 0x81, 0x89, 0xc7, 0x3a,
-  0x68, 0x72, 0x1c, 0x3b, 0xf9, 0xa2, 0x09, 0x12, 0xfd, 0xd2, 0x45, 0x27,
-  0x56, 0x93, 0xf0, 0xe3, 0x05, 0xe6, 0xd1, 0x5c, 0x49, 0xdb, 0x94, 0xd9,
-  0x1d, 0x88, 0x17, 0xd0, 0x39, 0xbc, 0xf8, 0xbd, 0x36, 0x7c, 0x59, 0x59,
-  0x49, 0x3e, 0xf8, 0xe6, 0x57, 0x6f, 0x4f, 0x5e, 0x8f, 0xce, 0x4e, 0xb6,
-  0x08, 0x73, 0x8d, 0x5a, 0x4e, 0xfa, 0x83, 0x50, 0x6a, 0x5b, 0x94, 0xda,
-  0xe1, 0x3f, 0x89, 0xb5, 0x6d, 0xb3, 0xde, 0x92, 0x1c, 0x48, 0xbe, 0x54,
-  0x68, 0x78, 0xfa, 0x56, 0x50, 0x18, 0xaa, 0x60, 0x59, 0x24, 0xa5, 0x5a,
-  0xd4, 0xb0, 0x3c, 0x4e, 0x3d, 0x2f, 0x56, 0x2b, 0xd4, 0xf8, 0x7c, 0x55,
-  0xdf, 0x25, 0x92, 0x76, 0x5f, 0x53, 0xa9, 0xf3, 0x3a, 0x02, 0xaa, 0x20,
-  0xf6, 0x31, 0x60, 0xd2, 0x29, 0x06, 0x1c, 0x12, 0x92, 0x39, 0xe3, 0xb5,
-  0x29, 0xcd, 0xd9, 0x4d, 0xab, 0xaa, 0xbc, 0xd1, 0xab, 0x4b, 0x10, 0x31,
-  0xcc, 0xd0, 0xb1, 0x43, 0xd5, 0x5d, 0x2f, 0x6e, 0x96, 0x40, 0x41, 0x0a,
-  0x58, 0xdb, 0x7a, 0xe3, 0xd1, 0xe3, 0x36, 0x12, 0x91, 0xe6, 0xa7, 0x8c,
-  0x9a, 0x6a, 0x85, 0x6c, 0xfb, 0xb8, 0xe1, 0xf9, 0x18, 0x8c, 0xb2, 0x9d,
-  0xd0, 0x32, 0x14, 0xac, 0x5a, 0x40, 0x9b, 0x51, 0x55, 0x4d, 0x6b, 0x99,
-  0xb4, 0x25, 0x9b, 0x93, 0xe4, 0x2f, 0xc1, 0xf1, 0x15, 0x10, 0x7b, 0xc8,
-  0xf4, 0x28, 0x98, 0x4d, 0x49, 0x2d, 0xae, 0xe6, 0x71, 0xde, 0x70, 0xad,
-  0x63, 0x0d, 0xf2, 0x21, 0x98, 0x4a, 0xae, 0xca, 0x9e, 0xde, 0x85, 0xca,
-  0x97, 0xe2, 0xcf, 0xe5, 0xc0, 0xed, 0x99, 0xad, 0xa6, 0xb4, 0x4d, 0xf0,
-  0xf9, 0xa1, 0x92, 0xf2, 0x39, 0x23, 0x62, 0x2b, 0xf4, 0x0d, 0x9a, 0x76,
-  0xc9, 0x3c, 0x6c, 0xc2, 0x09, 0x83, 0xc2, 0xe9, 0x31, 0x57, 0x20, 0x12,
-  0xe2, 0xe4, 0x7c, 0xee, 0x15, 0x37, 0xec, 0x68, 0x9d, 0xf0, 0x2b, 0x69,
-  0x51, 0xfb, 0x90, 0x57, 0xa1, 0x1c, 0x09, 0x15, 0x62, 0x10, 0x97, 0x3f,
-  0x30, 0x83, 0x41, 0xc0, 0xe4, 0x72, 0xff, 0x32, 0xad, 0x0d, 0x53, 0x6a,
-  0xb7, 0xb7, 0xae, 0x5a, 0xfb, 0x4a, 0x53, 0x5e, 0xbc, 0xdd, 0x6b, 0x6d,
-  0x48, 0x7c, 0xe7, 0x5e, 0xb5, 0x90, 0x7f, 0x38, 0xf8, 0xc3, 0x5b, 0x71,
-  0xe1, 0x4f, 0x04, 0x69, 0x4b, 0x29, 0x30, 0x10, 0x1a, 0x91, 0x9b, 0x33,
-  0x8b, 0xa5, 0x1c, 0x6b, 0xf5, 0xdc, 0x26, 0xd1, 0x4e, 0x93, 0x4d, 0x4d,
-  0x8a, 0xb7, 0x49, 0x9a, 0xc7, 0xf2, 0xd5, 0x81, 0xcd, 0xda, 0x07, 0x43,
-  0xeb, 0x34, 0xb7, 0xff, 0xc3, 0x0f, 0x49, 0xab, 0x6a, 0xfd, 0x56, 0x1f,
-  0x44, 0x90, 0xa4, 0xf0, 0xcd, 0x4a, 0xcd, 0xc2, 0xa0, 0x01, 0x07, 0x29,
-  0xc7, 0x4a, 0x76, 0x70, 0x32, 0x50, 0x8e, 0x11, 0x9b, 0x60, 0xc4, 0x56,
-  0x64, 0x94, 0xc0, 0x2b, 0xcd, 0x43, 0x6d, 0x05, 0x70, 0x10, 0x78, 0xd0,
-  0xab, 0x48, 0x54, 0x24, 0xb1, 0x5b, 0x8d, 0xbc, 0xb0, 0xd1, 0xed, 0xed,
-  0xe5, 0xaa, 0x9d, 0x79, 0xe6, 0x0a, 0xde, 0x05, 0x81, 0xc0, 0x0f, 0x6a,
-  0xff, 0xb5, 0x48, 0xc6, 0x42, 0x12, 0xdb, 0xac, 0x74, 0xba, 0xec, 0xb9,
-  0x60, 0x0f, 0xd8, 0xf1, 0xb4, 0xca, 0xc4, 0xde, 0xd0, 0x53, 0xd0, 0x93,
-  0xa1, 0xcc, 0xf8, 0xf0, 0x90, 0x59, 0x35, 0xf5, 0xce, 0x8b, 0x43, 0xb2,
-  0xed, 0xec, 0x98, 0x24, 0x89, 0x85, 0xf2, 0xfb, 0x4d, 0x49, 0xe0, 0xc5,
-  0x54, 0xd5, 0x8e, 0x00, 0x39, 0x4b, 0x36, 0x6d, 0x51, 0xad, 0x76, 0xbd,
-  0x6d, 0xfe, 0xa2, 0x27, 0x77, 0xec, 0xbb, 0x2f, 0x41, 0x05, 0x31, 0x27,
-  0xa8, 0x32, 0x13, 0xec, 0x0b, 0x50, 0xd3, 0x11, 0x6f, 0xa7, 0x25, 0x20,
-  0x61, 0x2b, 0x56, 0x2f, 0x39, 0x0b, 0xd4, 0x94, 0x6d, 0xb4, 0x20, 0xf5,
-  0x25, 0x84, 0xf0, 0x77, 0x47, 0x16, 0x41, 0x42, 0x64, 0xf6, 0x74, 0x88,
-  0x9f, 0x6c, 0xde, 0x32, 0x6a, 0xe9, 0x88, 0x1e, 0xab, 0xfb, 0x82, 0x4d,
-  0xa4, 0xa6, 0x03, 0xad, 0xb6, 0x54, 0xa6, 0x4a, 0xfc, 0x55, 0xa3, 0x3b,
-  0xf6, 0xa2, 0x15, 0xda, 0x42, 0xe1, 0xff, 0x40, 0x55, 0x1a, 0x46, 0x56,
-  0x4c, 0x02, 0x89, 0x9b, 0x56, 0xc1, 0x2e, 0x9b, 0xbc, 0xcf, 0xc7, 0x00,
-  0xf8, 0x45, 0xf9, 0x45, 0x34, 0x14, 0x28, 0x90, 0x96, 0xcd, 0x68, 0xf6,
-  0x77, 0x76, 0x87, 0xf8, 0xb9, 0x07, 0x0c, 0xa5, 0x0a, 0xbf, 0xed, 0xdb,
-  0x9c, 0x98, 0xd6, 0x41, 0xa1, 0xc7, 0xc9, 0x1e, 0x42, 0x24, 0xbd, 0x7f,
-  0x7b, 0x1b, 0xc1, 0xda, 0x69, 0x27, 0x21, 0x8d, 0x6c, 0x0e, 0x67, 0x38,
-  0x5a, 0xb7, 0x90, 0xe4, 0xb4, 0x0b, 0x6b, 0x01, 0x6b, 0x16, 0x8b, 0xc0,
-  0x26, 0x8d, 0xfb, 0x6a, 0xa1, 0x36, 0x5d, 0x74, 0x49, 0xd9, 0x71, 0x1f,
-  0x4a, 0x8b, 0x36, 0x11, 0x0b, 0x23, 0x80, 0x74, 0x66, 0x96, 0xb7, 0x7d,
-  0x19, 0x0e, 0xad, 0x4d, 0x36, 0xd7, 0x97, 0x30, 0x19, 0x9b, 0xb2, 0xa6,
-  0x39, 0x44, 0x69, 0x73, 0x40, 0x69, 0xb9, 0x86, 0xba, 0xb1, 0x86, 0xc1,
-  0x49, 0xe6, 0x2f, 0x34, 0x02, 0x90, 0xff, 0xda, 0x8f, 0x6b, 0xec, 0x02,
-  0x0c, 0xc5, 0x89, 0xa2, 0x02, 0x42, 0xf6, 0x03, 0xc5, 0xe4, 0xeb, 0x6a,
-  0x39, 0xe7, 0x6e, 0xe3, 0xca, 0x27, 0x44, 0x6c, 0xf5, 0x6c, 0x19, 0x70,
-  0x96, 0x82, 0x3a, 0x9b, 0x0b, 0xd0, 0xd0, 0xaa, 0x15, 0xe4, 0x34, 0x22,
-  0xd8, 0xb8, 0x91, 0xce, 0xe9, 0xb9, 0xfc, 0x12, 0x98, 0x40, 0xa9, 0x4e,
-  0x3c, 0x84, 0x6d, 0xaa, 0xe7, 0xb5, 0xd5, 0xb2, 0xca, 0x50, 0x13, 0x76,
-  0x59, 0x44, 0xf2, 0x99, 0xad, 0xd8, 0x19, 0xc7, 0x7c, 0xbf, 0x7b, 0xcf,
-  0xb5, 0x2e, 0x9d, 0x71, 0x7f, 0xc9, 0x47, 0xb4, 0x14, 0x34, 0xaf, 0x51,
-  0x1b, 0x16, 0x9f, 0xc5, 0x4a, 0xd8, 0x71, 0x57, 0x1e, 0xdd, 0x35, 0xb8,
-  0xa9, 0xd5, 0x74, 0x2f, 0x63, 0xeb, 0x8c, 0x22, 0x79, 0xd1, 0xc0, 0x6c,
-  0x9f, 0xd5, 0x82, 0x48, 0x80, 0x60, 0x47, 0x4c, 0xbb, 0xbb, 0xa3, 0xb4,
-  0x0a, 0xb4, 0x9b, 0x54, 0xda, 0x4c, 0x83, 0x46, 0x5b, 0xc3, 0x64, 0xd7,
-  0x0a, 0x21, 0xf1, 0x4b, 0xe4, 0x07, 0xdb, 0x88, 0x11, 0xe7, 0x11, 0xa4,
-  0xc0, 0xf8, 0xd3, 0x5b, 0xce, 0x01, 0x81, 0x4b, 0xca, 0x03, 0xdc, 0x0e,
-  0xc9, 0xde, 0xfe, 0xa7, 0x8f, 0x86, 0x0c, 0x25, 0x94, 0x3c, 0xde, 0x79,
-  0xb6, 0xa7, 0x70, 0x50, 0x47, 0x67, 0x5f, 0x01, 0xea, 0xd7, 0x90, 0x71,
-  0xd7, 0x46, 0x88, 0xcf, 0x46, 0x59, 0x5a, 0x5d, 0x19, 0x45, 0x05, 0x78,
-  0x74, 0x23, 0x14, 0x4a, 0x1a, 0xed, 0xec, 0xc4, 0x02, 0x41, 0x7e, 0x47,
-  0x20, 0x9e, 0xfd, 0x8e, 0x30, 0x0e, 0xf5, 0x60, 0x84, 0x15, 0xef, 0x87,
-  0x5c, 0x67, 0xca, 0xb2, 0xa4, 0xe5, 0x55, 0xe5, 0x90, 0x37, 0x5a, 0x41,
-  0x00, 0x41, 0x14, 0x4f, 0xac, 0x34, 0x5f, 0xc7, 0x44, 0x2f, 0xc1, 0x4e,
-  0x9b, 0xac, 0x8e, 0x34, 0x77, 0x5b, 0x04, 0xd9, 0x43, 0x1d, 0x51, 0x59,
-  0x4e, 0x3a, 0xdf, 0xa2, 0x8d, 0x44, 0x21, 0x4a, 0x6a, 0x49, 0x94, 0xae,
-  0x32, 0xe0, 0x5a, 0xb2, 0x14, 0x29, 0xf5, 0x0d, 0xef, 0xc7, 0xe6, 0xa4,
-  0x25, 0xa8, 0xa6, 0x4b, 0xc9, 0x16, 0xe6, 0xbf, 0x71, 0xb3, 0xb7, 0x02,
-  0x7e, 0xf7, 0x1e, 0x47, 0x16, 0x8e, 0xee, 0xff, 0x8f, 0x58, 0xb8, 0xf6,
-  0xba, 0x39, 0x69, 0x8b, 0x4d, 0x82, 0xa4, 0x3e, 0x8b, 0xeb, 0x21, 0x12,
-  0x5a, 0x0e, 0xfa, 0xa7, 0x61, 0x7d, 0xec, 0x5c, 0xb0, 0xdc, 0xe3, 0x75,
-  0x28, 0xc1, 0xf6, 0xad, 0x11, 0x49, 0xec, 0x54, 0x15, 0x29, 0x3e, 0x99,
-  0xef, 0x7d, 0x00, 0x1a, 0x82, 0x15, 0x84, 0x66, 0xa8, 0xf9, 0xd9, 0xe6,
-  0xce, 0xcc, 0x97, 0x40, 0x3f, 0x32, 0xd4, 0xe9, 0x92, 0xc0, 0xa2, 0x7c,
-  0x90, 0x3c, 0x4d, 0xe6, 0xdc, 0xa1, 0xbe, 0x22, 0x9d, 0x57, 0xa3, 0xb4,
-  0xc0, 0xd0, 0x21, 0xe2, 0xf3, 0x05, 0x74, 0x26, 0x9c, 0x39, 0xdf, 0x2b,
-  0xe2, 0xb5, 0x1f, 0x64, 0xd3, 0x91, 0x65, 0xe6, 0xed, 0xe1, 0xe9, 0x59,
-  0x72, 0x76, 0xe2, 0xdb, 0x12, 0x18, 0xca, 0x82, 0x72, 0x43, 0x51, 0x38,
-  0x2e, 0xca, 0xdf, 0xbb, 0xd5, 0x29, 0x54, 0x0f, 0xe7, 0x8b, 0x8a, 0x2b,
-  0x37, 0x2f, 0x05, 0x6f, 0xa1, 0xb3, 0x5a, 0x91, 0xc4, 0x39, 0x5a, 0xbd,
-  0xa4, 0x6b, 0xf3, 0x67, 0xe1, 0xd5, 0xc6, 0x5e, 0x7b, 0x22, 0x2c, 0x47,
-  0x8e, 0xf3, 0xf0, 0x62, 0x05, 0x4d, 0x35, 0xbc, 0xd4, 0x66, 0x07, 0x73,
-  0x38, 0x08, 0x06, 0x73, 0x9d, 0xce, 0x8d, 0x6e, 0xee, 0x56, 0x25, 0x34,
-  0x3a, 0x16, 0xac, 0x5b, 0x50, 0x14, 0x0c, 0xcb, 0xa9, 0xfa, 0xac, 0x68,
-  0x91, 0x91, 0x25, 0xc3, 0x04, 0x44, 0x06, 0x5d, 0xb3, 0x6b, 0xe1, 0xa6,
-  0xe1, 0x75, 0x59, 0x6e, 0x72, 0x86, 0x60, 0x42, 0x14, 0x9f, 0x91, 0x23,
-  0x51, 0x36, 0x56, 0x7b, 0xaa, 0x74, 0x3c, 0xac, 0x33, 0x8e, 0x71, 0x1b,
-  0x96, 0xea, 0x59, 0x0f, 0xbd, 0xde, 0x77, 0xf6, 0x5c, 0x42, 0x6d, 0xfb,
-  0xe4, 0x0d, 0x5d, 0x49, 0x35, 0x08, 0x55, 0x0b, 0xa9, 0x18, 0x4b, 0x36,
-  0x36, 0xf2, 0xe8, 0x77, 0x21, 0xe3, 0xb2, 0x65, 0x96, 0xb6, 0xd2, 0x48,
-  0xda, 0xcc, 0xd8, 0xda, 0x67, 0xe2, 0xa7, 0x21, 0x6a, 0x68, 0x54, 0x1b,
-  0x17, 0x1b, 0xd1, 0xe8, 0xec, 0xb7, 0xd3, 0x8d, 0xed, 0xfb, 0xca, 0x13,
-  0x6c, 0x58, 0x64, 0x08, 0x97, 0x03, 0x53, 0x15, 0x35, 0x61, 0x59, 0x4b,
-  0xe9, 0x00, 0x3a, 0xb8, 0xed, 0x32, 0x2e, 0xfd, 0xfa, 0xa3, 0x70, 0xac,
-  0x98, 0x83, 0x7d, 0x55, 0x95, 0xfb, 0xee, 0xed, 0x57, 0x7f, 0xd3, 0x9d,
-  0xd9, 0x1a, 0xaa, 0xbe, 0x15, 0x60, 0x39, 0xca, 0x68, 0xbd, 0x92, 0x11,
-  0x3e, 0x7a, 0xab, 0xe0, 0x43, 0xb5, 0x16, 0xde, 0xfd, 0x11, 0x66, 0x2f,
-  0x73, 0x8d, 0x84, 0x64, 0x13, 0x7e, 0x66, 0xf3, 0xd4, 0x44, 0x2c, 0x1a,
-  0xfb, 0xe3, 0xc7, 0x64, 0x0b, 0xfc, 0xea, 0xf0, 0xf1, 0xfe, 0xde, 0xee,
-  0xd6, 0x38, 0xd9, 0xec, 0xdc, 0x6e, 0x5b, 0xf7, 0x4e, 0xb3, 0xbd, 0xdf,
-  0xd9, 0xed, 0x12, 0x94, 0xbb, 0x79, 0xf4, 0xc3, 0xe9, 0x9b, 0xce, 0x24,
-  0x69, 0x07, 0x82, 0x48, 0x82, 0x35, 0x73, 0x74, 0x82, 0x69, 0x40, 0x52,
-  0x8c, 0x4c, 0x14, 0xf1, 0xd5, 0x7f, 0x55, 0xe5, 0x50, 0xf1, 0x06, 0x58,
-  0x8f, 0xc1, 0x71, 0x59, 0xcc, 0x8c, 0x9a, 0x74, 0x02, 0xdc, 0xde, 0x6c,
-  0x60, 0x4e, 0xc1, 0xbd, 0xb3, 0xeb, 0x67, 0xeb, 0xaf, 0x87, 0x74, 0x54,
-  0x8a, 0x30, 0xc4, 0xeb, 0x35, 0x7d, 0x48, 0xa5, 0x16, 0x2c, 0xe6, 0xc4,
-  0xd5, 0xea, 0x32, 0x63, 0xff, 0x06, 0x2c, 0x13, 0xed, 0xd3, 0x76, 0x4b,
-  0x95, 0x0e, 0xc9, 0xda, 0xf9, 0x9c, 0x3c, 0x3a, 0x0f, 0x71, 0x06, 0xd2,
-  0xe3, 0x9b, 0xea, 0xd4, 0x22, 0x03, 0x5d, 0xaa, 0x3e, 0xd4, 0xd2, 0x41,
-  0xdd, 0x93, 0x3a, 0x1e, 0x91, 0x11, 0xf8, 0x51, 0xa7, 0x57, 0xe7, 0x36,
-  0xef, 0x84, 0x0c, 0x94, 0x74, 0x14, 0x09, 0x27, 0x6a, 0xd8, 0x46, 0x34,
-  0x8e, 0x38, 0x81, 0x28, 0x84, 0x86, 0x4a, 0xf9, 0xa6, 0x45, 0x1b, 0x40,
-  0x9e, 0x98, 0x15, 0x31, 0xd6, 0xec, 0x96, 0xaa, 0xb3, 0x1b, 0x35, 0xea,
-  0x49, 0xa8, 0x04, 0xbc, 0xe0, 0xc9, 0x88, 0xc6, 0x53, 0xf9, 0x42, 0x2b,
-  0x4b, 0x94, 0x12, 0x2f, 0x3a, 0xec, 0xb8, 0xe1, 0x48, 0x61, 0xdb, 0xf8,
-  0x76, 0x23, 0xca, 0x46, 0xd9, 0x2f, 0x27, 0xd6, 0x89, 0x8e, 0x67, 0xce,
-  0xf7, 0xc4, 0x71, 0x23, 0xaf, 0x37, 0x92, 0x3e, 0x3f, 0xdb, 0x43, 0x5c,
-  0x73, 0x71, 0x67, 0x1c, 0x7b, 0xe3, 0xba, 0x16, 0x18, 0xeb, 0x9b, 0x6b,
-  0x11, 0xdf, 0xe3, 0x4f, 0x23, 0xc4, 0xf7, 0xe6, 0xe4, 0xec, 0xe8, 0x80,
-  0xb3, 0x7a, 0x54, 0xea, 0xa7, 0x90, 0x4b, 0xcd, 0x39, 0x20, 0xfb, 0x38,
-  0x07, 0x37, 0x20, 0xad, 0x8a, 0x32, 0x63, 0xd3, 0xd9, 0x35, 0x81, 0x62,
-  0x6e, 0x86, 0x51, 0x35, 0xb0, 0xbc, 0x60, 0xed, 0xe0, 0xf9, 0xe0, 0x62,
-  0xc1, 0x60, 0xe2, 0x4d, 0x2f, 0x7a, 0x3e, 0xc1, 0xf1, 0xe4, 0x0e, 0x1f,
-  0x22, 0x08, 0x8c, 0xd2, 0x9a, 0xb1, 0x30, 0xa1, 0xac, 0x96, 0x22, 0x24,
-  0xb6, 0xc9, 0x48, 0x85, 0x2f, 0x32, 0x39, 0xac, 0x13, 0xad, 0x9c, 0x47,
-  0xbc, 0x7b, 0x38, 0xc4, 0xc6, 0x00, 0x63, 0xf6, 0xe7, 0xbd, 0x40, 0x96,
-  0xa8, 0x00, 0x26, 0x27, 0xc3, 0x43, 0xe1, 0x53, 0x4b, 0x83, 0xea, 0x50,
-  0xac, 0x87, 0x8b, 0xc1, 0x68, 0x74, 0x1c, 0x6a, 0xad, 0xd6, 0xbe, 0x26,
-  0x4a, 0xc1, 0x90, 0x03, 0xce, 0xb2, 0x6b, 0x2e, 0x1f, 0xc9, 0x96, 0x0c,
-  0x48, 0xa5, 0x7e, 0x28, 0x18, 0x2c, 0xc8, 0xb1, 0xa2, 0x76, 0xd6, 0x86,
-  0x82, 0xd2, 0x1f, 0x80, 0xb2, 0xd3, 0xac, 0x19, 0xa6, 0x4a, 0xb6, 0xc2,
-  0xe4, 0x0c, 0x9f, 0x64, 0xba, 0x79, 0xbc, 0xe3, 0x61, 0xfe, 0x60, 0x4a,
-  0x31, 0xe4, 0x62, 0x0d, 0xc8, 0x36, 0x4b, 0xb6, 0x6b, 0xdd, 0x06, 0x39,
-  0xc1, 0x99, 0x08, 0x3a, 0xeb, 0xef, 0xe7, 0x19, 0x5d, 0x0c, 0x65, 0x47,
-  0xd6, 0x86, 0xdf, 0xbe, 0xd6, 0x68, 0x05, 0x3c, 0x94, 0x17, 0x1a, 0x59,
-  0xc9, 0xd2, 0x38, 0x3b, 0x9f, 0x15, 0x7f, 0xde, 0xd0, 0x72, 0x09, 0x86,
-  0xe5, 0x62, 0x36, 0x42, 0xe3, 0x30, 0x2c, 0x6b, 0xe3, 0x24, 0xf1, 0x11,
-  0x45, 0xe1, 0x7c, 0xba, 0xa0, 0x33, 0x41, 0xfb, 0x82, 0x3d, 0x20, 0x23,
-  0xf1, 0x39, 0x10, 0x5b, 0x92, 0xbf, 0x97, 0xe7, 0x62, 0x39, 0x84, 0x7c,
-  0x19, 0x43, 0xe6, 0xbb, 0xa0, 0xb4, 0x8f, 0x95, 0xa1, 0xa9, 0xd9, 0x8a,
-  0x9d, 0x01, 0x18, 0x90, 0x24, 0x10, 0x50, 0x52, 0x08, 0xb9, 0xe8, 0x92,
-  0x4b, 0x06, 0xf3, 0xa2, 0x08, 0x66, 0xc5, 0x67, 0x08, 0x41, 0x00, 0xf6,
-  0x00, 0xd4, 0xe0, 0xaf, 0x70, 0x3a, 0x85, 0x09, 0xcf, 0x34, 0x2e, 0x60,
-  0x38, 0x0c, 0xa0, 0xeb, 0xf2, 0x2c, 0xd2, 0x69, 0xb3, 0x92, 0x85, 0xef,
-  0x8e, 0xae, 0x54, 0xd3, 0xbe, 0x79, 0x97, 0xaa, 0xc2, 0xd0, 0x89, 0x9e,
-  0x1a, 0xba, 0x4b, 0xa7, 0x77, 0x7a, 0xc5, 0xbb, 0xfb, 0x50, 0x00, 0x9a,
-  0x5d, 0x0d, 0x99, 0x30, 0xf5, 0x59, 0x07, 0x01, 0x27, 0x7d, 0x5e, 0xf7,
-  0x14, 0x6f, 0xfb, 0x4d, 0xb5, 0x61, 0xbf, 0x04, 0x27, 0x7b, 0x4a, 0x14,
-  0x48, 0xba, 0x75, 0xb0, 0xb3, 0x26, 0xc5, 0x2a, 0xaf, 0xcb, 0xd3, 0xe5,
-  0x18, 0x38, 0xae, 0x44, 0xc7, 0x6e, 0xc7, 0x4e, 0xfa, 0x8a, 0x36, 0x62,
-  0x9d, 0x43, 0x5d, 0x49, 0xf0, 0xb5, 0x3e, 0xa0, 0xe6, 0x0a, 0x0b, 0x12,
-  0x63, 0xd1, 0x34, 0x72, 0x89, 0xec, 0xd7, 0x84, 0xc9, 0xa7, 0x86, 0x11,
-  0xb3, 0x8d, 0xab, 0x0e, 0x45, 0x30, 0xf6, 0x70, 0x60, 0xad, 0x61, 0xed,
-  0x58, 0x27, 0x2b, 0x3c, 0x6d, 0x8b, 0xd4, 0x16, 0xdd, 0x20, 0xce, 0xc0,
-  0x8e, 0x04, 0xa6, 0xe7, 0x8d, 0x3e, 0x66, 0x24, 0xec, 0xd3, 0x37, 0x47,
-  0x5f, 0x9f, 0x6c, 0xdd, 0x67, 0x34, 0x6a, 0x27, 0x41, 0xd8, 0x10, 0xb2,
-  0x54, 0xa3, 0x41, 0x25, 0x58, 0x8c, 0x2e, 0xe1, 0xaf, 0x27, 0x93, 0xd1,
-  0x8b, 0xd3, 0x57, 0x54, 0x25, 0x76, 0x62, 0xfe, 0xed, 0xa9, 0x43, 0x30,
-  0xa6, 0x32, 0x18, 0xa3, 0xef, 0x24, 0x3f, 0xb0, 0xd6, 0x60, 0x30, 0x32,
-  0xcf, 0x90, 0x6d, 0x95, 0xe1, 0x43, 0x99, 0x1b, 0x5a, 0x7c, 0x08, 0x6a,
-  0xbe, 0xbb, 0x22, 0xa7, 0xaf, 0xb6, 0xa9, 0x2b, 0x74, 0x49, 0x13, 0xea,
-  0xb1, 0x11, 0xaf, 0xc2, 0x02, 0xb1, 0x60, 0x15, 0x14, 0x4a, 0x48, 0xc4,
-  0xa4, 0x41, 0xbf, 0x46, 0xc6, 0x01, 0xc7, 0x73, 0x6e, 0x99, 0x78, 0x8a,
-  0x05, 0x2c, 0x14, 0x88, 0xa1, 0x57, 0xd4, 0xe0, 0x8e, 0x49, 0x84, 0x24,
-  0x11, 0xc6, 0x86, 0x9c, 0xa3, 0x76, 0xc3, 0x44, 0x7d, 0x68, 0x5d, 0xd9,
-  0x7f, 0x63, 0xb4, 0x4a, 0x92, 0x83, 0x0d, 0xf6, 0x1e, 0x64, 0x45, 0xb9,
-  0xba, 0xbc, 0x62, 0x31, 0xa2, 0x2d, 0x6b, 0x93, 0x22, 0xa9, 0x3e, 0x36,
-  0x5b, 0xb7, 0xc4, 0x0c, 0x32, 0xb8, 0x60, 0xe8, 0x1d, 0x65, 0x14, 0x55,
-  0x06, 0x17, 0x00, 0xf3, 0x03, 0x21, 0xf0, 0x3f, 0x04, 0xff, 0x7f, 0xcd,
-  0x91, 0x3d, 0x87, 0x7b, 0x0c, 0x6b, 0x5b, 0x34, 0x73, 0xe2, 0xf7, 0xe6,
-  0x5a, 0x23, 0xfb, 0x95, 0xd8, 0x71, 0x29, 0xc3, 0xcf, 0x52, 0x73, 0x9b,
-  0xc4, 0x9b, 0x6a, 0x4a, 0x92, 0x2c, 0x07, 0x19, 0xc6, 0x30, 0xb0, 0xce,
-  0xba, 0xc8, 0x47, 0xb5, 0xb9, 0xb4, 0x8c, 0xc0, 0x40, 0xf7, 0x59, 0x31,
-  0xd4, 0x56, 0x86, 0x46, 0xe2, 0x13, 0x37, 0x88, 0xdc, 0x19, 0xb2, 0xfd,
-  0x11, 0x41, 0x96, 0x8a, 0xa7, 0x6e, 0xa6, 0xe7, 0x75, 0x39, 0x5f, 0x35,
-  0xa4, 0xf5, 0xc0, 0x4a, 0x85, 0xf4, 0x89, 0x2d, 0x17, 0x5b, 0x48, 0xad,
-  0xfa, 0x21, 0x86, 0x51, 0xfd, 0xdb, 0x15, 0xf6, 0x1d, 0x3b, 0xfb, 0x3a,
-  0x7b, 0x89, 0x84, 0xe5, 0x60, 0x4d, 0xb9, 0x2d, 0x6a, 0x6a, 0x49, 0x31,
-  0x27, 0xd7, 0x0a, 0x35, 0x18, 0xee, 0x9c, 0xee, 0x52, 0x6b, 0x75, 0x2c,
-  0xf8, 0x5b, 0x95, 0xb5, 0x43, 0x91, 0x1d, 0x83, 0x8d, 0x89, 0xd9, 0xbd,
-  0xb1, 0xa8, 0xea, 0x0d, 0x3e, 0xc7, 0xf9, 0x30, 0x72, 0x86, 0x76, 0xc6,
-  0xfd, 0xa4, 0x14, 0xa8, 0x61, 0xef, 0x8c, 0x87, 0x82, 0xf3, 0xb8, 0xcd,
-  0x68, 0x9b, 0xb6, 0x76, 0xdb, 0x55, 0xaa, 0xdb, 0x3d, 0x75, 0x9a, 0xfe,
-  0x2e, 0xe3, 0xc8, 0x22, 0xde, 0x62, 0xda, 0x8d, 0xd6, 0x26, 0x77, 0xa0,
-  0x23, 0x44, 0x9a, 0xc6, 0x42, 0x8c, 0xe9, 0x89, 0x80, 0x74, 0xe1, 0x2a,
-  0xb5, 0xb3, 0xd2, 0x84, 0x32, 0x28, 0x94, 0x29, 0x17, 0xa2, 0xe5, 0x97,
-  0xbd, 0x3e, 0xfc, 0x6c, 0xf4, 0x75, 0x54, 0xef, 0x76, 0x67, 0xfc, 0x80,
-  0x05, 0x71, 0xf3, 0x77, 0x1f, 0x06, 0x42, 0x90, 0xf5, 0x07, 0xd6, 0x53,
-  0x11, 0x84, 0xc7, 0x42, 0x85, 0x9b, 0xef, 0xe5, 0x17, 0x9c, 0x81, 0xef,
-  0x73, 0xa3, 0x91, 0xde, 0x18, 0xfd, 0x4d, 0x88, 0x33, 0x2f, 0x62, 0x20,
-  0xd9, 0xe0, 0x1a, 0x1b, 0xb5, 0x11, 0x5a, 0x0c, 0xaf, 0x71, 0xa1, 0x58,
-  0xb8, 0xa5, 0xd8, 0x8e, 0x1e, 0x30, 0x21, 0xaf, 0x24, 0xf0, 0xdd, 0x32,
-  0xc8, 0x90, 0x98, 0x5a, 0x76, 0x43, 0x6d, 0x10, 0x6e, 0x77, 0x91, 0xa0,
-  0xbe, 0xe3, 0xd8, 0x3a, 0x6f, 0x2d, 0x7e, 0x97, 0xef, 0xd3, 0x12, 0x3c,
-  0xb9, 0xc8, 0xe8, 0x02, 0xef, 0x06, 0x2d, 0x2f, 0x4d, 0x74, 0xf3, 0xf1,
-  0x16, 0x8d, 0xed, 0xa2, 0x59, 0x6e, 0xee, 0x6e, 0x71, 0x0d, 0x07, 0xce,
-  0x3e, 0x96, 0xc0, 0x9f, 0x18, 0x22, 0xb8, 0x84, 0x90, 0x25, 0x87, 0xb6,
-  0x6f, 0xf2, 0x6d, 0x01, 0x17, 0x4c, 0x20, 0xdf, 0xf8, 0x18, 0xf3, 0xaa,
-  0xd9, 0xfa, 0xe5, 0x88, 0x56, 0x8d, 0x69, 0xbb, 0x9c, 0x6e, 0x8d, 0x03,
-  0x4b, 0x55, 0xc4, 0xc9, 0x91, 0xb5, 0xd9, 0x2a, 0x23, 0x5d, 0x48, 0x82,
-  0xab, 0x59, 0xbd, 0xf9, 0x6c, 0x84, 0xb8, 0xb7, 0xe4, 0xb2, 0x2a, 0xc3,
-  0x1b, 0x12, 0x69, 0x7f, 0x58, 0x83, 0x2d, 0x0e, 0x79, 0xcf, 0x8a, 0xeb,
-  0xbc, 0x2a, 0x0b, 0x42, 0x6c, 0xbc, 0x4e, 0xab, 0x9c, 0x5c, 0xb9, 0x83,
-  0x6f, 0x4e, 0x5e, 0x1f, 0x0d, 0x2c, 0xaf, 0xa6, 0x2a, 0x4c, 0xb9, 0x60,
-  0x96, 0x05, 0xf0, 0xa2, 0xfe, 0x96, 0x46, 0x54, 0xe3, 0xc4, 0xdc, 0xe8,
-  0xd3, 0x0f, 0xb4, 0x80, 0x94, 0x6b, 0x4f, 0x88, 0x63, 0x99, 0x4d, 0xa1,
-  0x34, 0x4a, 0x8e, 0x78, 0x7a, 0xa5, 0x2c, 0xa9, 0x92, 0x19, 0x45, 0x7a,
-  0xc4, 0x0a, 0x3f, 0xa9, 0xaf, 0x90, 0x8a, 0x3f, 0x95, 0x7e, 0x61, 0xcc,
-  0xc4, 0x2b, 0x9e, 0x89, 0x24, 0x65, 0x75, 0xc6, 0xf1, 0xfe, 0x46, 0xa2,
-  0x9f, 0x37, 0x16, 0x77, 0xa8, 0x74, 0xb2, 0xd1, 0xbe, 0xff, 0x36, 0x6a,
-  0x08, 0xaf, 0xcd, 0x86, 0x2e, 0x2e, 0x45, 0x05, 0x3a, 0x46, 0x1f, 0x16,
-  0x2c, 0xef, 0xe9, 0x9d, 0x49, 0x9b, 0xbb, 0x70, 0xad, 0x73, 0xe3, 0xee,
-  0x08, 0x1e, 0xf0, 0x11, 0xbc, 0x6d, 0xa2, 0x30, 0x3b, 0x3e, 0x28, 0x52,
-  0xea, 0xf2, 0x80, 0xda, 0xb5, 0xce, 0xdb, 0x1e, 0x5a, 0x54, 0x59, 0x09,
-  0xcd, 0x65, 0xa6, 0xfb, 0x72, 0xca, 0xf0, 0x54, 0xd6, 0xd9, 0xd5, 0x01,
-  0x3c, 0x57, 0x21, 0xa9, 0xf0, 0xaa, 0x1e, 0x53, 0x6b, 0xbd, 0x98, 0xb7,
-  0xe6, 0xde, 0xa6, 0x58, 0x19, 0xb5, 0x3d, 0xe7, 0x15, 0xa0, 0x60, 0x02,
-  0xc7, 0xde, 0xd0, 0x4f, 0x9a, 0xed, 0x83, 0xe0, 0x76, 0x11, 0x07, 0x56,
-  0x2c, 0x61, 0x0c, 0x6a, 0x46, 0x48, 0xb6, 0x9e, 0x60, 0x05, 0x78, 0x0e,
-  0x01, 0xb3, 0xec, 0x4a, 0xaa, 0xf9, 0x86, 0x12, 0x53, 0x08, 0x80, 0x10,
-  0x71, 0x5f, 0xd6, 0x01, 0xcc, 0x40, 0x0c, 0x24, 0x6f, 0xa0, 0xf2, 0x4e,
-  0x4a, 0xa1, 0x14, 0x59, 0x14, 0xfb, 0x8b, 0xa3, 0xc7, 0x65, 0x6a, 0x52,
-  0x48, 0xa4, 0x5e, 0x55, 0xd7, 0x94, 0xdc, 0x28, 0xa5, 0xe7, 0x38, 0x02,
-  0xd4, 0xed, 0x87, 0xec, 0x43, 0xe4, 0x14, 0x7b, 0x23, 0x44, 0x64, 0x5e,
-  0x25, 0x00, 0x4b, 0xc9, 0xd7, 0x3c, 0x0a, 0x3b, 0x40, 0x8d, 0x31, 0x21,
-  0x8c, 0x0b, 0x16, 0x62, 0x83, 0x58, 0xec, 0xb2, 0x26, 0xd8, 0xda, 0xc6,
-  0x28, 0x56, 0xee, 0x97, 0x51, 0x5a, 0x4f, 0xf3, 0x5c, 0x4b, 0x99, 0xc1,
-  0x0a, 0x9e, 0x21, 0xe0, 0x31, 0x0e, 0xb3, 0x62, 0xf7, 0xc3, 0x16, 0x11,
-  0x9a, 0x95, 0x1c, 0x67, 0xcf, 0x41, 0x08, 0x29, 0x57, 0xca, 0x84, 0x1b,
-  0x9e, 0x32, 0xa0, 0xc4, 0x44, 0x1e, 0xab, 0xee, 0xa6, 0x09, 0x15, 0x3d,
-  0xb0, 0x02, 0x37, 0x37, 0x37, 0xbb, 0x3e, 0x78, 0x80, 0x2e, 0xc2, 0x08,
-  0x60, 0x47, 0x75, 0x43, 0x57, 0xa8, 0x79, 0x66, 0xcf, 0x7f, 0x66, 0x9d,
-  0x8f, 0xb2, 0x83, 0xad, 0x53, 0x94, 0xa3, 0x74, 0xbe, 0x2c, 0x7a, 0xe0,
-  0x4a, 0xfd, 0x7a, 0xb1, 0x2f, 0x8e, 0x4f, 0xdf, 0x10, 0xec, 0x1a, 0x2a,
-  0x07, 0x14, 0x35, 0xbb, 0x8f, 0xf1, 0x99, 0x57, 0xa7, 0x51, 0x2c, 0x1d,
-  0x41, 0x16, 0x2d, 0xb9, 0x80, 0x48, 0x7b, 0xd0, 0x54, 0x14, 0x0e, 0xc0,
-  0xf0, 0xf4, 0x13, 0xb3, 0x84, 0x5e, 0x1e, 0x1b, 0x33, 0x78, 0x55, 0x2f,
-  0xba, 0xd3, 0x31, 0xbd, 0xba, 0xbe, 0xb5, 0xca, 0x48, 0x6a, 0xdb, 0x6e,
-  0xbd, 0x6b, 0x91, 0xe7, 0x4a, 0x85, 0x99, 0xeb, 0x8e, 0x0e, 0x3c, 0x41,
-  0xf1, 0xed, 0x44, 0x53, 0xb4, 0xfe, 0x20, 0x2d, 0xde, 0xc6, 0xde, 0x73,
-  0xc2, 0x27, 0xd0, 0x34, 0xe8, 0x7a, 0x7d, 0xe2, 0xba, 0x59, 0xd8, 0x62,
-  0x59, 0x74, 0x61, 0x9b, 0x64, 0xb9, 0xa3, 0xe9, 0x3e, 0x01, 0x86, 0xd8,
-  0xda, 0xf4, 0x1f, 0x1d, 0x2a, 0x6a, 0xc6, 0xad, 0xd9, 0xe0, 0x37, 0x43,
-  0xee, 0xf5, 0x7c, 0x05, 0x0e, 0xd1, 0xe9, 0x41, 0xb6, 0x97, 0x25, 0x27,
-  0x7e, 0x82, 0x70, 0xcf, 0x2f, 0x3c, 0xb0, 0x1c, 0xa4, 0xea, 0x65, 0xe9,
-  0x62, 0x0c, 0x7f, 0x97, 0xc4, 0x83, 0x13, 0xac, 0x4f, 0x9d, 0x07, 0xa1,
-  0x96, 0xab, 0x54, 0x38, 0x96, 0x96, 0x73, 0x20, 0x2e, 0xd0, 0x09, 0x13,
-  0xe7, 0x6e, 0xc0, 0x49, 0xfd, 0xe6, 0x63, 0xa9, 0x3f, 0xf4, 0xba, 0x4d,
-  0x6f, 0x17, 0xb3, 0xa4, 0x56, 0xce, 0x65, 0xe0, 0x7c, 0x6e, 0x42, 0x81,
-  0xd2, 0x49, 0x9d, 0x07, 0x2e, 0xba, 0x19, 0x42, 0x98, 0xf5, 0xaa, 0x11,
-  0x9d, 0x28, 0xfe, 0xc2, 0x15, 0xa7, 0xf1, 0x0b, 0x23, 0xb7, 0xdb, 0x16,
-  0x80, 0xd9, 0x7f, 0x0d, 0x43, 0xae, 0x00, 0xdd, 0xf7, 0x83, 0x9b, 0x29,
-  0xe6, 0xb2, 0x9c, 0x0f, 0x33, 0x2a, 0xbb, 0x80, 0xd1, 0x80, 0x65, 0xdd,
-  0x69, 0x11, 0xcc, 0x10, 0x5d, 0x9f, 0x5d, 0x7a, 0x57, 0x8a, 0x04, 0x6f,
-  0x2a, 0x46, 0x10, 0x25, 0x9e, 0x68, 0x50, 0x48, 0xc0, 0x0e, 0x57, 0x44,
-  0xf6, 0xd0, 0xd8, 0xa8, 0x4f, 0x82, 0xe8, 0xf0, 0x0a, 0xaf, 0x45, 0x46,
-  0xd2, 0x4e, 0xc1, 0xee, 0xa3, 0x03, 0x96, 0x97, 0x28, 0x93, 0xc8, 0x10,
-  0x81, 0xcb, 0xd8, 0x96, 0xf8, 0x00, 0x1b, 0xac, 0x8d, 0xb2, 0xca, 0x7e,
-  0x5d, 0xd7, 0x08, 0xdf, 0x72, 0x71, 0x38, 0x0a, 0x43, 0x8c, 0x42, 0x68,
-  0xeb, 0x2a, 0xb9, 0xfe, 0x7e, 0xab, 0xe4, 0x26, 0xe2, 0x2d, 0x94, 0xfd,
-  0xb0, 0xb3, 0x48, 0xc5, 0x83, 0xb8, 0xe1, 0x9b, 0x90, 0x19, 0xbe, 0x69,
-  0xf3, 0x42, 0x37, 0xd3, 0x20, 0x5d, 0x36, 0x72, 0xa2, 0xef, 0xe5, 0x81,
-  0x68, 0x1e, 0x51, 0xd4, 0xa7, 0x6f, 0xc2, 0x64, 0x5e, 0x41, 0x80, 0x3f,
-  0xa7, 0x38, 0x88, 0xfb, 0xb8, 0xa0, 0xd5, 0xdf, 0xe5, 0xb3, 0xae, 0x1e,
-  0xfc, 0x4f, 0xb3, 0x40, 0x55, 0xab, 0x84, 0xd5, 0x85, 0x1c, 0xb0, 0x08,
-  0x18, 0xa0, 0xd0, 0xdd, 0xef, 0xc3, 0x02, 0xd1, 0xa5, 0x51, 0xb5, 0x2f,
-  0xe1, 0x7c, 0x85, 0xe9, 0x31, 0x60, 0x83, 0x27, 0xd6, 0x6c, 0xc4, 0xd9,
-  0x14, 0xb6, 0xc0, 0xa0, 0xbe, 0x95, 0xd0, 0x5b, 0xca, 0x6e, 0x14, 0x6f,
-  0x75, 0xb1, 0x22, 0xeb, 0x73, 0x10, 0x20, 0xed, 0x28, 0x3f, 0x65, 0x30,
-  0x07, 0xa4, 0x33, 0xa7, 0x55, 0x21, 0x40, 0xd2, 0x7e, 0x74, 0x94, 0x61,
-  0xa6, 0xf6, 0x68, 0x31, 0xaa, 0xd8, 0xa8, 0x0e, 0xcd, 0x46, 0x75, 0x4e,
-  0x69, 0x8f, 0x51, 0x3d, 0x96, 0x0e, 0x8d, 0x5d, 0x44, 0xc6, 0xb2, 0xeb,
-  0x3d, 0x37, 0xfe, 0xb1, 0x11, 0x13, 0x47, 0xff, 0xa1, 0x69, 0x2f, 0x19,
-  0x9f, 0x1c, 0x4b, 0xfe, 0x9d, 0x95, 0xa1, 0x6c, 0xf4, 0x07, 0xc2, 0x8d,
-  0x31, 0x41, 0xd4, 0x43, 0x3b, 0xb1, 0x36, 0xf6, 0xdf, 0xd3, 0x60, 0xef,
-  0x84, 0xd8, 0xf2, 0x59, 0x14, 0x64, 0x41, 0x0f, 0xa5, 0xd4, 0xc3, 0x5e,
-  0x71, 0xb4, 0x37, 0x8e, 0x91, 0xa2, 0xbb, 0xbc, 0x7a, 0x49, 0xe8, 0xe2,
-  0x54, 0xcb, 0x07, 0xf8, 0x65, 0x3d, 0xc7, 0x92, 0x0a, 0x54, 0xd8, 0x8a,
-  0xaf, 0x64, 0xa0, 0x01, 0x44, 0xa6, 0x0f, 0xbb, 0x05, 0xa4, 0x3f, 0xbf,
-  0x94, 0x23, 0xbb, 0x04, 0xa5, 0x7a, 0x56, 0xdc, 0x9e, 0x04, 0x55, 0x80,
-  0xd2, 0x61, 0xaf, 0x56, 0x86, 0x52, 0x21, 0xa6, 0x70, 0xb5, 0x3b, 0xf1,
-  0x1d, 0x41, 0x3d, 0x20, 0x76, 0x8b, 0x01, 0x7b, 0x23, 0x0e, 0xa8, 0x80,
-  0x00, 0xaf, 0x61, 0x84, 0x5d, 0x48, 0x16, 0xcf, 0x79, 0x55, 0x7e, 0xc8,
-  0x98, 0x5f, 0x90, 0x52, 0x48, 0xe0, 0x48, 0x2c, 0x03, 0x4b, 0xe4, 0xbb,
-  0xb9, 0xa1, 0x66, 0x36, 0x10, 0x30, 0x50, 0x64, 0xb9, 0xb0, 0xae, 0xa0,
-  0x2a, 0xb8, 0x7b, 0x2c, 0xa7, 0xd7, 0x09, 0xcf, 0x40, 0x6b, 0xd0, 0xf0,
-  0x51, 0x9b, 0x22, 0x50, 0xe6, 0x0f, 0xe4, 0xd9, 0x76, 0xd7, 0x7d, 0x9e,
-  0x1d, 0xd9, 0xd2, 0x87, 0xd7, 0xcb, 0x35, 0xb4, 0x44, 0x16, 0xcc, 0xe4,
-  0x39, 0x33, 0x84, 0xdb, 0x3b, 0xca, 0xf4, 0xeb, 0x9a, 0x29, 0xa9, 0xee,
-  0xf3, 0x48, 0xb5, 0xc5, 0x99, 0xcd, 0x0e, 0xbb, 0x90, 0xc4, 0x09, 0xac,
-  0x0a, 0x07, 0x1b, 0x79, 0xe9, 0xad, 0x29, 0xd7, 0x96, 0x01, 0xaa, 0x44,
-  0xa4, 0x30, 0x17, 0x6c, 0x9d, 0xd6, 0x06, 0x47, 0x96, 0x03, 0xd2, 0xa0,
-  0xb0, 0x41, 0x84, 0xac, 0x93, 0xd7, 0x7e, 0xe4, 0x5f, 0xf2, 0xaf, 0x09,
-  0xc2, 0xa3, 0x8c, 0x4e, 0x62, 0x8e, 0x56, 0x97, 0x0e, 0xb8, 0x67, 0xae,
-  0x4f, 0x40, 0x29, 0x5e, 0x73, 0x29, 0x45, 0x02, 0xb1, 0x0b, 0x27, 0xcb,
-  0x02, 0xc8, 0x00, 0x8b, 0xdc, 0x97, 0xef, 0xb8, 0xf8, 0x4d, 0xb7, 0x4a,
-  0x0c, 0x34, 0x50, 0xda, 0x1f, 0x85, 0xcb, 0xa0, 0xd9, 0xe6, 0x52, 0x01,
-  0x81, 0x43, 0x4b, 0xc4, 0x38, 0x92, 0x6a, 0xd8, 0x88, 0x8c, 0xc1, 0x08,
-  0x00, 0x41, 0x1c, 0x3a, 0x41, 0xdc, 0x31, 0x37, 0xc7, 0xa0, 0x04, 0x1b,
-  0x51, 0x0b, 0x0f, 0xe8, 0x47, 0x52, 0x24, 0xb5, 0xe3, 0xdf, 0x0f, 0x93,
-  0x66, 0x8d, 0xe6, 0x49, 0x2a, 0x0f, 0x47, 0xf6, 0xd2, 0x88, 0x58, 0x1f,
-  0xc5, 0xa7, 0x43, 0xf7, 0xeb, 0xc1, 0xa7, 0x3b, 0x9c, 0x8e, 0x0e, 0x4d,
-  0x68, 0xec, 0x9e, 0x08, 0x60, 0x9c, 0xa9, 0xd4, 0x1d, 0x3d, 0x64, 0xfe,
-  0xb5, 0xcf, 0xf5, 0x80, 0xb1, 0xc3, 0x31, 0xbf, 0x0f, 0xff, 0x5e, 0xdb,
-  0x72, 0xdd, 0x0e, 0x47, 0x8e, 0x99, 0x80, 0xa2, 0xc1, 0xb8, 0x33, 0x4f,
-  0x78, 0x60, 0x32, 0xdc, 0xdc, 0x28, 0xca, 0xf7, 0xf4, 0x2b, 0xdb, 0x50,
-  0x36, 0xde, 0x9c, 0xbc, 0xa7, 0x2a, 0x8c, 0x1b, 0x5b, 0x63, 0xcd, 0x55,
-  0x37, 0x87, 0x7e, 0x23, 0x0c, 0x5c, 0x4b, 0x5a, 0xdd, 0x3a, 0xd3, 0x13,
-  0xf7, 0xc1, 0x71, 0x38, 0x42, 0x8f, 0xb6, 0xc6, 0x6d, 0x26, 0x79, 0xca,
-  0xc1, 0x22, 0xf3, 0x60, 0x68, 0xdb, 0x0d, 0x31, 0x0f, 0xa8, 0x72, 0x97,
-  0xce, 0x31, 0xc9, 0x9b, 0xb5, 0x07, 0xec, 0xd9, 0xf8, 0x51, 0xeb, 0x80,
-  0x35, 0xf3, 0xc5, 0xe8, 0xe6, 0xfc, 0x1e, 0x37, 0xd7, 0xd9, 0xf1, 0x6b,
-  0x73, 0x77, 0x22, 0x79, 0x47, 0x32, 0xff, 0x50, 0xa3, 0x4a, 0xde, 0xa6,
-  0x4b, 0x8e, 0x8d, 0xc3, 0x40, 0xf7, 0xa6, 0x81, 0xc4, 0x4c, 0x7a, 0x1d,
-  0x97, 0x8e, 0x4b, 0x05, 0x15, 0x1b, 0x8f, 0xc2, 0xd9, 0x99, 0x26, 0xd9,
-  0x81, 0xb1, 0x5c, 0xce, 0xf3, 0x68, 0xca, 0x8e, 0x06, 0xb9, 0x66, 0xb7,
-  0xd9, 0x74, 0x45, 0x19, 0x35, 0xd0, 0x08, 0x80, 0x0f, 0xb5, 0xde, 0x57,
-  0x42, 0xa3, 0x6d, 0xf9, 0x45, 0xcc, 0x07, 0xdd, 0xc5, 0xe8, 0xce, 0x9d,
-  0x27, 0x1f, 0x58, 0x4b, 0x39, 0x12, 0x3e, 0xf6, 0x5d, 0x10, 0x8e, 0x42,
-  0xc1, 0xef, 0x90, 0x82, 0x0c, 0x01, 0xe6, 0x97, 0x05, 0xcb, 0x99, 0xaf,
-  0xf3, 0x69, 0x55, 0xd6, 0xe5, 0x85, 0x24, 0x55, 0x38, 0x9d, 0xf8, 0xd5,
-  0xab, 0x49, 0x72, 0x93, 0x9d, 0x6b, 0xa6, 0xeb, 0x38, 0xf4, 0x1e, 0x50,
-  0xca, 0x05, 0x9c, 0x61, 0x55, 0x9e, 0x35, 0x58, 0x32, 0x8d, 0x35, 0x01,
-  0xfc, 0x13, 0x15, 0xe3, 0x14, 0x70, 0x14, 0xd2, 0xd9, 0x4c, 0x93, 0xd3,
-  0x39, 0x5d, 0x69, 0xc9, 0x32, 0x0b, 0x29, 0x69, 0xce, 0x97, 0xbb, 0xbd,
-  0x8f, 0x3c, 0x0f, 0xeb, 0x79, 0x2a, 0xa5, 0x22, 0xd9, 0x1c, 0x64, 0xb8,
-  0x14, 0xc4, 0x52, 0x31, 0xa3, 0x7d, 0x80, 0x7d, 0x34, 0xc8, 0x42, 0xb1,
-  0x21, 0xa3, 0x72, 0x95, 0x32, 0x18, 0x33, 0x02, 0x4e, 0xca, 0x8a, 0xa2,
-  0x33, 0xbc, 0x22, 0x6e, 0x54, 0x07, 0x6b, 0x55, 0x51, 0x3a, 0x15, 0xc1,
-  0x92, 0x86, 0xe0, 0xd6, 0x37, 0x57, 0x0c, 0x92, 0xa0, 0xbb, 0xe0, 0xc4,
-  0x3d, 0x4a, 0xda, 0x91, 0x62, 0x32, 0x18, 0xbf, 0xbb, 0xa9, 0xbc, 0xdd,
-  0x88, 0xc2, 0x18, 0xca, 0x7e, 0xb8, 0x54, 0x51, 0x0e, 0x43, 0x33, 0x42,
-  0xc9, 0x65, 0x4f, 0x39, 0x6f, 0x0b, 0xdc, 0xe0, 0xe4, 0x29, 0x1a, 0x8d,
-  0xdc, 0xb5, 0x95, 0x1c, 0xc7, 0xa0, 0x46, 0x7d, 0xac, 0x78, 0x9b, 0x95,
-  0xd3, 0x02, 0xea, 0xeb, 0xc3, 0xbb, 0xf0, 0x94, 0x85, 0x8e, 0x0f, 0x91,
-  0x2e, 0xa4, 0xc6, 0x56, 0x1a, 0xe6, 0x5b, 0xeb, 0xa3, 0xdc, 0x87, 0xed,
-  0xa1, 0xd8, 0x13, 0xe0, 0xd5, 0x1f, 0x68, 0x89, 0xfa, 0x2a, 0xda, 0x07,
-  0xe0, 0x12, 0x9e, 0x7d, 0x28, 0x2e, 0xe9, 0xf7, 0x81, 0xee, 0x93, 0xf7,
-  0x32, 0x12, 0xe4, 0xeb, 0x39, 0xe0, 0xe5, 0xef, 0x19, 0x6d, 0x8f, 0xfc,
-  0x21, 0x3e, 0x4e, 0xff, 0xe8, 0x96, 0xf8, 0x60, 0x6f, 0x74, 0x9e, 0x19,
-  0x21, 0xb0, 0x4a, 0x9e, 0x37, 0x90, 0xb4, 0xee, 0x49, 0x0f, 0x91, 0x78,
-  0x2a, 0x3f, 0x58, 0xef, 0x4b, 0x7e, 0x3d, 0x39, 0x23, 0x41, 0x8d, 0xc3,
-  0x0a, 0x4e, 0x5e, 0xbc, 0x3b, 0xfb, 0x26, 0x49, 0xf6, 0x82, 0x3a, 0x1d,
-  0x8a, 0x3a, 0x1b, 0x65, 0x0d, 0xd2, 0x12, 0x37, 0xa4, 0xc7, 0x9b, 0x2a,
-  0xd4, 0x17, 0x7f, 0x5f, 0x15, 0xd3, 0xa8, 0x75, 0x42, 0xb4, 0x37, 0xe7,
-  0xa6, 0xe6, 0x5b, 0x5b, 0xc2, 0xaf, 0x5b, 0xa1, 0xa3, 0x5a, 0xdc, 0x90,
-  0xb7, 0x66, 0x34, 0x0a, 0x9d, 0xa3, 0x48, 0xd8, 0xb3, 0x4e, 0x77, 0x6b,
-  0x03, 0x8f, 0xe6, 0xf3, 0x74, 0x66, 0x2d, 0x10, 0x41, 0xea, 0x2a, 0xaf,
-  0xd4, 0xb9, 0xd3, 0x74, 0x4b, 0x93, 0xbf, 0xfd, 0xea, 0xb0, 0xd3, 0xdc,
-  0x93, 0xa7, 0x8f, 0x77, 0x7e, 0x4f, 0xf4, 0x23, 0x56, 0xe7, 0x90, 0xaa,
-  0x9f, 0x3c, 0x37, 0x3f, 0x3e, 0x5f, 0xe7, 0x1c, 0xd5, 0xf5, 0xe2, 0x4b,
-  0xdf, 0x79, 0xe1, 0xe0, 0xb1, 0x13, 0x71, 0x88, 0x91, 0x03, 0xbc, 0xe0,
-  0xd5, 0xa0, 0xf8, 0x55, 0x59, 0x81, 0x6b, 0xd1, 0xfd, 0x32, 0x3a, 0xe1,
-  0x44, 0x75, 0x54, 0xb7, 0x1a, 0x69, 0xc4, 0xee, 0xa8, 0x1c, 0xda, 0x61,
-  0xd1, 0x52, 0xf5, 0x57, 0xec, 0xe6, 0xb8, 0x3a, 0xd5, 0x48, 0xbd, 0xf1,
-  0xd4, 0xce, 0xb3, 0x07, 0xd1, 0x90, 0x4a, 0xda, 0xd3, 0x45, 0xca, 0x4f,
-  0x96, 0xcb, 0x18, 0x1f, 0xb3, 0x76, 0x9d, 0x36, 0xc0, 0xcf, 0x6a, 0x69,
-  0xce, 0x69, 0x93, 0xcf, 0x3d, 0xbe, 0xe0, 0xac, 0xf0, 0xf1, 0x9d, 0x69,
-  0x05, 0x28, 0x11, 0x88, 0xbf, 0x37, 0x38, 0x75, 0xd4, 0x51, 0xe2, 0xbf,
-  0x06, 0xc2, 0x59, 0xeb, 0x7f, 0xcc, 0xbe, 0x46, 0xe0, 0xfc, 0x02, 0xd5,
-  0x32, 0x1a, 0x21, 0xce, 0xc9, 0x2c, 0x17, 0x05, 0x04, 0x92, 0xf3, 0x85,
-  0x71, 0x4c, 0x1e, 0x1c, 0x36, 0x61, 0xa3, 0xc7, 0xbb, 0x54, 0xe2, 0xc6,
-  0x4c, 0x83, 0x0d, 0x96, 0x08, 0x83, 0x7f, 0x60, 0xd8, 0x53, 0xb0, 0xaf,
-  0xc4, 0x64, 0xfe, 0x4d, 0x12, 0xda, 0xe8, 0x63, 0x4e, 0x70, 0x1d, 0x31,
-  0xba, 0x5d, 0x7f, 0xd5, 0x8a, 0xa7, 0xed, 0xaa, 0x15, 0x3e, 0x6d, 0x44,
-  0x71, 0x9c, 0xbe, 0xaf, 0x90, 0x46, 0xad, 0x26, 0xd1, 0x52, 0x1e, 0xf2,
-  0x31, 0x1e, 0xea, 0x66, 0x86, 0x40, 0x2c, 0x8b, 0x03, 0x53, 0xa9, 0x72,
-  0xfb, 0x1f, 0xff, 0x19, 0x5a, 0x31, 0x7e, 0xfc, 0x99, 0x62, 0x26, 0xa9,
-  0xfa, 0xb4, 0x5d, 0x38, 0xbd, 0x19, 0xeb, 0xd6, 0xe5, 0xfb, 0x8f, 0x55,
-  0x29, 0x91, 0x36, 0xe2, 0x3e, 0xeb, 0xab, 0xc9, 0x44, 0x9a, 0xee, 0xc6,
-  0x9f, 0x36, 0x6c, 0x49, 0x47, 0xb6, 0xdb, 0x4b, 0xc8, 0xa6, 0x88, 0x83,
-  0x32, 0x6e, 0xdd, 0x93, 0x0a, 0x0c, 0x3f, 0xb0, 0x0d, 0x5b, 0x91, 0x57,
-  0xb7, 0x45, 0x8a, 0x1c, 0x7a, 0xa9, 0x1c, 0x82, 0xa9, 0xa9, 0x50, 0x73,
-  0xae, 0xfc, 0x19, 0x46, 0x19, 0x88, 0x1a, 0x14, 0x1a, 0x98, 0x91, 0xca,
-  0x33, 0xe6, 0xcc, 0xfb, 0xbc, 0xe8, 0xf1, 0xc8, 0x0c, 0xa4, 0x4a, 0xe6,
-  0x7f, 0x18, 0xe6, 0x32, 0x6c, 0x6e, 0xca, 0xff, 0xf4, 0x5d, 0x2f, 0x03,
-  0xb3, 0x53, 0xc9, 0x00, 0x53, 0x78, 0xff, 0xa7, 0x5d, 0xe4, 0x9f, 0x0d,
-  0x3e, 0x09, 0x79, 0xe9, 0x8a, 0xd2, 0xdd, 0x98, 0x63, 0x59, 0xa5, 0x61,
-  0x1d, 0xb6, 0xb4, 0xed, 0x12, 0xa9, 0xf2, 0x43, 0xa8, 0x51, 0xff, 0x39,
-  0xc6, 0xcf, 0x1f, 0x77, 0x47, 0x8f, 0x7f, 0x76, 0xdd, 0xfe, 0x69, 0xf7,
-  0xfd, 0x9f, 0xf6, 0x06, 0xd1, 0xd4, 0x42, 0x07, 0x5c, 0xe1, 0xc5, 0x2a,
-  0xd6, 0x14, 0xb8, 0x2a, 0x69, 0x16, 0x12, 0x40, 0xe1, 0xe2, 0x67, 0x89,
-  0x77, 0x84, 0x3b, 0x09, 0x8b, 0x7c, 0x47, 0x73, 0xd3, 0x32, 0xd6, 0x7a,
-  0xf9, 0xdd, 0x94, 0xfc, 0xb2, 0x70, 0x15, 0xce, 0x72, 0x5d, 0x53, 0x68,
-  0xd1, 0xa9, 0x29, 0x54, 0x52, 0xa5, 0x71, 0x18, 0x31, 0xe1, 0x7a, 0x08,
-  0xd8, 0xb6, 0x11, 0xd9, 0xd2, 0xa4, 0xe5, 0x16, 0x2b, 0x93, 0xf3, 0x73,
-  0xfb, 0x49, 0x91, 0x05, 0x89, 0x7f, 0x5a, 0x37, 0x4c, 0xd0, 0x1a, 0x13,
-  0x7b, 0xe3, 0x99, 0x37, 0x6d, 0x54, 0x8e, 0x64, 0x75, 0xd0, 0xe8, 0x95,
-  0x5d, 0xd1, 0x6d, 0x15, 0x28, 0xe2, 0x54, 0xf6, 0xcd, 0x7a, 0x6f, 0x84,
-  0x3b, 0x96, 0xe0, 0x35, 0xd6, 0xab, 0x4c, 0x9f, 0xe9, 0x91, 0x80, 0x84,
-  0x44, 0x82, 0x5c, 0x5d, 0xc6, 0x42, 0x01, 0xd2, 0x73, 0xd4, 0x98, 0xf6,
-  0xf9, 0x2f, 0xad, 0x07, 0x31, 0x95, 0x73, 0x07, 0x98, 0x96, 0xd6, 0x3d,
-  0x0b, 0xe2, 0x2f, 0x85, 0xb7, 0x08, 0xb2, 0x50, 0xb4, 0x38, 0x6b, 0xdc,
-  0x55, 0x9c, 0xd3, 0xed, 0xf3, 0x57, 0x17, 0x4a, 0xc7, 0x9f, 0x4a, 0xd6,
-  0xeb, 0xd4, 0xc1, 0x01, 0x05, 0xb1, 0x11, 0xb8, 0x1d, 0x67, 0x77, 0x86,
-  0xad, 0x31, 0x32, 0xb1, 0x05, 0x3a, 0x55, 0xf3, 0x99, 0x5e, 0x6c, 0x75,
-  0xb2, 0x31, 0xda, 0x48, 0x36, 0x3d, 0x83, 0xc7, 0x2c, 0xad, 0xaf, 0xb6,
-  0xa2, 0xfc, 0xdf, 0xba, 0x34, 0x1c, 0x5f, 0x93, 0xd2, 0x35, 0x24, 0x16,
-  0x32, 0x43, 0xeb, 0x9f, 0x58, 0xc0, 0x8e, 0x3b, 0x7f, 0x22, 0x27, 0xcf,
-  0x72, 0x68, 0xfb, 0x4d, 0xb4, 0x16, 0x3a, 0xf3, 0x6b, 0x4f, 0x7c, 0x80,
-  0xa6, 0x39, 0x9f, 0x67, 0xf3, 0x51, 0xbe, 0x58, 0x64, 0xb3, 0x48, 0x78,
-  0x27, 0x05, 0x37, 0x72, 0x4d, 0x60, 0x7d, 0xd6, 0xd9, 0x17, 0xdb, 0x51,
-  0xc3, 0xe2, 0x2a, 0x53, 0xc7, 0x76, 0x34, 0x40, 0x4d, 0x3d, 0x5f, 0xc2,
-  0x74, 0x05, 0x52, 0x86, 0x51, 0x5c, 0x70, 0x8b, 0x92, 0x7d, 0xd9, 0x5c,
-  0xd9, 0x94, 0x81, 0xeb, 0xd7, 0x40, 0x40, 0x09, 0xc9, 0x34, 0x70, 0x82,
-  0xf3, 0x78, 0x52, 0x88, 0x48, 0xd3, 0x4c, 0x5b, 0xa3, 0xb8, 0xfd, 0x9b,
-  0x94, 0xb1, 0xba, 0x1c, 0xa0, 0x0f, 0x00, 0x1e, 0x9c, 0x65, 0x94, 0x45,
-  0xc8, 0xb0, 0x90, 0x34, 0x0b, 0x93, 0x7a, 0x57, 0xdc, 0x42, 0x2a, 0x23,
-  0xdf, 0x1e, 0xf1, 0x01, 0x4d, 0x19, 0xf5, 0xbd, 0x46, 0xbd, 0x97, 0xe8,
-  0xff, 0x1c, 0x7a, 0xeb, 0xab, 0x4a, 0xb6, 0x2e, 0xf7, 0x22, 0xbd, 0x6d,
-  0x5b, 0x8c, 0x3b, 0xc8, 0xbc, 0xfe, 0x83, 0xd1, 0xbc, 0x01, 0x0e, 0x3a,
-  0x4d, 0xeb, 0x0f, 0x1c, 0x9d, 0x33, 0x2b, 0xa3, 0xdb, 0xc3, 0x37, 0x63,
-  0x7b, 0x28, 0xeb, 0x70, 0xbd, 0x81, 0xb1, 0x55, 0x21, 0x45, 0xc3, 0xcf,
-  0xd3, 0x11, 0x84, 0x05, 0x38, 0x54, 0xed, 0xf2, 0x71, 0x97, 0x75, 0x8e,
-  0x85, 0x4a, 0x8b, 0x48, 0x14, 0x78, 0x1d, 0x09, 0x3a, 0xf0, 0x53, 0x29,
-  0x0d, 0xd9, 0x44, 0x04, 0xe3, 0x9e, 0xd5, 0x5b, 0x57, 0x58, 0xa7, 0xf5,
-  0x60, 0x34, 0x86, 0x8d, 0x79, 0x8b, 0xe4, 0x77, 0x11, 0x50, 0x86, 0x9b,
-  0x07, 0x93, 0x95, 0x6c, 0x51, 0x4d, 0xd1, 0x59, 0x69, 0x65, 0xab, 0x76,
-  0x06, 0xf6, 0xe6, 0x4b, 0xe0, 0x47, 0x41, 0xcd, 0x01, 0x8a, 0x86, 0x61,
-  0x72, 0x45, 0x24, 0x71, 0x78, 0x4d, 0x0d, 0x20, 0x84, 0x00, 0x25, 0xcf,
-  0x97, 0x57, 0x55, 0x5a, 0x87, 0x68, 0xcb, 0x93, 0xc9, 0x37, 0x09, 0x23,
-  0x2e, 0x9b, 0xa7, 0xf8, 0x19, 0xcb, 0x85, 0x3d, 0x50, 0xda, 0xdf, 0x53,
-  0x99, 0x40, 0x24, 0xea, 0x28, 0xad, 0x47, 0x01, 0x79, 0x9c, 0x75, 0x21,
-  0x1a, 0xa4, 0x54, 0x68, 0x8d, 0x98, 0x9c, 0x02, 0x30, 0x5d, 0x86, 0x3a,
-  0xb6, 0xc7, 0xe3, 0x6d, 0x08, 0x06, 0xdb, 0xe6, 0x1f, 0x8d, 0x02, 0x14,
-  0x21, 0xbf, 0x5b, 0x35, 0x19, 0x21, 0x45, 0xe8, 0x8c, 0x10, 0x95, 0xe0,
-  0x8e, 0x9f, 0xdf, 0xf9, 0x25, 0x29, 0xff, 0xb1, 0x32, 0xbc, 0x94, 0xf2,
-  0x2e, 0xb3, 0x8a, 0xa0, 0x3f, 0xb2, 0x45, 0x4b, 0xcf, 0x0a, 0x94, 0x12,
-  0x76, 0xcb, 0xd7, 0x02, 0x2c, 0xd4, 0x29, 0xe3, 0x0d, 0xab, 0x21, 0x79,
-  0x00, 0x30, 0x89, 0xbc, 0x51, 0x8b, 0x37, 0xc1, 0x70, 0xa4, 0x6b, 0x4d,
-  0x83, 0x8f, 0xf6, 0x3a, 0xfb, 0x97, 0x9b, 0x1d, 0x9f, 0x2d, 0x57, 0xe7,
-  0x84, 0x03, 0x7d, 0x65, 0x06, 0x19, 0x66, 0xba, 0xb1, 0x43, 0xa7, 0x1d,
-  0xbb, 0xc5, 0x32, 0x23, 0x4b, 0x11, 0x56, 0x4a, 0x57, 0x63, 0x0d, 0x03,
-  0x61, 0x73, 0x14, 0xe0, 0x66, 0x20, 0xc1, 0x72, 0x27, 0x5b, 0xec, 0x66,
-  0xa1, 0xa4, 0x4b, 0xd6, 0xcb, 0x97, 0x19, 0x0b, 0x95, 0xb9, 0xb2, 0x32,
-  0x58, 0x7f, 0x10, 0x48, 0x4c, 0x76, 0x20, 0x6a, 0x8d, 0x54, 0xba, 0x10,
-  0xf9, 0x89, 0xcd, 0xdb, 0x36, 0x9a, 0xc7, 0xd5, 0x1f, 0xc6, 0x9c, 0x01,
-  0xa5, 0x6d, 0xd6, 0xfd, 0xe5, 0xd1, 0x5b, 0x51, 0x71, 0x01, 0x5c, 0x4b,
-  0xa0, 0x21, 0x2c, 0x52, 0x05, 0xd8, 0xed, 0x64, 0x13, 0x7b, 0xf2, 0x88,
-  0x4b, 0xb8, 0x83, 0xec, 0xae, 0xd2, 0xbd, 0xc7, 0x4f, 0x64, 0xd8, 0x0a,
-  0xac, 0x48, 0x22, 0xf2, 0x06, 0x7f, 0xb5, 0xbd, 0xcd, 0x86, 0x62, 0x58,
-  0x39, 0x83, 0xdb, 0x97, 0x7c, 0x15, 0x78, 0xf6, 0xaf, 0x1b, 0xd1, 0x28,
-  0x7b, 0xb5, 0x81, 0xb0, 0x75, 0x18, 0xae, 0x6b, 0xca, 0x04, 0xf0, 0x6b,
-  0xf7, 0x0c, 0xbb, 0xd5, 0x1f, 0x29, 0xb7, 0x2b, 0x08, 0x8b, 0xf7, 0xcb,
-  0xda, 0x24, 0x82, 0x44, 0x44, 0x12, 0x36, 0xf8, 0x83, 0xc2, 0x0c, 0x00,
-  0xe4, 0xd9, 0x5f, 0x1f, 0x18, 0x58, 0x1b, 0x72, 0x69, 0xcc, 0x62, 0x55,
-  0x6c, 0x89, 0xe8, 0xfc, 0x86, 0x05, 0x1d, 0x26, 0x67, 0xb7, 0x27, 0x11,
-  0x9e, 0xc6, 0x6c, 0xb0, 0x1f, 0x80, 0x46, 0x6a, 0x7a, 0x08, 0xa2, 0x1c,
-  0x95, 0x2e, 0x2c, 0x26, 0x33, 0x31, 0x24, 0x2f, 0xb7, 0xc0, 0x9d, 0x16,
-  0xce, 0xb6, 0x6e, 0x83, 0x95, 0x05, 0x9a, 0x01, 0x95, 0x00, 0xd0, 0xb4,
-  0x7c, 0x9b, 0x75, 0xcd, 0xce, 0xdc, 0x3b, 0x8a, 0x1a, 0x09, 0xce, 0x81,
-  0x21, 0x85, 0x6d, 0xd0, 0x81, 0x98, 0xad, 0x02, 0x21, 0xf6, 0xe9, 0x78,
-  0xff, 0xd9, 0x78, 0xe7, 0x40, 0xc1, 0xbb, 0x87, 0xc9, 0xd7, 0xc5, 0x0a,
-  0x3b, 0x82, 0x49, 0x7f, 0x3d, 0xf9, 0x36, 0x6f, 0xc2, 0x17, 0x1e, 0xed,
-  0xe3, 0x85, 0x37, 0x13, 0x7e, 0xe8, 0xa6, 0x9c, 0x5f, 0x98, 0x17, 0x23,
-  0x8f, 0x3d, 0xc5, 0x63, 0x86, 0xdc, 0x66, 0x4d, 0x00, 0x33, 0x20, 0xf4,
-  0xd5, 0x3f, 0xa8, 0x47, 0x8f, 0x22, 0x83, 0x1a, 0x7e, 0x6c, 0xa7, 0x5d,
-  0xe7, 0x3a, 0x5d, 0xfb, 0x20, 0x34, 0xd4, 0xc6, 0x23, 0x8a, 0xa2, 0x9c,
-  0x51, 0x8b, 0x51, 0xff, 0x7b, 0x32, 0x65, 0xc6, 0xa7, 0x79, 0x48, 0xe1,
-  0xcc, 0x8a, 0xa0, 0x36, 0x1b, 0x42, 0x1d, 0x79, 0xba, 0xb7, 0xbf, 0xbb,
-  0xfd, 0x64, 0xfc, 0x68, 0xbc, 0x67, 0xe3, 0xcc, 0x39, 0x19, 0xbf, 0xa1,
-  0x88, 0xbe, 0x88, 0x2b, 0x95, 0x82, 0x2b, 0xf3, 0x42, 0x80, 0x76, 0xec,
-  0x27, 0x64, 0xea, 0x71, 0xc1, 0xa5, 0x80, 0xde, 0xd9, 0xf5, 0xd3, 0x12,
-  0x63, 0x35, 0xd2, 0x51, 0xfe, 0x15, 0x83, 0xb0, 0xd6, 0x6f, 0x2c, 0xc0,
-  0x79, 0xfe, 0x8f, 0x55, 0xde, 0x18, 0xd1, 0x00, 0x8c, 0x06, 0x06, 0x7d,
-  0xad, 0xd2, 0x41, 0xe8, 0x84, 0x34, 0x07, 0x05, 0x4a, 0x0e, 0xb9, 0x96,
-  0xa6, 0xf1, 0x78, 0xa8, 0x11, 0x94, 0x3b, 0x98, 0x13, 0x3f, 0xe3, 0xc2,
-  0x58, 0xb5, 0x51, 0x2e, 0xa6, 0xa8, 0xe8, 0x6a, 0xb4, 0xf2, 0x6b, 0x24,
-  0xc9, 0xa7, 0x71, 0x14, 0x1b, 0xc6, 0x89, 0x63, 0xdf, 0xb1, 0xc4, 0x37,
-  0xba, 0x22, 0x1a, 0xf2, 0x01, 0xe3, 0x0c, 0xb1, 0x2d, 0x1c, 0x6e, 0x4d,
-  0x7f, 0xc2, 0x6b, 0x4c, 0x6c, 0x0c, 0xd7, 0x0b, 0x29, 0x16, 0x29, 0x7e,
-  0xec, 0x20, 0x65, 0xd0, 0x50, 0x12, 0xc4, 0x5a, 0xb0, 0x6b, 0xeb, 0x43,
-  0xef, 0x04, 0x7d, 0x68, 0xe8, 0x7e, 0xdf, 0xd7, 0xfa, 0x31, 0xc7, 0x43,
-  0x3f, 0xd1, 0xd3, 0x09, 0x47, 0x01, 0x4d, 0x77, 0xeb, 0xbb, 0x4b, 0x9b,
-  0xbf, 0x9a, 0x94, 0xf6, 0x7f, 0x7b, 0x52, 0xda, 0xfb, 0xbf, 0xa4, 0xf4,
-  0x07, 0x91, 0xd2, 0xee, 0x3f, 0x47, 0x4a, 0xcf, 0x62, 0xa4, 0xb4, 0xff,
-  0x10, 0x52, 0x32, 0xbb, 0x36, 0xc7, 0x6d, 0xd8, 0x22, 0xa5, 0x47, 0x1f,
-  0x45, 0x4a, 0x4c, 0x4b, 0x44, 0x4c, 0xbd, 0xd4, 0x84, 0x59, 0xf9, 0xd9,
-  0xd2, 0x66, 0x32, 0x71, 0xf7, 0xc4, 0xc3, 0xf7, 0x2c, 0x6d, 0x35, 0x1a,
-  0x24, 0xe2, 0x32, 0xc1, 0xfe, 0x31, 0x87, 0x7f, 0xf7, 0xa3, 0x77, 0x6c,
-  0xaf, 0xab, 0x7c, 0x54, 0x19, 0xbb, 0xe5, 0x7e, 0x54, 0xef, 0xe8, 0xc1,
-  0xf6, 0xf6, 0xcf, 0x64, 0x80, 0x3b, 0xc0, 0x2d, 0xf6, 0x73, 0x57, 0x48,
-  0x17, 0x84, 0x58, 0x27, 0xb1, 0x4e, 0x4e, 0x0e, 0xbf, 0x9d, 0x88, 0x6f,
-  0x4f, 0x44, 0x0a, 0x15, 0x39, 0x58, 0xd3, 0x26, 0xaf, 0x3e, 0x23, 0xd6,
-  0x45, 0x6b, 0x61, 0x4e, 0xcc, 0x38, 0x6e, 0x87, 0xd6, 0xc9, 0x36, 0x26,
-  0xfc, 0x19, 0xf1, 0x37, 0x32, 0x0e, 0x0d, 0x57, 0xb3, 0x25, 0x9b, 0x93,
-  0x34, 0xdd, 0x03, 0x65, 0xe8, 0x8f, 0xc5, 0x56, 0xf9, 0xb5, 0xaf, 0x6c,
-  0x36, 0x57, 0x15, 0x65, 0x3a, 0xd2, 0x63, 0x22, 0x3d, 0x7b, 0x78, 0x7a,
-  0x3d, 0xa3, 0x93, 0x51, 0x7d, 0x43, 0x48, 0xe0, 0xcb, 0xca, 0x86, 0x9b,
-  0x44, 0xf4, 0x58, 0xfb, 0xad, 0x9a, 0x66, 0x5d, 0x1e, 0x8e, 0x5b, 0x30,
-  0x01, 0xf4, 0xf3, 0xd6, 0x1b, 0xef, 0x05, 0x81, 0xe5, 0xf9, 0x2d, 0xe7,
-  0x5d, 0x58, 0x18, 0xa8, 0x39, 0xd5, 0xa7, 0x6f, 0xb4, 0x44, 0xd3, 0xed,
-  0x9d, 0x2b, 0x28, 0xce, 0x51, 0xbd, 0x19, 0x57, 0x41, 0xaa, 0x1f, 0x99,
-  0x26, 0xbb, 0x36, 0x3d, 0xfe, 0x22, 0xc5, 0x37, 0xf2, 0xc7, 0x63, 0x74,
-  0x4c, 0xf1, 0x2b, 0xfc, 0xe7, 0x15, 0xfd, 0xcd, 0x71, 0x5b, 0x8c, 0x4e,
-  0xe7, 0xed, 0xf3, 0x34, 0xba, 0xd0, 0xca, 0x33, 0xd9, 0x74, 0xc5, 0xb8,
-  0x16, 0x6f, 0xca, 0x00, 0xc9, 0x8d, 0xe6, 0x0c, 0x23, 0x10, 0x25, 0xf5,
-  0xc7, 0x0c, 0x40, 0x1e, 0xc7, 0xa5, 0x96, 0x1f, 0xf5, 0xf8, 0x7b, 0xb3,
-  0xc4, 0x47, 0xd8, 0x55, 0x8c, 0x08, 0xbf, 0x72, 0xa2, 0x17, 0x84, 0xc2,
-  0x5b, 0x30, 0x64, 0xa4, 0xe5, 0x30, 0xed, 0x05, 0x55, 0x81, 0x64, 0xe4,
-  0xbb, 0x3b, 0x9f, 0x86, 0x56, 0x87, 0x77, 0xb5, 0x60, 0x8d, 0x3a, 0x90,
-  0x59, 0x0a, 0x38, 0xa3, 0x8c, 0xab, 0x73, 0x97, 0xe2, 0x18, 0xeb, 0x14,
-  0x0e, 0x88, 0x98, 0x76, 0x3b, 0xcb, 0x58, 0x1f, 0x3a, 0x67, 0xc5, 0x36,
-  0x4c, 0xb5, 0x01, 0x2a, 0x03, 0xcc, 0x01, 0xb9, 0xf8, 0xe5, 0x8c, 0x54,
-  0xc8, 0xf1, 0x52, 0x81, 0xe3, 0x06, 0x76, 0x0a, 0xf5, 0xc9, 0x7f, 0xe1,
-  0xd0, 0x0d, 0xff, 0xfc, 0x68, 0x07, 0x7b, 0xaa, 0x8d, 0xa0, 0x32, 0xd8,
-  0xbc, 0x14, 0xb0, 0x92, 0x3f, 0xef, 0xa7, 0xe3, 0x3f, 0x10, 0x33, 0xee,
-  0x71, 0x5b, 0x4f, 0xfe, 0xd3, 0xd0, 0x8f, 0xbc, 0x3c, 0x4f, 0xab, 0x88,
-  0x59, 0x46, 0x2e, 0x69, 0xc5, 0x97, 0x51, 0x20, 0x0e, 0x1b, 0x92, 0x99,
-  0xb2, 0x8a, 0x4a, 0x19, 0x62, 0xf6, 0x43, 0xd3, 0x54, 0x12, 0x82, 0x82,
-  0x58, 0xd7, 0x10, 0xc7, 0xe1, 0xb0, 0x2d, 0x60, 0x18, 0x80, 0xf8, 0xa5,
-  0xf3, 0x21, 0x07, 0x7a, 0xf6, 0x64, 0xa0, 0xdb, 0x5e, 0xa8, 0x9b, 0x59,
-  0x95, 0xde, 0x78, 0x5a, 0x32, 0x83, 0x74, 0x5d, 0x90, 0xdf, 0xc7, 0x86,
-  0xb5, 0x99, 0xef, 0x11, 0xb2, 0x52, 0x47, 0x62, 0x7b, 0xea, 0x69, 0x85,
-  0x1c, 0x7d, 0x29, 0x15, 0x43, 0x2d, 0x2d, 0x01, 0x8c, 0x6a, 0x44, 0x8c,
-  0xcb, 0x4c, 0x11, 0x49, 0xec, 0xac, 0x15, 0x06, 0x85, 0x20, 0x50, 0xc6,
-  0xb1, 0x54, 0x1d, 0x67, 0xb1, 0xb2, 0x91, 0xbb, 0x10, 0x25, 0x18, 0x33,
-  0x05, 0xaf, 0x0f, 0x25, 0xb8, 0xd2, 0xe2, 0xca, 0x2e, 0x51, 0xc2, 0xb3,
-  0xbe, 0xca, 0x97, 0xdd, 0x2b, 0x7a, 0xf4, 0x59, 0xf9, 0xd9, 0x68, 0x4b,
-  0x48, 0xbc, 0xbc, 0xce, 0x6a, 0xae, 0xf7, 0x4d, 0xf9, 0x8d, 0xe6, 0xc4,
-  0x5d, 0x91, 0x11, 0x45, 0x2e, 0x2f, 0x98, 0x11, 0x28, 0xa5, 0x80, 0x62,
-  0x2e, 0xc8, 0xc1, 0xd4, 0x03, 0xa1, 0xc2, 0x5e, 0x61, 0xe6, 0x77, 0x30,
-  0xb8, 0x98, 0xb5, 0xba, 0xe0, 0xa8, 0x67, 0x98, 0x02, 0x12, 0x84, 0xf9,
-  0x08, 0x7e, 0x3c, 0x7b, 0x54, 0xca, 0x65, 0xfb, 0x6e, 0x32, 0x7c, 0x64,
-  0xa4, 0xbc, 0xe1, 0xb9, 0xb2, 0x95, 0xcf, 0xef, 0xcd, 0x88, 0xb3, 0x0c,
-  0xe8, 0x42, 0xcc, 0x14, 0x38, 0x7c, 0x94, 0x20, 0xc9, 0xc8, 0xf3, 0xd3,
-  0xab, 0x6c, 0x21, 0x35, 0xb8, 0xba, 0xbb, 0x2e, 0x28, 0x37, 0xbd, 0x85,
-  0x50, 0xdb, 0x63, 0xe2, 0x90, 0xf1, 0x8b, 0x66, 0x39, 0x5e, 0x94, 0xbf,
-  0x98, 0x35, 0x4e, 0x51, 0xd4, 0x33, 0x38, 0x12, 0x70, 0x0f, 0x16, 0xbc,
-  0x29, 0xc4, 0x6f, 0x57, 0x85, 0x55, 0x11, 0x1d, 0x0b, 0x57, 0x30, 0x3a,
-  0xc6, 0x3f, 0x3b, 0x34, 0x23, 0x3e, 0x7a, 0xff, 0xee, 0xcd, 0xe4, 0xdd,
-  0xe9, 0x28, 0x00, 0xac, 0x7c, 0x7b, 0x76, 0xf4, 0x12, 0xe1, 0x74, 0x67,
-  0x27, 0x87, 0x27, 0xc7, 0xc9, 0xe6, 0xee, 0xd6, 0xbd, 0x15, 0xab, 0x7d,
-  0x00, 0xd5, 0xc6, 0xb3, 0xb7, 0x32, 0xcf, 0xb2, 0x43, 0xd8, 0xc4, 0x7c,
-  0xc2, 0xd6, 0xbe, 0x17, 0xda, 0x6a, 0x61, 0xce, 0x93, 0xa5, 0x41, 0x82,
-  0x17, 0x3f, 0x40, 0x64, 0xba, 0x5c, 0xf1, 0x61, 0x94, 0x60, 0x28, 0x17,
-  0x29, 0x19, 0x5c, 0x45, 0x59, 0xc6, 0x91, 0x18, 0x7e, 0xca, 0xec, 0x5a,
-  0x83, 0xdb, 0xe3, 0xae, 0xcc, 0x82, 0x3d, 0x20, 0x01, 0xcc, 0x51, 0x45,
-  0x1d, 0x27, 0x0b, 0x4b, 0x17, 0x8c, 0x4a, 0x43, 0xf8, 0xfb, 0x0e, 0x73,
-  0x28, 0x6f, 0xac, 0xf7, 0xb0, 0x2c, 0xac, 0x48, 0x37, 0x4e, 0x4e, 0xc3,
-  0x42, 0x75, 0xf2, 0xc6, 0x2c, 0x2b, 0xa4, 0x52, 0xb2, 0x8c, 0x83, 0x7c,
-  0xcd, 0x54, 0x86, 0x89, 0xe3, 0x75, 0xcc, 0x03, 0xf8, 0xd6, 0x5b, 0x2b,
-  0xc2, 0x61, 0xc8, 0x42, 0x20, 0x59, 0x7a, 0x9b, 0x31, 0x5b, 0x6e, 0xbc,
-  0x31, 0xa1, 0x3d, 0x08, 0x65, 0x84, 0x5c, 0x1a, 0xe1, 0xb0, 0x47, 0xea,
-  0x9a, 0x64, 0xbc, 0x19, 0x3a, 0x93, 0x24, 0xbf, 0x28, 0xf4, 0xd1, 0xc4,
-  0x9f, 0xcb, 0x3d, 0x84, 0xcc, 0x8b, 0x08, 0x5f, 0xd1, 0x10, 0x7b, 0x3f,
-  0x64, 0x82, 0x16, 0x97, 0xec, 0x9a, 0xb4, 0xbb, 0x2f, 0xdb, 0x30, 0x8d,
-  0x3e, 0x6e, 0x3b, 0xe7, 0x56, 0xd3, 0x40, 0x86, 0x16, 0x92, 0xe9, 0xab,
-  0xce, 0xb0, 0xba, 0xec, 0xe7, 0xe9, 0xf8, 0xc9, 0xe3, 0xf1, 0x1e, 0x82,
-  0x43, 0x4f, 0xe6, 0xf0, 0x60, 0x8a, 0x64, 0x41, 0x16, 0x64, 0xea, 0x20,
-  0x15, 0xaf, 0x3a, 0xbc, 0x5a, 0x6e, 0xad, 0xa4, 0xc5, 0x30, 0x97, 0x19,
-  0x8e, 0x26, 0xc1, 0x5a, 0xd0, 0xab, 0xcc, 0x22, 0xa3, 0x70, 0x3d, 0xed,
-  0x36, 0xe6, 0xc9, 0x81, 0x04, 0xc6, 0x72, 0xe0, 0x67, 0x97, 0xd7, 0xbe,
-  0x3a, 0x3e, 0x62, 0x84, 0xd8, 0xc3, 0x53, 0x0e, 0x9e, 0x97, 0xa6, 0x38,
-  0x32, 0xd7, 0x96, 0xa4, 0xdf, 0x19, 0xef, 0x00, 0x95, 0xf2, 0x4b, 0x11,
-  0xca, 0xcd, 0x6f, 0x46, 0xb4, 0x0d, 0x25, 0x01, 0x16, 0xe7, 0xb5, 0x8d,
-  0x71, 0xe2, 0x3b, 0x13, 0x31, 0x3d, 0x33, 0xbc, 0xbf, 0xe0, 0x5f, 0x4d,
-  0x2e, 0xea, 0x4e, 0xb9, 0x07, 0x8d, 0x69, 0x28, 0xf9, 0xa1, 0xec, 0x93,
-  0x44, 0x36, 0x42, 0x74, 0xc6, 0xe3, 0xf5, 0x48, 0x70, 0x7b, 0xc1, 0x41,
-  0xbb, 0xf7, 0x88, 0xdd, 0x77, 0xc2, 0xe8, 0x88, 0xb1, 0xb1, 0xfb, 0xa2,
-  0x75, 0x6b, 0x75, 0xef, 0xb4, 0x53, 0xfb, 0x16, 0xad, 0x72, 0x86, 0xc4,
-  0x5a, 0xb2, 0xfd, 0xce, 0xb3, 0x0b, 0x92, 0x0d, 0x29, 0xdb, 0x7d, 0x48,
-  0x5f, 0x92, 0x3b, 0xd9, 0x06, 0xc5, 0xf2, 0x4e, 0x74, 0xd7, 0x19, 0x6d,
-  0xa4, 0x53, 0x5f, 0xd6, 0xb6, 0x08, 0x82, 0x1b, 0x66, 0x51, 0x51, 0x7e,
-  0x4d, 0x40, 0x17, 0xe6, 0x77, 0xe4, 0x6d, 0xcc, 0x6f, 0x35, 0xd7, 0xe8,
-  0x97, 0xac, 0x2a, 0xc3, 0xe0, 0x06, 0x12, 0x1e, 0x14, 0xce, 0x0d, 0xaa,
-  0xa4, 0x56, 0x1a, 0x74, 0x1f, 0xa2, 0xd7, 0xe0, 0xcc, 0xfd, 0x85, 0x6a,
-  0x7f, 0x33, 0x36, 0x39, 0xd7, 0xe9, 0xe3, 0xd1, 0x10, 0xac, 0xd9, 0x2c,
-  0x57, 0x77, 0xb4, 0xc7, 0x03, 0xe6, 0x48, 0xc7, 0xbf, 0xe3, 0xbc, 0xfe,
-  0x40, 0xc5, 0x24, 0xf1, 0x6f, 0x06, 0x75, 0xc6, 0xe5, 0x25, 0x58, 0x0f,
-  0x1a, 0xea, 0xec, 0x39, 0xc8, 0x39, 0x91, 0xe7, 0x42, 0x9e, 0x3e, 0x4a,
-  0x92, 0x97, 0x59, 0x71, 0xd7, 0x1e, 0x10, 0x02, 0x63, 0xcd, 0xe5, 0x0f,
-  0x0a, 0xca, 0x1b, 0x87, 0xf7, 0xe2, 0xd2, 0x04, 0xdc, 0x10, 0xc3, 0x21,
-  0xb5, 0xc7, 0x1c, 0xe3, 0x5c, 0x9f, 0xd9, 0x65, 0xd0, 0x98, 0x4c, 0x7f,
-  0x31, 0x36, 0x09, 0xd1, 0x54, 0x3d, 0xea, 0xd4, 0xe5, 0x43, 0x96, 0x81,
-  0x30, 0x17, 0x49, 0xab, 0xab, 0x57, 0xe7, 0x7f, 0x17, 0x54, 0x6c, 0x58,
-  0x16, 0x2a, 0x59, 0x05, 0x89, 0xa3, 0x36, 0xbb, 0x6a, 0x1e, 0x60, 0xd7,
-  0x14, 0x98, 0x43, 0x11, 0x6b, 0x8e, 0x1c, 0xfd, 0xb9, 0x17, 0x30, 0xe6,
-  0x28, 0x8c, 0x46, 0x14, 0xcd, 0x98, 0xce, 0x7a, 0x44, 0x06, 0x3d, 0x3f,
-  0xa3, 0x0b, 0xf0, 0x54, 0x8e, 0xcf, 0xed, 0x5c, 0xbe, 0xbc, 0x96, 0x1c,
-  0x14, 0x6e, 0x33, 0x1a, 0xf0, 0x78, 0x6f, 0x5b, 0xca, 0xa9, 0xeb, 0xe1,
-  0x5f, 0xf0, 0x4f, 0x38, 0x87, 0x76, 0x82, 0x06, 0xca, 0xee, 0x0a, 0x1b,
-  0xc1, 0xe3, 0xc4, 0x98, 0xe8, 0xf5, 0xbe, 0x0e, 0x3e, 0x73, 0xd7, 0xc0,
-  0xfa, 0xb6, 0x89, 0x8b, 0x7d, 0x44, 0x07, 0xef, 0x54, 0x02, 0x72, 0x54,
-  0x8e, 0x5f, 0xa9, 0xca, 0x06, 0x84, 0x56, 0x49, 0x23, 0xd3, 0xfa, 0xd7,
-  0xa2, 0x13, 0xd5, 0xa8, 0xb7, 0x45, 0xda, 0x7e, 0x50, 0x69, 0xe7, 0x02,
-  0x69, 0x20, 0x15, 0x7e, 0x60, 0x77, 0x29, 0xca, 0x49, 0xeb, 0x0d, 0x68,
-  0x42, 0xc2, 0xb2, 0x6c, 0xb8, 0xf2, 0x01, 0x12, 0x46, 0x20, 0xfc, 0x54,
-  0x30, 0x0e, 0xc6, 0xca, 0xd0, 0xea, 0x46, 0x38, 0x39, 0x1a, 0x2d, 0x93,
-  0xeb, 0x67, 0xb5, 0x2c, 0x0b, 0x97, 0x3b, 0xc8, 0xbe, 0x57, 0x8f, 0xc5,
-  0x45, 0xe5, 0x5f, 0x8e, 0xee, 0x25, 0xf3, 0x94, 0xad, 0x9d, 0x70, 0x5d,
-  0xe6, 0xb3, 0x75, 0x80, 0xc2, 0xd1, 0x7a, 0x3e, 0x41, 0x60, 0x9f, 0xcd,
-  0x51, 0x21, 0xc3, 0x88, 0xcb, 0x1e, 0x8e, 0x64, 0x4e, 0x5a, 0x10, 0x7e,
-  0x72, 0x61, 0x17, 0xf0, 0x3d, 0x15, 0xec, 0xce, 0x12, 0x75, 0x55, 0x59,
-  0x34, 0x86, 0x49, 0x51, 0xd1, 0x05, 0xf4, 0xa4, 0x69, 0x16, 0xc6, 0xab,
-  0xbb, 0x6a, 0x56, 0xeb, 0xf2, 0x06, 0x7c, 0x91, 0xc2, 0xa6, 0x0f, 0x38,
-  0x69, 0x79, 0x7c, 0xcf, 0x55, 0x73, 0x7b, 0xa7, 0x01, 0xcb, 0x6b, 0xaf,
-  0x99, 0x25, 0xc1, 0x86, 0x98, 0x0d, 0xc9, 0x1b, 0xda, 0xe4, 0x4e, 0xbe,
-  0x84, 0xe6, 0x11, 0x70, 0x89, 0x06, 0x73, 0x86, 0x57, 0x61, 0x11, 0x56,
-  0xf5, 0xea, 0x31, 0x0c, 0x88, 0x73, 0x48, 0xb3, 0x1c, 0x25, 0xf6, 0x1e,
-  0x2e, 0x13, 0xe3, 0x55, 0xce, 0xc1, 0xde, 0xc1, 0xd1, 0x17, 0x37, 0x47,
-  0x6e, 0xdb, 0x4a, 0x03, 0x86, 0xc8, 0x8a, 0xd9, 0xc8, 0xf0, 0x92, 0xe5,
-  0x9a, 0xc5, 0xba, 0x1d, 0xea, 0xa4, 0xed, 0x2f, 0x1c, 0xe5, 0xdd, 0x4a,
-  0xbc, 0xe0, 0x68, 0xee, 0x75, 0x06, 0xd8, 0xfd, 0xd8, 0x32, 0xc6, 0xc2,
-  0xc5, 0x7d, 0x71, 0x58, 0xf5, 0xa4, 0xde, 0xc2, 0x31, 0xbc, 0x7c, 0xb4,
-  0x7a, 0xba, 0x5a, 0x7d, 0x51, 0xd8, 0xbc, 0x70, 0xb2, 0x66, 0xef, 0x38,
-  0x73, 0x9b, 0x5a, 0x24, 0x40, 0x8e, 0x42, 0x92, 0x76, 0xbc, 0x9e, 0x58,
-  0x1d, 0x0c, 0x16, 0x71, 0x41, 0xd9, 0x9e, 0x5c, 0x83, 0x44, 0x9e, 0xb4,
-  0x54, 0xac, 0x1c, 0x33, 0xbe, 0xd5, 0x11, 0x7b, 0x12, 0xf1, 0x5a, 0xea,
-  0x08, 0x03, 0xcb, 0xd7, 0x82, 0x24, 0xc5, 0x76, 0x22, 0x06, 0x0e, 0x36,
-  0xeb, 0x24, 0x3e, 0xe8, 0xe7, 0xd3, 0x14, 0xce, 0xdd, 0x78, 0xe0, 0xea,
-  0x44, 0x8e, 0xdf, 0x48, 0x9f, 0x02, 0xa3, 0xd7, 0x10, 0x77, 0xcf, 0xba,
-  0xc8, 0x65, 0xec, 0x6e, 0x9b, 0x7b, 0x4e, 0x17, 0xf5, 0x06, 0x7f, 0xfe,
-  0xd0, 0xb6, 0x48, 0x76, 0x53, 0xfe, 0x50, 0x6d, 0xc1, 0xbe, 0x2d, 0xf5,
-  0xc1, 0xd6, 0x99, 0x56, 0xf3, 0x12, 0x34, 0xde, 0x3f, 0x17, 0x7a, 0xe8,
-  0xd7, 0xcc, 0xa5, 0x93, 0x4f, 0xe1, 0xe6, 0xe0, 0x0d, 0x5a, 0x53, 0x1b,
-  0xb8, 0x9b, 0x35, 0xc4, 0xdf, 0x33, 0x05, 0xd3, 0xe2, 0x9a, 0xfa, 0xe5,
-  0xde, 0x34, 0xec, 0x83, 0x1f, 0x3b, 0x93, 0xfb, 0x97, 0x91, 0x28, 0x02,
-  0x3f, 0x7f, 0x3c, 0x20, 0xf3, 0xe1, 0xec, 0xe7, 0xde, 0x71, 0x1c, 0x0d,
-  0x65, 0x2c, 0xbf, 0xc3, 0x30, 0xf2, 0xe5, 0x15, 0x64, 0xd2, 0xe7, 0xb1,
-  0x64, 0x50, 0x6f, 0x21, 0xe4, 0xb1, 0xdf, 0xbe, 0xff, 0x6a, 0xee, 0x70,
-  0xf3, 0xd6, 0xf4, 0x2f, 0x8f, 0xfd, 0xe6, 0xfd, 0xf3, 0x91, 0xbd, 0xd7,
-  0x5c, 0x44, 0xcc, 0xe9, 0xa5, 0x24, 0xce, 0x44, 0xf8, 0xe0, 0xaf, 0x66,
-  0x84, 0x92, 0x8c, 0x13, 0x72, 0x42, 0xe9, 0x0c, 0xef, 0x06, 0x35, 0xc3,
-  0x84, 0x15, 0x12, 0x27, 0xfc, 0xe7, 0xb9, 0x16, 0xf1, 0xe2, 0x70, 0x65,
-  0xa4, 0x94, 0xd6, 0x73, 0xfe, 0x77, 0xfb, 0x8b, 0xd8, 0x06, 0x69, 0x82,
-  0x1f, 0xee, 0x3c, 0xad, 0xbd, 0x45, 0xc5, 0x9c, 0x18, 0x85, 0x48, 0xc4,
-  0x64, 0x5b, 0xa6, 0xc8, 0x2f, 0xf1, 0x40, 0xb3, 0x8c, 0x55, 0xfc, 0x92,
-  0xe5, 0x41, 0xdc, 0x36, 0xb4, 0x42, 0x0b, 0x79, 0x6a, 0x43, 0x89, 0xa0,
-  0x65, 0x64, 0x5e, 0x8f, 0x75, 0x5f, 0xe5, 0xc6, 0x6e, 0xe1, 0x64, 0x87,
-  0x1f, 0xfc, 0xcd, 0x50, 0x0a, 0x6e, 0x99, 0xd6, 0x40, 0x52, 0x12, 0xb7,
-  0x2c, 0xbc, 0x45, 0xf6, 0x32, 0xcc, 0xc7, 0xe5, 0x68, 0x55, 0xc6, 0x7f,
-  0x62, 0xc0, 0x02, 0x33, 0xc3, 0xc3, 0x93, 0x37, 0x6f, 0x8e, 0x0e, 0xbb,
-  0xce, 0x6a, 0x9b, 0xe9, 0xe6, 0xf4, 0x83, 0x68, 0x60, 0x6d, 0xab, 0x96,
-  0x27, 0xf7, 0x4f, 0xa5, 0xe0, 0x52, 0x81, 0x47, 0xe6, 0x2f, 0x25, 0xed,
-  0x93, 0xd1, 0x73, 0x65, 0xfb, 0x03, 0x34, 0xb5, 0x08, 0x31, 0xf8, 0x48,
-  0x34, 0xec, 0x59, 0x41, 0x41, 0x60, 0x89, 0xa6, 0x25, 0xc5, 0x57, 0x46,
-  0x41, 0x19, 0x11, 0xb3, 0xd9, 0xb6, 0x24, 0x12, 0x68, 0xdf, 0x7d, 0x84,
-  0xcc, 0xf8, 0xa1, 0x48, 0x46, 0x1c, 0x95, 0x17, 0x5c, 0x88, 0x62, 0x91,
-  0x56, 0x1f, 0xe0, 0xef, 0xf6, 0x32, 0x23, 0x28, 0x9f, 0x1d, 0x76, 0x2f,
-  0xd3, 0x72, 0x0c, 0xe2, 0x86, 0x4c, 0xf5, 0x9a, 0x7e, 0x45, 0x19, 0xd2,
-  0x3c, 0x18, 0x29, 0xd8, 0x7a, 0xa0, 0xa5, 0x45, 0xf1, 0x7a, 0x91, 0xdd,
-  0xa0, 0x1b, 0xc6, 0xf5, 0x02, 0x4e, 0x4d, 0x58, 0xb0, 0x85, 0x41, 0xd7,
-  0xd9, 0x15, 0x21, 0x19, 0x2b, 0xb4, 0x55, 0x0b, 0x2e, 0x88, 0x62, 0x88,
-  0x8e, 0xa0, 0xba, 0x25, 0xd7, 0x30, 0x58, 0xab, 0x6f, 0xa4, 0xf2, 0x5a,
-  0xc7, 0x0b, 0x17, 0x94, 0x88, 0x93, 0x44, 0x4c, 0xa1, 0xf1, 0x19, 0x47,
-  0x2c, 0xf6, 0xc1, 0x9c, 0xf1, 0x4a, 0xd3, 0x36, 0x40, 0xb7, 0xa9, 0x5b,
-  0x4d, 0xe8, 0xee, 0xa6, 0x3d, 0xee, 0xc2, 0x09, 0x90, 0xe5, 0x39, 0xb6,
-  0xac, 0xa0, 0xcb, 0xec, 0x71, 0x17, 0x6f, 0x99, 0xf0, 0x15, 0xc9, 0xb6,
-  0x0a, 0x48, 0xd5, 0x4b, 0xca, 0x4e, 0xc1, 0xc3, 0x74, 0x58, 0x03, 0xa1,
-  0x16, 0xdc, 0x94, 0xd2, 0x8d, 0x87, 0xa2, 0x20, 0x90, 0xef, 0xd3, 0xac,
-  0x2e, 0xf6, 0x41, 0xd6, 0x5e, 0x31, 0xd2, 0xd8, 0x71, 0x21, 0x07, 0xd8,
-  0xfc, 0xbb, 0x0c, 0xca, 0x18, 0x31, 0x64, 0x24, 0x03, 0x05, 0x7d, 0x31,
-  0x0a, 0xcb, 0xe7, 0xa5, 0x33, 0x7f, 0x4f, 0x19, 0xd9, 0x10, 0xe6, 0x82,
-  0xba, 0x99, 0xe5, 0xf7, 0x81, 0xf9, 0x52, 0xbe, 0xcc, 0x79, 0x96, 0xc4,
-  0x14, 0x1c, 0x5a, 0x31, 0x47, 0xaa, 0xdb, 0x64, 0x8f, 0xe8, 0xd2, 0x82,
-  0x7d, 0x45, 0x59, 0xc4, 0x3a, 0x50, 0x30, 0x02, 0xdd, 0xe8, 0x70, 0x3f,
-  0xa3, 0xe8, 0xc0, 0x1a, 0x96, 0xf5, 0xdd, 0x48, 0x1f, 0xb8, 0xa2, 0x1f,
-  0x3f, 0xf4, 0xdb, 0x5f, 0x4b, 0x1f, 0xb2, 0xbb, 0x07, 0x09, 0x28, 0xf6,
-  0xb9, 0xdf, 0x63, 0x04, 0xc9, 0x73, 0xf3, 0x63, 0x6d, 0xdf, 0x0f, 0xef,
-  0x36, 0xc0, 0xcf, 0x7d, 0xd8, 0x95, 0xeb, 0x50, 0xa1, 0x1d, 0x2c, 0x74,
-  0x90, 0xfe, 0x7e, 0x13, 0x26, 0x07, 0xb7, 0xae, 0xe3, 0xb5, 0x17, 0xb0,
-  0xcb, 0x8e, 0xf5, 0xef, 0xe0, 0x88, 0x97, 0x3f, 0x86, 0x50, 0x2d, 0x7e,
-  0xab, 0x87, 0xdd, 0xc7, 0xf7, 0x5e, 0xc1, 0x2d, 0x70, 0x81, 0x6e, 0x04,
-  0x96, 0x4d, 0x2e, 0x7e, 0xe0, 0xc2, 0x45, 0xd2, 0xe9, 0x93, 0x7f, 0x52,
-  0x56, 0xa1, 0x8c, 0xe6, 0x96, 0xa4, 0x42, 0xbd, 0xb4, 0x16, 0xe1, 0x21,
-  0xb7, 0x52, 0xb0, 0x24, 0xdd, 0x0c, 0xe5, 0xd6, 0x42, 0x85, 0xab, 0xb0,
-  0x2e, 0x1a, 0xde, 0x91, 0x27, 0x3d, 0xf5, 0x9b, 0x1f, 0x8b, 0xff, 0xe2,
-  0x48, 0x6e, 0x3f, 0x90, 0xdb, 0xb3, 0x41, 0xfc, 0xdf, 0x48, 0xee, 0xff,
-  0x1b, 0xc9, 0xfd, 0x3b, 0x44, 0x72, 0xff, 0x96, 0xc1, 0xc8, 0x74, 0x7a,
-  0xb0, 0x23, 0xf9, 0x54, 0x72, 0x83, 0x9f, 0xf7, 0xc2, 0xa4, 0x6b, 0x86,
-  0x66, 0x2b, 0xe8, 0xc5, 0xf3, 0x4d, 0x4b, 0x33, 0x2c, 0xd1, 0x78, 0x82,
-  0x7b, 0x98, 0x4f, 0x24, 0xb4, 0x12, 0x31, 0x4a, 0xfa, 0xce, 0xe3, 0xfd,
-  0xd8, 0x49, 0xaf, 0xeb, 0x39, 0x17, 0xad, 0x03, 0x12, 0x42, 0xa0, 0x22,
-  0x3a, 0x3e, 0xd3, 0x79, 0xee, 0xb7, 0x67, 0x39, 0xd4, 0xc1, 0xaa, 0x29,
-  0x47, 0xd3, 0x39, 0x2a, 0x44, 0x91, 0x21, 0x60, 0xfd, 0x68, 0x3a, 0x0f,
-  0xff, 0x33, 0x43, 0x7a, 0xfa, 0x34, 0x36, 0xa4, 0x66, 0x5e, 0xef, 0xee,
-  0x3b, 0xdb, 0x81, 0xfc, 0xb2, 0x42, 0x0a, 0x76, 0xcc, 0x8e, 0xc0, 0x0c,
-  0x51, 0x9c, 0x98, 0xf0, 0x9f, 0x88, 0x7d, 0x9a, 0x5e, 0x23, 0x33, 0x6d,
-  0x66, 0xcb, 0x88, 0x5a, 0xd7, 0x8a, 0xad, 0x34, 0x1e, 0x18, 0xf6, 0x09,
-  0x29, 0xc4, 0x9f, 0x07, 0x5d, 0x6b, 0x48, 0xd0, 0xd1, 0x7b, 0xa4, 0x26,
-  0xc6, 0xb0, 0x3b, 0xde, 0x67, 0xbc, 0x29, 0xf2, 0x14, 0xc1, 0x4d, 0xcc,
-  0xe3, 0x0c, 0x30, 0xff, 0xa8, 0x7f, 0xae, 0xb8, 0xe0, 0x82, 0xe9, 0xb8,
-  0xf6, 0x99, 0xbe, 0x33, 0x4e, 0xde, 0x42, 0xa2, 0x35, 0xfa, 0x83, 0x19,
-  0x91, 0x34, 0x2e, 0xdf, 0xc5, 0x9a, 0x6b, 0xc3, 0x7c, 0x1b, 0x92, 0x7e,
-  0xf7, 0xf6, 0x38, 0xf4, 0xb3, 0x93, 0x17, 0xe4, 0x60, 0x7b, 0x9b, 0x02,
-  0xbd, 0xea, 0x6c, 0x7b, 0x56, 0x4e, 0xeb, 0x6d, 0xec, 0xa0, 0x76, 0x7a,
-  0xd5, 0x2c, 0xe6, 0x9f, 0xac, 0x0f, 0xf5, 0x95, 0x44, 0x6f, 0x05, 0x35,
-  0x77, 0xc1, 0xa3, 0xac, 0xfb, 0xe5, 0x16, 0x67, 0x56, 0x6f, 0xa1, 0x00,
-  0xfe, 0x8f, 0x12, 0x1e, 0xcc, 0x7c, 0xcc, 0xff, 0xa8, 0x00, 0x0c, 0x1c,
-  0x63, 0x91, 0x34, 0x79, 0xbf, 0xb2, 0xb3, 0x97, 0xd0, 0x10, 0xee, 0x0d,
-  0x6b, 0x25, 0xc0, 0xeb, 0xce, 0x1a, 0x62, 0xa8, 0xed, 0xe5, 0xd2, 0xf5,
-  0x6e, 0x55, 0xdb, 0xb5, 0x94, 0x15, 0x56, 0x7e, 0x23, 0x12, 0xeb, 0xf1,
-  0x2c, 0xfc, 0xe6, 0x0c, 0xca, 0x10, 0x36, 0x64, 0x8e, 0x87, 0x88, 0xde,
-  0xfe, 0xa3, 0xbf, 0xf9, 0x99, 0x37, 0x8d, 0xdb, 0x98, 0xc2, 0xe7, 0x1c,
-  0x30, 0xb8, 0x76, 0x24, 0xf6, 0xe1, 0xdf, 0x63, 0x24, 0x84, 0x60, 0x12,
-  0xe5, 0xd6, 0xad, 0x31, 0xd0, 0x63, 0xbf, 0x47, 0xff, 0xd7, 0xbb, 0x7d,
-  0xdd, 0xee, 0x0e, 0xb9, 0xeb, 0xeb, 0xdd, 0xdf, 0xb0, 0xe3, 0x77, 0xce,
-  0x5c, 0xc6, 0x33, 0xc7, 0xcf, 0x03, 0x5d, 0xe1, 0xbe, 0x02, 0x75, 0xeb,
-  0xca, 0xa2, 0x08, 0x6b, 0x73, 0x37, 0xd5, 0x7a, 0x60, 0xa5, 0x3e, 0xe4,
-  0x24, 0x86, 0xda, 0x93, 0xb2, 0x09, 0x54, 0xc7, 0x66, 0xa4, 0x70, 0xab,
-  0x8c, 0x32, 0xc5, 0xb0, 0x5f, 0x0c, 0xe2, 0xa4, 0xb8, 0x75, 0x46, 0x6d,
-  0x89, 0x5f, 0x8a, 0x04, 0x05, 0xc0, 0x12, 0x7c, 0x47, 0x4d, 0x68, 0xd4,
-  0x80, 0x15, 0x14, 0xd9, 0xe6, 0xa2, 0xd2, 0x11, 0x33, 0xdb, 0xba, 0x7a,
-  0x30, 0xc4, 0xae, 0x7d, 0xc8, 0xb6, 0x73, 0x6b, 0xd5, 0x23, 0xbe, 0xd2,
-  0xe5, 0x9f, 0x0a, 0x16, 0x6e, 0x83, 0x52, 0xbd, 0x23, 0x7e, 0x90, 0x0c,
-  0x46, 0xef, 0x92, 0x83, 0x41, 0xb0, 0x44, 0x27, 0x88, 0x12, 0xac, 0x9b,
-  0x6c, 0xa1, 0x55, 0xe2, 0x10, 0x67, 0x82, 0x9a, 0x56, 0xbe, 0x9c, 0x74,
-  0x05, 0x50, 0x37, 0xa7, 0xdc, 0xd8, 0x5a, 0x34, 0x97, 0x81, 0x03, 0x70,
-  0xa1, 0x25, 0x71, 0xb9, 0x48, 0x6a, 0xcd, 0xc8, 0x80, 0x30, 0x21, 0xb9,
-  0xf2, 0x12, 0x24, 0xcb, 0x71, 0x5d, 0x1c, 0xb0, 0x56, 0x38, 0x32, 0x29,
-  0xa8, 0x68, 0x1a, 0x1a, 0x83, 0x66, 0xec, 0x63, 0xae, 0xb5, 0x82, 0xda,
-  0xb2, 0xac, 0xeb, 0xfc, 0xdc, 0x70, 0xea, 0x4b, 0x61, 0x91, 0x75, 0xc6,
-  0x31, 0x61, 0x9c, 0x26, 0x8e, 0xd5, 0xb4, 0xf8, 0x11, 0x75, 0x58, 0x7c,
-  0x80, 0x67, 0x2a, 0x98, 0x15, 0x62, 0xea, 0x32, 0xa3, 0x63, 0xc6, 0x76,
-  0x9d, 0xa3, 0x69, 0xa6, 0xb6, 0x34, 0x39, 0xaf, 0xf2, 0xec, 0x02, 0x25,
-  0xd5, 0x19, 0x2c, 0x8f, 0xc5, 0xc0, 0xa0, 0x38, 0x1e, 0x50, 0x8b, 0x66,
-  0xe3, 0x64, 0x82, 0x60, 0xe1, 0x1a, 0x88, 0xbe, 0x14, 0x42, 0x4e, 0x01,
-  0x9c, 0x2e, 0x3c, 0xbd, 0xca, 0x10, 0xfc, 0xa0, 0x15, 0x57, 0x55, 0xc5,
-  0xe8, 0x0d, 0xab, 0xad, 0x6c, 0xe1, 0x03, 0x4a, 0xd8, 0x20, 0xdc, 0x34,
-  0x0b, 0xdd, 0x84, 0x1e, 0xa9, 0x1c, 0xa4, 0x46, 0x20, 0x3b, 0xe4, 0x87,
-  0xf1, 0xef, 0xc6, 0xe3, 0x9d, 0x41, 0xfc, 0xd7, 0xa7, 0x32, 0xac, 0x0b,
-  0xec, 0xf7, 0x82, 0xbb, 0x03, 0xa0, 0xa9, 0x78, 0x44, 0xff, 0x05, 0xca,
-  0x8e, 0x24, 0x6f, 0xca, 0x10, 0x94, 0xb0, 0x1b, 0x1d, 0x8f, 0x18, 0x40,
-  0x0e, 0xb9, 0xb3, 0xb3, 0x6b, 0x08, 0x9a, 0x82, 0x60, 0x07, 0x7c, 0xa7,
-  0xf4, 0xbb, 0xe0, 0x8a, 0x77, 0x11, 0xff, 0xad, 0x18, 0x7f, 0x17, 0xe2,
-  0x8f, 0xbd, 0x72, 0x01, 0xfe, 0x94, 0xd3, 0xc2, 0x16, 0xfb, 0x14, 0x23,
-  0x08, 0xef, 0x64, 0x14, 0x68, 0xe8, 0x0f, 0xef, 0x37, 0xe2, 0x9e, 0x17,
-  0x3c, 0xe0, 0x20, 0x95, 0x61, 0xee, 0x8d, 0xc3, 0xfd, 0xd0, 0x09, 0xa5,
-  0x0a, 0x3b, 0x4f, 0x83, 0x42, 0x90, 0x3e, 0x2f, 0xd7, 0xa6, 0xae, 0xf3,
-  0xd4, 0xca, 0x4e, 0xae, 0x23, 0x5e, 0x4f, 0xc1, 0xd6, 0x67, 0x44, 0x86,
-  0x3e, 0x97, 0x20, 0x1d, 0x8e, 0x58, 0xfe, 0xe9, 0x9b, 0xc9, 0x24, 0x8c,
-  0xf2, 0x2f, 0x8c, 0xaa, 0x54, 0x5e, 0x16, 0xf9, 0x2f, 0x68, 0x91, 0x1c,
-  0xa8, 0xdd, 0xf0, 0xdc, 0x56, 0xa2, 0x45, 0xe2, 0x05, 0x03, 0x20, 0x90,
-  0x23, 0xe4, 0x6f, 0x14, 0x0b, 0x48, 0xb7, 0x0e, 0x22, 0xda, 0x90, 0x9b,
-  0x66, 0x83, 0x19, 0xe1, 0xf2, 0x90, 0xba, 0xcd, 0xac, 0x19, 0xea, 0xec,
-  0xa4, 0xe3, 0x60, 0x73, 0x95, 0x2a, 0x04, 0xe9, 0xe8, 0xbf, 0x41, 0x56,
-  0x44, 0x1c, 0xa1, 0x8e, 0x60, 0xaf, 0x70, 0x34, 0xa2, 0xe0, 0x9d, 0x16,
-  0x1f, 0xaf, 0xce, 0x62, 0xd7, 0x8b, 0xae, 0x31, 0x5f, 0xa4, 0x63, 0x41,
-  0xdb, 0x02, 0x3a, 0x28, 0xad, 0x72, 0xac, 0x10, 0x8d, 0x0a, 0x9f, 0x69,
-  0x0c, 0xf0, 0xb3, 0x8d, 0x0c, 0x6a, 0xdd, 0x2e, 0x0f, 0x80, 0xff, 0x84,
-  0x53, 0x41, 0x31, 0xbb, 0xc4, 0xba, 0x4f, 0xc5, 0xac, 0x18, 0x24, 0x22,
-  0x63, 0xcc, 0x4e, 0x0c, 0xca, 0x1d, 0x49, 0x3e, 0xb0, 0x14, 0xd2, 0x18,
-  0x60, 0x46, 0xa6, 0x22, 0xbb, 0x93, 0xb1, 0x5b, 0x12, 0xda, 0x40, 0x53,
-  0x66, 0x18, 0x68, 0x60, 0x0c, 0x90, 0x4a, 0xa4, 0x86, 0xa9, 0x23, 0xc1,
-  0x7c, 0x8d, 0x64, 0x33, 0xa5, 0x8a, 0x2e, 0x69, 0xb9, 0xea, 0x29, 0x76,
-  0x88, 0x1c, 0x9e, 0x22, 0x1e, 0x87, 0x54, 0xa3, 0x11, 0xdb, 0xb7, 0x18,
-  0xc3, 0x3b, 0x07, 0xa4, 0x25, 0xc0, 0x46, 0x24, 0x05, 0xac, 0x8c, 0x3a,
-  0x06, 0x28, 0x34, 0xce, 0x8e, 0xb2, 0xb4, 0x32, 0x04, 0xf7, 0x61, 0x96,
-  0x2b, 0x76, 0xc3, 0xd1, 0x52, 0xb9, 0x6c, 0x77, 0xb2, 0x77, 0xd2, 0x48,
-  0x8f, 0x2c, 0xff, 0xff, 0x8f, 0x64, 0x1a, 0x77, 0x53, 0xe0, 0xd6, 0x09,
-  0xef, 0x09, 0xf2, 0x59, 0xc2, 0x40, 0xc4, 0x71, 0x59, 0x37, 0xa9, 0xad,
-  0xed, 0xc5, 0xaf, 0x75, 0x9a, 0x8b, 0x1f, 0xa6, 0x61, 0xd2, 0x0a, 0xf4,
-  0xcd, 0x02, 0x1e, 0xb9, 0x29, 0x5c, 0x63, 0x2b, 0x82, 0x12, 0x45, 0x23,
-  0x40, 0x3a, 0xfb, 0x2c, 0x13, 0xf0, 0xc2, 0xbf, 0xb8, 0xda, 0x5a, 0xbf,
-  0xb7, 0x02, 0xb6, 0x6b, 0x78, 0xf3, 0x73, 0xef, 0x3e, 0xfe, 0xfc, 0xde,
-  0x0b, 0x99, 0xce, 0x19, 0x5e, 0x93, 0xeb, 0xaf, 0xcd, 0xef, 0x6c, 0xfd,
-  0x63, 0xe8, 0xc1, 0x61, 0x55, 0x0c, 0xdb, 0x8c, 0x30, 0x3b, 0xcb, 0xde,
-  0x10, 0xbd, 0x87, 0xf7, 0x7b, 0x18, 0x5c, 0xa6, 0x5e, 0x60, 0x55, 0x89,
-  0x0d, 0x47, 0x3f, 0xcf, 0x9a, 0x1b, 0x48, 0x71, 0xb4, 0x1e, 0xba, 0x90,
-  0x1e, 0x17, 0x90, 0x25, 0x32, 0x52, 0x48, 0x2c, 0xae, 0x92, 0xd0, 0xb3,
-  0x95, 0xa1, 0x30, 0x48, 0xba, 0x35, 0x89, 0xa8, 0x87, 0x39, 0x38, 0x7d,
-  0xd1, 0x62, 0x79, 0xce, 0x61, 0xde, 0x5a, 0x1b, 0x0d, 0x27, 0x6e, 0x25,
-  0x3d, 0x69, 0xd4, 0x94, 0x3c, 0xe8, 0x7b, 0x1c, 0xec, 0x31, 0x96, 0x63,
-  0x1b, 0x87, 0x11, 0xb2, 0x69, 0x9b, 0x3c, 0x1e, 0xdd, 0xff, 0x56, 0xec,
-  0x41, 0xe0, 0x41, 0x85, 0x97, 0x30, 0xe6, 0xa8, 0xee, 0x63, 0x32, 0x6c,
-  0xc4, 0x91, 0x6f, 0xd3, 0xa5, 0xf9, 0x0c, 0x0e, 0x4a, 0x42, 0xe9, 0x9e,
-  0x65, 0x49, 0x2c, 0x44, 0xc2, 0xcb, 0xd8, 0xe4, 0x81, 0x75, 0x9c, 0xf4,
-  0xb4, 0x3f, 0x61, 0x15, 0x1a, 0x51, 0xce, 0x62, 0xb5, 0xc3, 0x6a, 0x01,
-  0xfe, 0x52, 0xc3, 0x94, 0xba, 0xec, 0xc5, 0xf5, 0xe3, 0x5f, 0xae, 0x52,
-  0xaa, 0xa1, 0x90, 0x0c, 0xd4, 0xb0, 0xae, 0x43, 0x6b, 0x92, 0x65, 0x48,
-  0x5e, 0x25, 0xc7, 0x92, 0x72, 0x4e, 0x59, 0x77, 0xfc, 0x12, 0x41, 0x28,
-  0x7e, 0x4d, 0xcf, 0xd4, 0x63, 0xab, 0x29, 0x87, 0x85, 0x75, 0x81, 0x1d,
-  0xa6, 0x2f, 0x08, 0xbe, 0xbc, 0xb4, 0x6f, 0xeb, 0xd4, 0xf6, 0xf9, 0x49,
-  0x63, 0xe1, 0x24, 0xad, 0x53, 0x2b, 0x9e, 0x90, 0x88, 0xa7, 0x70, 0x73,
-  0x82, 0xd4, 0x8e, 0xc9, 0xe1, 0xe9, 0x56, 0x72, 0xea, 0x2c, 0xe8, 0xa4,
-  0x34, 0x30, 0xfa, 0xe3, 0x8b, 0x36, 0x1f, 0x96, 0x32, 0xa7, 0x8c, 0x03,
-  0x1c, 0x37, 0x88, 0x8b, 0x8b, 0x82, 0x28, 0xca, 0xa2, 0x5d, 0x93, 0x23,
-  0xfa, 0x37, 0x67, 0x4c, 0x9d, 0xb9, 0xbc, 0xa0, 0x3c, 0x13, 0x86, 0x2e,
-  0x11, 0x95, 0xd2, 0x3f, 0xa6, 0x30, 0xb9, 0x22, 0x5b, 0x90, 0xcb, 0x0b,
-  0x8a, 0x8b, 0x80, 0x69, 0x8a, 0xa6, 0xde, 0x69, 0x8e, 0x16, 0x42, 0x63,
-  0xe7, 0x3d, 0x8c, 0x26, 0x9a, 0x0b, 0x41, 0x11, 0x80, 0xe3, 0x76, 0x4a,
-  0xf0, 0x10, 0x0f, 0xbb, 0xcc, 0x8a, 0x2c, 0x86, 0x66, 0x76, 0x47, 0x17,
-  0xb9, 0x90, 0xf4, 0x6c, 0xdc, 0x2d, 0x4d, 0xe0, 0xb9, 0x30, 0x64, 0x70,
-  0x79, 0xe9, 0xca, 0x90, 0xf4, 0xa0, 0x10, 0xb3, 0x8c, 0x87, 0x22, 0xc2,
-  0xe0, 0x88, 0x28, 0x72, 0x41, 0x2a, 0xc1, 0xb4, 0x5c, 0xde, 0x61, 0x31,
-  0xcc, 0x63, 0x75, 0x7d, 0xb5, 0x67, 0xf8, 0xc6, 0xde, 0xf8, 0x53, 0x4e,
-  0x5b, 0xbb, 0x32, 0x97, 0x75, 0x04, 0xb2, 0x9c, 0x83, 0x59, 0x18, 0xf6,
-  0xbe, 0xdb, 0x9e, 0x48, 0xe1, 0x63, 0x27, 0xf8, 0x8f, 0xfe, 0x1d, 0x94,
-  0xc6, 0xb0, 0x9a, 0xcf, 0x45, 0x33, 0x0c, 0x68, 0x0b, 0xa4, 0x95, 0x80,
-  0xc0, 0xb6, 0xb8, 0x84, 0x2d, 0x47, 0x40, 0x9c, 0xe7, 0x0d, 0xd5, 0x8e,
-  0x51, 0x7d, 0xb2, 0x7d, 0x48, 0xa9, 0xd8, 0x63, 0x45, 0x6f, 0x45, 0x13,
-  0xfc, 0xc7, 0xc9, 0xbf, 0x53, 0xa7, 0xf2, 0x36, 0xe7, 0x59, 0x51, 0x90,
-  0xc6, 0x97, 0x47, 0x5f, 0x9d, 0xbc, 0x3d, 0x6a, 0xe7, 0x5e, 0x36, 0x8c,
-  0x11, 0x46, 0x41, 0x08, 0xdd, 0xd1, 0x11, 0x3c, 0xa2, 0xe2, 0x37, 0x48,
-  0x04, 0x45, 0x0e, 0x0b, 0x40, 0x72, 0xfa, 0xfd, 0x4b, 0x3b, 0x3a, 0xc8,
-  0x0b, 0x05, 0x17, 0x23, 0x94, 0x46, 0x87, 0xbc, 0xe6, 0xdd, 0x4b, 0x1e,
-  0xf2, 0x00, 0x8a, 0x2e, 0x4a, 0xcd, 0x73, 0x3b, 0x3e, 0x0a, 0xfd, 0xe0,
-  0x80, 0x1d, 0xc5, 0x1d, 0xa0, 0x52, 0x15, 0x75, 0x0d, 0x1c, 0x01, 0xdb,
-  0x68, 0x20, 0x01, 0xb3, 0x9e, 0x44, 0xe8, 0x58, 0x12, 0xe0, 0x9c, 0x32,
-  0x0c, 0x21, 0xb0, 0x09, 0xc7, 0x49, 0xd8, 0x91, 0x06, 0xab, 0x50, 0x2f,
-  0x31, 0xd6, 0x8d, 0xe2, 0xd2, 0xec, 0xa0, 0xe1, 0x7b, 0x0f, 0xa6, 0x17,
-  0x90, 0xaf, 0x85, 0xbf, 0x1d, 0x32, 0x64, 0xa4, 0xb8, 0xa1, 0xfc, 0x85,
-  0x8c, 0x78, 0xee, 0x4d, 0x9f, 0x9b, 0xf5, 0xd6, 0xb0, 0x35, 0x54, 0xfb,
-  0x4d, 0xa2, 0xba, 0xf4, 0xc6, 0x5f, 0x36, 0x5c, 0x82, 0x0b, 0xd7, 0xaa,
-  0x8d, 0x57, 0x75, 0x76, 0xb5, 0x3e, 0xb7, 0xee, 0x8b, 0x2b, 0xd3, 0x19,
-  0xf7, 0xe2, 0xfb, 0xb2, 0x4b, 0x51, 0x42, 0x8d, 0x08, 0xa1, 0x77, 0xc5,
-  0xa8, 0xce, 0xc4, 0x42, 0xe4, 0x5a, 0xd5, 0x56, 0xd4, 0x11, 0x19, 0x66,
-  0x92, 0x34, 0xc0, 0x90, 0x70, 0xa5, 0xff, 0x94, 0xf5, 0x90, 0x23, 0x4f,
-  0xeb, 0xd3, 0x90, 0x3f, 0x82, 0x6a, 0x2a, 0xd6, 0x77, 0x45, 0x83, 0x23,
-  0xcb, 0xdc, 0x65, 0x5a, 0x56, 0xd1, 0x6c, 0x36, 0x10, 0x92, 0x23, 0xdd,
-  0x9a, 0x60, 0x33, 0x9e, 0x3d, 0x7e, 0x86, 0x4b, 0x9e, 0x22, 0xa7, 0xa4,
-  0xf0, 0xa5, 0xa0, 0xe1, 0x93, 0x57, 0x97, 0x2b, 0xee, 0x46, 0x63, 0xf9,
-  0x6d, 0x4b, 0x30, 0x7c, 0x41, 0x84, 0xce, 0xe6, 0x5c, 0x6c, 0x73, 0xe2,
-  0x35, 0x12, 0x62, 0x3f, 0xad, 0xd9, 0x30, 0xe0, 0x77, 0x1a, 0xf2, 0xc9,
-  0xeb, 0x0f, 0xc9, 0xe6, 0xbf, 0x6e, 0x31, 0x74, 0x8a, 0x86, 0x0b, 0xc1,
-  0x4a, 0x9b, 0x17, 0xab, 0x80, 0xf2, 0x61, 0xa6, 0xcb, 0x5b, 0x8b, 0x4a,
-  0x6b, 0x4e, 0xf3, 0x3b, 0x8f, 0x25, 0x18, 0xd6, 0x4d, 0xb9, 0x4c, 0xb8,
-  0x3a, 0x6a, 0x15, 0x38, 0xed, 0x64, 0xbb, 0x7e, 0x65, 0x66, 0x45, 0x78,
-  0x37, 0x12, 0x13, 0xa2, 0x1a, 0x02, 0x62, 0x7a, 0x55, 0x39, 0x6b, 0x9c,
-  0xbc, 0x2b, 0x28, 0x40, 0x50, 0xe8, 0x4e, 0x6e, 0x8c, 0xbc, 0x30, 0xf3,
-  0x37, 0x34, 0x6d, 0xee, 0x8c, 0x08, 0x13, 0xfa, 0x47, 0x9b, 0xf9, 0x08,
-  0xbb, 0xec, 0x38, 0x6e, 0xe9, 0xd0, 0x0a, 0x5b, 0xb3, 0x6c, 0x2b, 0x49,
-  0xbe, 0xca, 0x83, 0xd2, 0xb4, 0x5c, 0x06, 0x13, 0xa4, 0x6e, 0xa6, 0x43,
-  0x6d, 0xc3, 0x35, 0x9f, 0xcd, 0xe7, 0x23, 0x2e, 0x39, 0x01, 0x08, 0x7e,
-  0x88, 0xf9, 0x9c, 0xf1, 0x4d, 0x81, 0x75, 0xbe, 0x0a, 0x14, 0xdc, 0x31,
-  0x94, 0xb8, 0x3e, 0x46, 0x3e, 0x93, 0x02, 0xa7, 0x48, 0x5e, 0x99, 0x7a,
-  0xd7, 0x90, 0x84, 0xe8, 0xcc, 0x22, 0xb4, 0x38, 0x3c, 0xa5, 0xbe, 0xc2,
-  0x8f, 0x21, 0xbe, 0x6d, 0x8a, 0x85, 0x86, 0xdd, 0x91, 0x6f, 0xf5, 0x78,
-  0x7a, 0x11, 0x89, 0xdf, 0xfc, 0xa4, 0x25, 0x8a, 0x3a, 0x6b, 0x6a, 0x77,
-  0x9b, 0xa7, 0xc4, 0x03, 0x69, 0xd7, 0xf4, 0x48, 0xf6, 0x37, 0x87, 0x75,
-  0x9a, 0x71, 0x3e, 0x2e, 0x3f, 0xc6, 0xe7, 0xb2, 0x90, 0x5a, 0x35, 0xcf,
-  0x69, 0x34, 0xd9, 0x2d, 0x89, 0x4b, 0x86, 0x40, 0x3e, 0xb7, 0xd1, 0x69,
-  0x9f, 0xf4, 0x24, 0x3d, 0xa1, 0x32, 0x3c, 0x97, 0x85, 0x47, 0x3a, 0x1c,
-  0xbd, 0xce, 0x5a, 0x2a, 0x40, 0x86, 0xb2, 0x4c, 0xe1, 0x99, 0xe7, 0xef,
-  0x2f, 0xb3, 0x06, 0xdf, 0x6e, 0xee, 0x6f, 0x61, 0x39, 0xe2, 0xcd, 0x2d,
-  0x91, 0xf6, 0x4f, 0x49, 0xd0, 0xed, 0x61, 0xd8, 0xa4, 0x68, 0x23, 0x9a,
-  0x78, 0xde, 0xda, 0xfd, 0xf1, 0x4e, 0x60, 0x41, 0x9b, 0x5e, 0x5d, 0x56,
-  0x4b, 0xae, 0xe8, 0x7b, 0xcf, 0xaa, 0xf2, 0x93, 0xc1, 0x9a, 0xf2, 0xab,
-  0xaf, 0x5e, 0xfa, 0x6b, 0x29, 0xcb, 0x66, 0xd6, 0x2d, 0xde, 0x9c, 0x94,
-  0x63, 0x9f, 0x2b, 0xc6, 0xb9, 0xbb, 0x8c, 0x6d, 0x6b, 0x4e, 0x87, 0x93,
-  0xc5, 0xa7, 0x6f, 0xe2, 0xcd, 0xb5, 0xb6, 0x84, 0x5b, 0xd0, 0x66, 0xe9,
-  0xfc, 0x19, 0x45, 0x3f, 0x47, 0x71, 0x46, 0x9c, 0xb0, 0xcb, 0xac, 0xb2,
-  0x9d, 0x84, 0x11, 0xb1, 0x57, 0x8b, 0x72, 0x86, 0xb4, 0xbf, 0xec, 0xde,
-  0xb5, 0xc0, 0x83, 0xba, 0x16, 0x92, 0x2d, 0x59, 0xfb, 0xf3, 0xa2, 0x46,
-  0xcc, 0xc9, 0xd7, 0x9d, 0x0e, 0xb1, 0x66, 0xba, 0x5a, 0x66, 0xa2, 0x65,
-  0xb6, 0x33, 0x7e, 0xd9, 0x9f, 0x42, 0x91, 0x94, 0xd3, 0xc6, 0x9b, 0x01,
-  0x1e, 0xe8, 0x21, 0x58, 0xba, 0xad, 0x22, 0x33, 0x43, 0xee, 0x1c, 0x29,
-  0xec, 0xf7, 0xcd, 0x0c, 0x0f, 0x06, 0xbb, 0x6c, 0x3e, 0xe4, 0x3b, 0xb0,
-  0xb3, 0xc5, 0xbc, 0x39, 0xf1, 0xe6, 0xda, 0x1b, 0xac, 0x3b, 0x4c, 0x63,
-  0x88, 0x6d, 0xb0, 0xd4, 0x4f, 0x08, 0x05, 0x58, 0x67, 0x7e, 0xe0, 0xd5,
-  0xb1, 0x0f, 0xf6, 0x6e, 0xb0, 0xf4, 0x11, 0xac, 0xc2, 0xbc, 0x30, 0x87,
-  0x6f, 0x55, 0x4d, 0xb3, 0xf7, 0x34, 0x36, 0x46, 0xe1, 0x7f, 0xbf, 0x7e,
-  0x41, 0xe6, 0x82, 0xb7, 0x71, 0xb7, 0x80, 0x6c, 0xea, 0x38, 0xb0, 0x60,
-  0x3f, 0xa7, 0x82, 0x3f, 0x61, 0xe4, 0x67, 0xfa, 0x9e, 0x95, 0xc5, 0x1e,
-  0xb2, 0x77, 0xfd, 0x25, 0x89, 0x62, 0x2d, 0x41, 0x0a, 0xc9, 0x0b, 0x5b,
-  0xf4, 0x8c, 0xe4, 0x08, 0x6f, 0x8c, 0x78, 0xac, 0x67, 0x41, 0xa2, 0x86,
-  0xb2, 0xc5, 0x07, 0x64, 0xcf, 0x59, 0xc9, 0xea, 0x7d, 0xa4, 0x3a, 0xb5,
-  0x37, 0x39, 0x7e, 0x5a, 0x77, 0x9b, 0xa7, 0xd4, 0xad, 0xe3, 0xd0, 0x62,
-  0x81, 0x49, 0x98, 0x2c, 0xef, 0x49, 0x19, 0xda, 0xa1, 0x3d, 0x91, 0xc1,
-  0xe8, 0x1e, 0xcc, 0xc2, 0xf9, 0xc9, 0x38, 0x07, 0x6f, 0xe5, 0xe5, 0x7a,
-  0x7c, 0x7c, 0x0d, 0x19, 0x7e, 0x34, 0x1f, 0x9f, 0xf6, 0xf1, 0x5c, 0x08,
-  0x62, 0xb8, 0xcb, 0x88, 0x89, 0x9b, 0x7e, 0xff, 0xeb, 0x59, 0xf8, 0xf2,
-  0x66, 0x66, 0x8d, 0x87, 0x37, 0x8e, 0x2b, 0xa9, 0x18, 0x8a, 0xe1, 0xa4,
-  0xe7, 0x75, 0x39, 0x5f, 0xc1, 0x14, 0x91, 0x36, 0x57, 0xbc, 0x43, 0x17,
-  0x3a, 0xce, 0xde, 0xfd, 0x2c, 0x9a, 0x50, 0x52, 0x0f, 0x76, 0xd4, 0x3c,
-  0x46, 0x91, 0xe3, 0x44, 0xb2, 0x42, 0xe1, 0xfd, 0xdb, 0x2a, 0x4f, 0xbb,
-  0x21, 0xb2, 0x1c, 0xe2, 0x36, 0xa5, 0x8a, 0x10, 0x5e, 0xff, 0x1d, 0x22,
-  0xbd, 0x76, 0xee, 0x90, 0x59, 0x06, 0x5f, 0x02, 0x53, 0x07, 0x85, 0x3c,
-  0xda, 0xdb, 0x28, 0xb9, 0xef, 0x6c, 0xf6, 0x12, 0x6e, 0xb5, 0xb8, 0x87,
-  0x60, 0xcd, 0x03, 0x6e, 0x56, 0x0c, 0x80, 0x63, 0x67, 0x15, 0xb0, 0x3a,
-  0x21, 0xc0, 0x9e, 0x95, 0xef, 0x1b, 0x41, 0xeb, 0x60, 0xaf, 0x1b, 0x89,
-  0x7f, 0xa6, 0xfd, 0xc1, 0xb8, 0xa5, 0x35, 0x4a, 0x07, 0x62, 0x70, 0xdc,
-  0xc8, 0x7a, 0x68, 0xfd, 0xae, 0xf3, 0x9e, 0x2c, 0xcf, 0xd0, 0xb3, 0xb7,
-  0x73, 0x85, 0xb0, 0xc5, 0x32, 0x82, 0x0c, 0xa1, 0x3c, 0xf3, 0xa3, 0x78,
-  0x2e, 0x6c, 0x4a, 0xf3, 0xc2, 0xb7, 0x22, 0xa1, 0x47, 0x23, 0x23, 0xae,
-  0xc9, 0x04, 0xf3, 0x2a, 0x0b, 0xd9, 0x0d, 0xa7, 0x12, 0x1d, 0x39, 0xc5,
-  0x0a, 0x50, 0x48, 0x2b, 0x85, 0x7a, 0x53, 0x65, 0x4a, 0x51, 0xa7, 0x08,
-  0x91, 0x71, 0x86, 0xda, 0x5d, 0x61, 0xe6, 0x09, 0x77, 0xc9, 0x71, 0x8f,
-  0x0c, 0x30, 0x0e, 0x6f, 0xb7, 0x88, 0xcb, 0x24, 0xfd, 0x33, 0x02, 0x3c,
-  0xeb, 0xb3, 0xfa, 0x78, 0xc2, 0xe5, 0xc0, 0xba, 0x7a, 0x45, 0x10, 0x82,
-  0x5a, 0x8f, 0x3d, 0xd3, 0x19, 0xd7, 0x17, 0xc8, 0x2e, 0x67, 0x23, 0xa1,
-  0x8a, 0x36, 0x5b, 0x1f, 0x55, 0x43, 0x5e, 0x02, 0xc3, 0x26, 0x9e, 0xd3,
-  0x3f, 0xd1, 0x34, 0x2b, 0x52, 0xde, 0x48, 0xaa, 0x06, 0xd8, 0xc8, 0x56,
-  0xf2, 0x56, 0xdc, 0xf1, 0xd0, 0x3e, 0xee, 0x1a, 0x80, 0xd8, 0xa3, 0x81,
-  0xcd, 0x7c, 0x6c, 0x24, 0x0c, 0x4e, 0xab, 0x81, 0x28, 0x8f, 0x9a, 0x25,
-  0xb1, 0xe0, 0x86, 0x2d, 0x71, 0xe2, 0xb3, 0x91, 0x78, 0x7b, 0x77, 0xbc,
-  0x3b, 0xf4, 0xed, 0x23, 0x2e, 0x78, 0x16, 0x5a, 0x62, 0x9a, 0x48, 0xf1,
-  0x03, 0xea, 0xba, 0x6b, 0x1b, 0x7b, 0x8b, 0x8e, 0xeb, 0xd0, 0x95, 0x41,
-  0xee, 0x10, 0xa7, 0x5a, 0xdf, 0xa4, 0x77, 0xa1, 0x0a, 0xb5, 0x33, 0x7a,
-  0xf4, 0xec, 0x59, 0x4b, 0x48, 0xaa, 0xbd, 0xea, 0x11, 0x8f, 0x77, 0x76,
-  0x68, 0x6e, 0x01, 0x52, 0x80, 0xf9, 0x62, 0xf4, 0x8c, 0x5e, 0x6c, 0xbf,
-  0x56, 0x67, 0x66, 0x0b, 0x66, 0xfd, 0xef, 0x8d, 0xf0, 0x4d, 0xa4, 0x3b,
-  0xba, 0x73, 0x7a, 0xdf, 0x7a, 0x86, 0xee, 0x22, 0x6f, 0xd1, 0xc3, 0xbc,
-  0x8e, 0xe5, 0xc5, 0x05, 0x8c, 0xaf, 0x78, 0x52, 0x01, 0xb1, 0x6e, 0xd2,
-  0x6a, 0x16, 0x4e, 0x77, 0x67, 0x38, 0xda, 0xed, 0x9b, 0x2e, 0x45, 0x40,
-  0x50, 0x08, 0x29, 0xf6, 0x13, 0x16, 0x0d, 0xa3, 0x27, 0x73, 0x8a, 0x5d,
-  0xb7, 0xa1, 0x5d, 0x33, 0xa2, 0xdd, 0x67, 0xcf, 0x86, 0x18, 0xd9, 0xe3,
-  0x67, 0xcf, 0x7a, 0x71, 0x18, 0xbc, 0x6e, 0x6e, 0x4a, 0x67, 0x32, 0xc5,
-  0xeb, 0x8e, 0x68, 0x6a, 0xa8, 0xe3, 0xf1, 0x7e, 0xf0, 0x4d, 0xf2, 0x59,
-  0xf2, 0xe6, 0xe4, 0xec, 0xc8, 0xb3, 0x26, 0xd2, 0xf9, 0x62, 0x27, 0xb7,
-  0x67, 0x14, 0xa1, 0xb8, 0x81, 0x25, 0x55, 0xf6, 0x24, 0xfb, 0x8c, 0xd1,
-  0x9e, 0x43, 0xb3, 0x07, 0xa5, 0x7b, 0xa9, 0x15, 0x5b, 0xf3, 0x90, 0x5c,
-  0x19, 0x1b, 0xdc, 0x67, 0x14, 0xd2, 0x30, 0xca, 0x49, 0xc1, 0xa7, 0x5b,
-  0xf6, 0x5f, 0x92, 0xe4, 0x34, 0xad, 0xea, 0x30, 0x59, 0x01, 0x56, 0x17,
-  0x5b, 0x6e, 0x98, 0xed, 0x49, 0x65, 0xb5, 0xb0, 0x66, 0x53, 0x6b, 0x2c,
-  0x17, 0x45, 0x55, 0xfe, 0xce, 0xcf, 0xf3, 0x39, 0x70, 0x7d, 0xe2, 0x66,
-  0x0f, 0x40, 0xfa, 0x57, 0x91, 0xf0, 0x22, 0x2a, 0x28, 0x7a, 0x99, 0x37,
-  0x3e, 0x8a, 0xdb, 0xa6, 0xa1, 0xc2, 0x2d, 0xb2, 0x12, 0x72, 0xb0, 0xa8,
-  0x78, 0x26, 0x37, 0x6a, 0x24, 0x6e, 0x71, 0x8c, 0x3b, 0xfe, 0x28, 0x97,
-  0x1b, 0x41, 0xee, 0x54, 0x36, 0x9f, 0xb1, 0xda, 0xe0, 0x5e, 0x18, 0xd1,
-  0x93, 0x72, 0x8e, 0xc9, 0xe4, 0x73, 0x4b, 0xee, 0xac, 0x94, 0xa0, 0x6c,
-  0xfd, 0xce, 0x23, 0xce, 0x49, 0xcc, 0x91, 0xa3, 0x9a, 0x34, 0xe9, 0x12,
-  0xcd, 0x0c, 0xbd, 0xfd, 0xd9, 0xf0, 0x16, 0xc4, 0x9a, 0xba, 0x0b, 0x10,
-  0x48, 0x80, 0x4f, 0xca, 0x1e, 0xb1, 0x59, 0xb6, 0xd4, 0x68, 0xf1, 0xa2,
-  0xdd, 0x8e, 0x39, 0x64, 0x17, 0xf9, 0xe5, 0xaa, 0x8a, 0x47, 0x56, 0x53,
-  0xc5, 0x1d, 0x09, 0x1b, 0xd2, 0x0a, 0x2e, 0xe9, 0x4d, 0x5a, 0x65, 0x5a,
-  0x8e, 0xb7, 0xb8, 0xb3, 0x4c, 0x47, 0x0d, 0x49, 0x9a, 0xea, 0x87, 0xf2,
-  0x3a, 0xc1, 0xae, 0x20, 0x3b, 0xd3, 0x88, 0xad, 0x30, 0xb4, 0x49, 0xbc,
-  0x1b, 0x99, 0xc8, 0xa5, 0x08, 0xb1, 0xc4, 0xaa, 0x89, 0x35, 0x1e, 0x54,
-  0x88, 0x5b, 0x9e, 0xf0, 0x72, 0x69, 0x09, 0xc2, 0x00, 0xd5, 0x8d, 0xb9,
-  0x73, 0x84, 0x5d, 0x4a, 0x65, 0xd0, 0x9b, 0xab, 0xd2, 0xab, 0xf0, 0x14,
-  0x82, 0xb8, 0x80, 0x25, 0x32, 0x64, 0x13, 0xfd, 0xca, 0x9b, 0x64, 0x9e,
-  0xbf, 0x29, 0xe6, 0x65, 0x3a, 0x73, 0xf6, 0xc7, 0xa5, 0x46, 0xe2, 0x0b,
-  0x04, 0xa1, 0x6c, 0x6d, 0x58, 0x0d, 0xcd, 0xec, 0x34, 0xef, 0x71, 0xb2,
-  0xe9, 0x41, 0x0c, 0xd1, 0xd1, 0xf1, 0x2c, 0x89, 0xcc, 0x3e, 0x41, 0x29,
-  0x0c, 0x98, 0x03, 0xf8, 0xab, 0xd0, 0x72, 0x84, 0x83, 0xc8, 0xbb, 0x65,
-  0xa3, 0xc6, 0xa8, 0x32, 0x3b, 0x6e, 0x6f, 0xcf, 0x2a, 0x98, 0x4c, 0x5e,
-  0xfd, 0xcf, 0xa3, 0xdf, 0xd3, 0x85, 0x5b, 0xa5, 0x37, 0x36, 0x27, 0xf8,
-  0x7b, 0x06, 0xb0, 0x15, 0xd7, 0xaa, 0x45, 0xae, 0x49, 0xe7, 0x62, 0x06,
-  0x43, 0xf5, 0x6f, 0xba, 0xd6, 0xc8, 0x47, 0x4f, 0x54, 0x76, 0x11, 0x2d,
-  0xaa, 0x4b, 0xa9, 0xbb, 0x95, 0xb3, 0xbb, 0x53, 0x9a, 0x09, 0x25, 0x73,
-  0xb2, 0x0d, 0x9d, 0xf7, 0x71, 0x41, 0xd6, 0x78, 0xb2, 0x8e, 0xc1, 0x75,
-  0x22, 0x00, 0x73, 0xa1, 0xef, 0x8d, 0x20, 0x52, 0x31, 0x28, 0x33, 0xd6,
-  0x7b, 0xaa, 0x27, 0xfb, 0xa8, 0x19, 0x52, 0x3a, 0x07, 0xbe, 0xde, 0x2a,
-  0x79, 0xfe, 0xee, 0xed, 0x71, 0x4f, 0x26, 0xf4, 0x84, 0xf6, 0x00, 0x8b,
-  0x35, 0x78, 0x9b, 0x11, 0xba, 0x61, 0x65, 0x78, 0xd7, 0x65, 0x36, 0xf0,
-  0x01, 0x25, 0x55, 0x8a, 0xa5, 0xe9, 0x8b, 0x0d, 0x2f, 0x66, 0x91, 0xf4,
-  0x4b, 0x20, 0xe1, 0x76, 0x71, 0x31, 0x16, 0x7e, 0xfe, 0xf2, 0xc5, 0x3c,
-  0x95, 0xb5, 0x5b, 0x55, 0x88, 0x8d, 0xa1, 0x95, 0x8f, 0xd4, 0xae, 0x54,
-  0x53, 0x7f, 0x07, 0x08, 0x98, 0x43, 0xb6, 0xd9, 0xa6, 0x95, 0x2e, 0x41,
-  0x43, 0xc9, 0xe0, 0xaf, 0x70, 0x67, 0x0d, 0x74, 0x98, 0xa3, 0x2c, 0xf4,
-  0x58, 0xeb, 0x52, 0x20, 0xca, 0xa2, 0x65, 0xc8, 0x6d, 0x3b, 0xc2, 0x30,
-  0x6a, 0x0d, 0x5e, 0xc8, 0xae, 0x73, 0x82, 0xd6, 0x09, 0xeb, 0x8f, 0x71,
-  0x56, 0x1a, 0x30, 0x9f, 0x18, 0x94, 0x99, 0xea, 0x41, 0x1f, 0xcb, 0xf8,
-  0x0e, 0xc4, 0x73, 0xc9, 0x42, 0x9a, 0x0e, 0xad, 0x15, 0x66, 0x17, 0x9b,
-  0x6c, 0x3a, 0x47, 0x7d, 0x32, 0x6b, 0x40, 0xc6, 0x1c, 0x67, 0x25, 0xea,
-  0x59, 0x61, 0x48, 0x69, 0x61, 0xfd, 0x31, 0xad, 0x9d, 0xfd, 0xdd, 0xa1,
-  0x4f, 0x9d, 0x37, 0xf5, 0x85, 0xd6, 0x93, 0x1c, 0x19, 0xea, 0x28, 0xa4,
-  0x1a, 0xa7, 0xb7, 0xad, 0x1e, 0xed, 0xf9, 0xc5, 0x99, 0xbc, 0x6a, 0x4c,
-  0x3d, 0x08, 0xda, 0xde, 0x70, 0x1b, 0xca, 0x40, 0xa3, 0x2d, 0x0c, 0x0b,
-  0x2e, 0xda, 0x64, 0x78, 0xb9, 0xc5, 0xa3, 0x1e, 0xb1, 0x91, 0x97, 0xab,
-  0x76, 0xc8, 0x59, 0xd9, 0xa3, 0x97, 0xb9, 0xb9, 0x44, 0x6a, 0x46, 0x24,
-  0x23, 0xf1, 0x9b, 0x0b, 0x9c, 0xeb, 0x41, 0xe4, 0xec, 0xfc, 0x51, 0x88,
-  0xf6, 0x39, 0x95, 0x94, 0x2d, 0xfb, 0x8a, 0x75, 0x80, 0x1a, 0x8a, 0xb8,
-  0xc7, 0xdf, 0xe2, 0xc4, 0x98, 0xd4, 0x29, 0xfb, 0xb4, 0x66, 0xf2, 0xb7,
-  0xc5, 0xe9, 0x81, 0xe9, 0x3f, 0xb2, 0x3a, 0x0a, 0x13, 0xc6, 0x61, 0x68,
-  0x84, 0x0b, 0xde, 0x2a, 0x93, 0x17, 0x68, 0xc1, 0x14, 0x3f, 0xec, 0x72,
-  0xb5, 0xbb, 0x82, 0x87, 0x19, 0x94, 0x2d, 0x4a, 0x56, 0x38, 0xcc, 0x26,
-  0xc9, 0x3a, 0x9f, 0x9a, 0x66, 0xc7, 0x9d, 0x29, 0x68, 0x3d, 0xb5, 0xf8,
-  0x85, 0x7b, 0xd7, 0x9a, 0x18, 0x05, 0x60, 0xfb, 0x84, 0x07, 0xf7, 0x5a,
-  0x51, 0x0a, 0x8e, 0x53, 0x2c, 0x1e, 0x85, 0x42, 0xe1, 0xf0, 0x88, 0x7f,
-  0x0f, 0x72, 0xf4, 0x53, 0xf2, 0xe7, 0x91, 0xab, 0xb6, 0xb3, 0x79, 0x97,
-  0x19, 0xd1, 0xdf, 0x45, 0x50, 0x91, 0x86, 0xf7, 0x49, 0x8f, 0x35, 0x45,
-  0x6e, 0x59, 0x37, 0x0c, 0x68, 0x47, 0x9e, 0x9b, 0x9e, 0x17, 0x5d, 0x8a,
-  0x67, 0xad, 0x8a, 0xec, 0x16, 0xc0, 0xff, 0xfd, 0xcd, 0x85, 0xd2, 0xff,
-  0xf7, 0x2f, 0xde, 0xbe, 0x79, 0xf5, 0xe6, 0xeb, 0x03, 0x20, 0x56, 0x66,
-  0xd5, 0x14, 0x52, 0x5c, 0xf2, 0xf7, 0xd5, 0x2c, 0x9f, 0x32, 0xa7, 0x20,
-  0xcc, 0xcd, 0x8b, 0x76, 0xd2, 0x5b, 0x26, 0x3e, 0x0a, 0xc2, 0xf4, 0x0a,
-  0x40, 0x48, 0x29, 0x32, 0x1e, 0x29, 0x7b, 0x55, 0x79, 0xb9, 0xb2, 0x4b,
-  0x3f, 0x25, 0x51, 0x84, 0x3c, 0x69, 0x14, 0x6b, 0x00, 0x7e, 0xc4, 0x44,
-  0x0b, 0xb3, 0xad, 0x11, 0x14, 0x5e, 0x1e, 0x1f, 0x47, 0xa0, 0xbd, 0x39,
-  0x16, 0x5b, 0xe8, 0x8b, 0xc3, 0xef, 0xa8, 0x21, 0x1b, 0xbc, 0x0d, 0xe7,
-  0xb8, 0xb9, 0xfc, 0xb9, 0x50, 0xb2, 0xc7, 0xf5, 0x8c, 0xdc, 0xfa, 0x7d,
-  0x18, 0x16, 0x4d, 0x41, 0xfb, 0x14, 0x69, 0x4b, 0x3b, 0x9c, 0x57, 0x33,
-  0x52, 0xd2, 0x0c, 0x93, 0x2c, 0x2f, 0x1a, 0x88, 0x47, 0xad, 0x9b, 0xb4,
-  0x5d, 0xa5, 0x6d, 0x9d, 0xbf, 0xea, 0x8a, 0xd5, 0xaf, 0x16, 0x08, 0x12,
-  0xbb, 0xf7, 0xb5, 0x0c, 0x2a, 0xcb, 0x85, 0x54, 0xd5, 0x0f, 0x81, 0xea,
-  0x01, 0x35, 0xcf, 0x32, 0x73, 0x2b, 0x8a, 0xd4, 0x5e, 0x83, 0x5b, 0x86,
-  0xec, 0xe2, 0x26, 0x93, 0x82, 0xac, 0x0e, 0x20, 0xc0, 0x30, 0xbb, 0x71,
-  0x32, 0x29, 0xcd, 0xf3, 0x91, 0x14, 0x20, 0x2d, 0xf2, 0xec, 0xea, 0xbe,
-  0xa7, 0x8d, 0x44, 0xa4, 0xdb, 0x20, 0x45, 0xaa, 0x0d, 0x48, 0x6e, 0xeb,
-  0xf6, 0x7c, 0xc3, 0xe0, 0x06, 0xa2, 0xff, 0xf3, 0xcc, 0x0a, 0x14, 0x77,
-  0xea, 0x1d, 0x05, 0x85, 0x0c, 0x46, 0x86, 0x9d, 0x0e, 0xa8, 0x82, 0xec,
-  0xa8, 0x28, 0xfd, 0x96, 0xee, 0x29, 0xde, 0xee, 0xe7, 0x7c, 0x74, 0x27,
-  0x1c, 0xad, 0x2e, 0xea, 0x95, 0xe1, 0x4b, 0x45, 0x21, 0xf6, 0x2c, 0x8f,
-  0x52, 0xb5, 0xd1, 0x46, 0x1b, 0x70, 0x02, 0x6e, 0x06, 0x09, 0x33, 0x88,
-  0x26, 0x39, 0x71, 0xf5, 0xa6, 0x91, 0x7f, 0xeb, 0x41, 0x60, 0xf8, 0x2f,
-  0xcb, 0x75, 0x33, 0x74, 0x56, 0x8f, 0x9c, 0xe0, 0xb9, 0x9a, 0x20, 0x05,
-  0xf7, 0x62, 0xbc, 0x15, 0x0d, 0x52, 0xe3, 0x31, 0x28, 0xb2, 0x73, 0x7a,
-  0xed, 0xa2, 0x27, 0x7b, 0x19, 0x9f, 0x66, 0x7e, 0x75, 0xef, 0x68, 0xda,
-  0x50, 0x6b, 0xee, 0xd2, 0xa6, 0xd2, 0xc4, 0xcb, 0x0a, 0xf3, 0xbd, 0xfd,
-  0x2d, 0xb8, 0x91, 0x48, 0x41, 0x54, 0x4e, 0xe6, 0x14, 0x3f, 0x71, 0x2f,
-  0x13, 0x16, 0xe7, 0x67, 0x5e, 0x5c, 0x97, 0xf4, 0x8d, 0xf8, 0x79, 0x23,
-  0xf1, 0x5e, 0x79, 0x6f, 0x8e, 0xd8, 0x59, 0x67, 0x55, 0xd5, 0x72, 0xa4,
-  0x19, 0x39, 0x66, 0x2e, 0x9c, 0xf5, 0x5b, 0x27, 0x2e, 0xb7, 0x57, 0x13,
-  0x35, 0xc2, 0x8b, 0x51, 0x6a, 0x0f, 0x1b, 0xe2, 0x1d, 0x52, 0x44, 0xe1,
-  0x15, 0xbd, 0x9c, 0xcd, 0xa1, 0xcd, 0x7a, 0xd9, 0xbe, 0x7a, 0xe1, 0xc8,
-  0x7d, 0x93, 0x5b, 0xa3, 0x54, 0xff, 0x4d, 0x32, 0x6e, 0x57, 0x48, 0x6f,
-  0x29, 0xd6, 0x08, 0x0f, 0xa6, 0x83, 0x44, 0x27, 0x78, 0x7a, 0x55, 0x96,
-  0x92, 0x4e, 0xde, 0xc7, 0x6c, 0x13, 0xae, 0x8c, 0x08, 0xb0, 0x9b, 0x1e,
-  0xf9, 0xa1, 0x5d, 0x12, 0x5b, 0x32, 0x33, 0xc2, 0xba, 0x86, 0xb9, 0x93,
-  0x58, 0x3d, 0xb8, 0xe2, 0xf6, 0xdd, 0xc6, 0xe3, 0xb1, 0x97, 0xb3, 0x30,
-  0xd7, 0x10, 0x6e, 0x95, 0xb8, 0x00, 0x5f, 0xdd, 0xf1, 0xe5, 0x91, 0x30,
-  0x65, 0x7f, 0x51, 0xa2, 0x97, 0x1d, 0x07, 0x2e, 0x13, 0x07, 0xb1, 0xea,
-  0x03, 0x95, 0xc5, 0x14, 0xed, 0xc7, 0x0b, 0x32, 0x7b, 0x45, 0xdb, 0x01,
-  0x06, 0xf2, 0xe7, 0xbd, 0x9d, 0x3e, 0x26, 0x8f, 0x86, 0x34, 0x7d, 0x1d,
-  0xa7, 0xb1, 0xb6, 0xfa, 0x17, 0x5d, 0x83, 0x2e, 0xcb, 0x06, 0x77, 0xc8,
-  0x6a, 0x99, 0x88, 0x81, 0x02, 0x05, 0x49, 0x7b, 0xd6, 0x7f, 0xfc, 0x47,
-  0xd4, 0xa1, 0x75, 0xfc, 0xeb, 0xad, 0xb7, 0xc7, 0x68, 0x28, 0x16, 0xad,
-  0xa9, 0xbc, 0x44, 0x0d, 0x38, 0x9e, 0xd0, 0xee, 0x64, 0x06, 0xd2, 0xeb,
-  0xa9, 0xe0, 0xa8, 0x1c, 0x4e, 0xb4, 0x16, 0xaa, 0xaf, 0xe9, 0x62, 0x99,
-  0x44, 0x58, 0xd6, 0x50, 0x4f, 0x80, 0xc6, 0x7c, 0xa5, 0x0e, 0xfe, 0x36,
-  0xfd, 0xa0, 0x65, 0x54, 0x43, 0x60, 0x25, 0x61, 0xa4, 0xac, 0x8c, 0xa7,
-  0x12, 0xfb, 0x4c, 0x0b, 0x82, 0x9e, 0xda, 0x17, 0x23, 0x05, 0x70, 0x8e,
-  0xc4, 0x98, 0xff, 0x1c, 0x6c, 0xf1, 0xf3, 0x87, 0x14, 0x93, 0x91, 0x8c,
-  0x0c, 0xbf, 0x44, 0xc6, 0x80, 0x1b, 0x19, 0x24, 0x9b, 0x68, 0x65, 0xcb,
-  0xca, 0xb0, 0x21, 0xc2, 0x81, 0x04, 0x7b, 0x8b, 0x2a, 0x93, 0xf2, 0x45,
-  0xd9, 0x0d, 0x48, 0x87, 0x18, 0x0b, 0x43, 0x95, 0x11, 0x03, 0x50, 0xed,
-  0x91, 0x33, 0x72, 0x2f, 0x56, 0xf3, 0x98, 0xb6, 0x83, 0x23, 0x2e, 0xb5,
-  0x4f, 0xf2, 0xba, 0x5e, 0x89, 0x2e, 0xe8, 0xca, 0xd6, 0x58, 0x8c, 0xd1,
-  0xb9, 0x19, 0x0f, 0x75, 0x5d, 0xcf, 0x11, 0x9f, 0xd5, 0x2b, 0xa5, 0x30,
-  0xd8, 0x3e, 0xcb, 0xbf, 0x2a, 0x6a, 0x8a, 0x3a, 0x25, 0x9b, 0xc4, 0x25,
-  0x28, 0x41, 0xe9, 0x4b, 0x2a, 0xe9, 0x6b, 0x84, 0x29, 0x5c, 0x59, 0x9d,
-  0xe6, 0x06, 0x27, 0xa7, 0x67, 0xaf, 0x4e, 0xde, 0x4c, 0x92, 0x7f, 0x1d,
-  0xac, 0x4d, 0x99, 0x6c, 0xe3, 0xad, 0xff, 0x30, 0x74, 0x5b, 0xd3, 0x1f,
-  0xb3, 0x27, 0x2a, 0xb2, 0x27, 0xcb, 0x4f, 0xcd, 0x25, 0x6e, 0xd8, 0xac,
-  0xbe, 0x29, 0x68, 0x8d, 0xb2, 0x5b, 0x1d, 0x80, 0xc9, 0x40, 0x68, 0xb6,
-  0xf0, 0x9c, 0x5d, 0x5d, 0x9a, 0x79, 0xbe, 0x53, 0x5d, 0x3a, 0xcd, 0xc7,
-  0x19, 0xb1, 0x30, 0xc0, 0x56, 0x78, 0xb4, 0xbc, 0xe0, 0x6c, 0x8c, 0xa2,
-  0x48, 0x6f, 0x4a, 0xd1, 0x7b, 0x91, 0xb7, 0x90, 0xbc, 0xd2, 0x8d, 0xba,
-  0xfd, 0xfa, 0xe8, 0x0c, 0xb6, 0x1a, 0x4a, 0x1a, 0x77, 0x03, 0x24, 0x8b,
-  0x97, 0xc8, 0x3f, 0xa9, 0x95, 0xd1, 0x34, 0x57, 0x1c, 0x67, 0xc7, 0x08,
-  0xd1, 0xf3, 0xb4, 0x88, 0xa6, 0x85, 0x1a, 0xc1, 0xf6, 0xd0, 0xac, 0x46,
-  0xe9, 0x10, 0xa1, 0xd5, 0x84, 0xe2, 0x55, 0xce, 0x62, 0xe0, 0xb5, 0xd3,
-  0x77, 0x67, 0x62, 0xae, 0x7a, 0x79, 0x74, 0x7c, 0x74, 0x76, 0x34, 0x0c,
-  0xc0, 0x67, 0x61, 0x84, 0x9d, 0x53, 0xfa, 0x58, 0x93, 0x4d, 0xaf, 0x8a,
-  0x72, 0x5e, 0x5e, 0xe6, 0x52, 0x85, 0x3b, 0xf9, 0x3e, 0x3b, 0x7f, 0xf9,
-  0xe2, 0x3b, 0x88, 0x15, 0x30, 0x3d, 0x9d, 0xbe, 0x3d, 0x39, 0xfd, 0xea,
-  0xd5, 0x9b, 0x97, 0xc3, 0xe4, 0xf0, 0xe4, 0xf4, 0x6f, 0xc3, 0xe4, 0xf5,
-  0xc9, 0x77, 0x47, 0x91, 0xb4, 0x01, 0x00, 0x5f, 0x07, 0x14, 0x63, 0x6b,
-  0x74, 0x3a, 0xfd, 0xbb, 0x60, 0x97, 0x8a, 0x77, 0x97, 0xbc, 0xe8, 0x44,
-  0xcc, 0x98, 0xa5, 0x33, 0x57, 0xe9, 0x37, 0x47, 0x2f, 0x5e, 0x0e, 0x83,
-  0xba, 0x06, 0xa8, 0xb0, 0x64, 0x3a, 0xc3, 0xfc, 0xec, 0xa4, 0x09, 0x0d,
-  0x9f, 0x95, 0x10, 0x12, 0x14, 0xd8, 0x09, 0xc7, 0x27, 0xd6, 0x10, 0x2c,
-  0xe1, 0x70, 0xcc, 0xfa, 0x62, 0x90, 0xa4, 0x40, 0x07, 0x57, 0xc0, 0x5e,
-  0x9f, 0xca, 0x04, 0x99, 0xcd, 0x97, 0xb6, 0x05, 0x8e, 0x8d, 0x52, 0x55,
-  0x34, 0xb1, 0xd1, 0x8f, 0x3c, 0xef, 0xc1, 0x04, 0x1b, 0xb6, 0xc0, 0x40,
-  0x88, 0x1f, 0xb1, 0x05, 0x32, 0x95, 0x52, 0xa6, 0x54, 0xb0, 0xcc, 0x68,
-  0x4b, 0x10, 0xae, 0x2f, 0x1c, 0x78, 0xf4, 0x7a, 0x41, 0x5b, 0x2a, 0x2c,
-  0x08, 0x30, 0x1b, 0x16, 0x4f, 0x17, 0xc8, 0x16, 0xf3, 0xfd, 0x81, 0x3f,
-  0x16, 0x38, 0xb8, 0x48, 0x32, 0xc4, 0xea, 0xc2, 0x90, 0x65, 0xc6, 0xc1,
-  0x87, 0xbc, 0x4d, 0xd6, 0x3a, 0x90, 0x8c, 0x5e, 0xa9, 0x6d, 0x62, 0x9d,
-  0x9c, 0xa5, 0x27, 0xc6, 0x96, 0x9d, 0x27, 0x34, 0x38, 0x35, 0x5d, 0xb5,
-  0xd9, 0x84, 0x6f, 0x28, 0xc1, 0x3c, 0x23, 0x62, 0xbf, 0x6e, 0xb1, 0xfa,
-  0x09, 0xc4, 0x90, 0xe3, 0x2f, 0x0a, 0xc1, 0xea, 0x04, 0x26, 0x2d, 0x73,
-  0xcf, 0x06, 0x77, 0x0c, 0x3d, 0x69, 0x58, 0x49, 0x21, 0x86, 0xd1, 0x04,
-  0xae, 0xc1, 0x11, 0xab, 0xd4, 0x7e, 0x1c, 0xbd, 0x72, 0x4f, 0x11, 0x51,
-  0x65, 0x0c, 0x81, 0x0b, 0x8d, 0xe6, 0xe9, 0xd7, 0x96, 0x75, 0xa7, 0x7c,
-  0x7f, 0xe7, 0xd6, 0x99, 0xda, 0x21, 0x54, 0xd4, 0xc9, 0x48, 0xca, 0x00,
-  0x50, 0x42, 0x6c, 0xb0, 0x74, 0x9b, 0x5f, 0xf5, 0x30, 0x46, 0xdf, 0x78,
-  0x6b, 0xf1, 0x31, 0x2c, 0x8b, 0x3a, 0x7e, 0x65, 0x8e, 0x43, 0x04, 0xfc,
-  0x8a, 0xab, 0x6e, 0x73, 0x6c, 0x09, 0x89, 0x57, 0xb4, 0xfa, 0xa6, 0xad,
-  0xb0, 0xe3, 0xd3, 0x93, 0xd3, 0xfd, 0x68, 0xcf, 0xf8, 0xe2, 0xbe, 0xae,
-  0x83, 0x3d, 0x7b, 0x7b, 0x74, 0xf6, 0xb6, 0x1d, 0xcd, 0x80, 0x5a, 0x62,
-  0xa1, 0x53, 0xe9, 0xd5, 0xeb, 0x17, 0xf1, 0xf9, 0xe2, 0x8b, 0xbe, 0x5e,
-  0x89, 0x37, 0xa0, 0xdf, 0x30, 0x36, 0xdf, 0xc3, 0x72, 0xdb, 0x89, 0xf5,
-  0x37, 0x79, 0xdd, 0xb3, 0xbe, 0xf8, 0x62, 0xcd, 0x2c, 0xbf, 0x39, 0x3a,
-  0x3e, 0x0d, 0x67, 0xf9, 0xdd, 0xdb, 0xaf, 0xfe, 0xd6, 0x9e, 0xe5, 0xfe,
-  0xa3, 0x48, 0xaf, 0xbf, 0xa5, 0x5d, 0x3d, 0xab, 0xcb, 0xb9, 0x11, 0x58,
-  0x9e, 0xff, 0xf8, 0x17, 0x4a, 0x56, 0xa6, 0xdc, 0xa8, 0x03, 0x73, 0x0b,
-  0x54, 0x3f, 0x0e, 0xf1, 0xf3, 0xe7, 0xf1, 0x78, 0xfc, 0x79, 0x58, 0x29,
-  0x81, 0xec, 0x34, 0x76, 0xae, 0x78, 0x10, 0x51, 0x91, 0x1d, 0x2d, 0x9c,
-  0xd2, 0xd0, 0x28, 0xed, 0x0e, 0x9e, 0x8b, 0x65, 0x9a, 0x57, 0x54, 0x28,
-  0x2c, 0x7a, 0xdb, 0x62, 0x3e, 0x2e, 0x75, 0xd2, 0x4a, 0x74, 0x02, 0xf8,
-  0xc7, 0x67, 0x75, 0xb3, 0xde, 0x12, 0xa0, 0x02, 0x77, 0x01, 0xa7, 0xb3,
-  0xc0, 0x18, 0xc2, 0xb5, 0x9a, 0xd0, 0x6d, 0x05, 0x1b, 0x2d, 0xeb, 0x3b,
-  0xee, 0xa2, 0x2d, 0xf4, 0xe2, 0x90, 0xa9, 0xcf, 0xec, 0xf0, 0xa3, 0x16,
-  0x0c, 0x49, 0x3c, 0x3e, 0x14, 0x7f, 0x3f, 0x19, 0x93, 0x53, 0xba, 0x53,
-  0xa8, 0xbe, 0x74, 0xd6, 0x4c, 0xb7, 0x31, 0xcf, 0xba, 0x25, 0xfe, 0x59,
-  0xf9, 0x2d, 0x30, 0x24, 0xf9, 0xe1, 0xc6, 0x94, 0x92, 0xce, 0x91, 0x37,
-  0x5e, 0x8e, 0x8f, 0xcb, 0x8a, 0xf7, 0xa4, 0x75, 0x16, 0x0e, 0x42, 0x56,
-  0xe6, 0xa3, 0x7e, 0x4d, 0xfd, 0x94, 0x5e, 0xc2, 0x47, 0x2c, 0x23, 0xbc,
-  0xd0, 0xcb, 0xfb, 0x0c, 0x45, 0x7f, 0x62, 0xcd, 0x4a, 0x46, 0x88, 0xf2,
-  0xa0, 0x8a, 0x04, 0x17, 0xad, 0xeb, 0x40, 0xad, 0x74, 0xfe, 0xa6, 0xf7,
-  0x80, 0x09, 0xd0, 0x00, 0xb8, 0xba, 0x80, 0x2a, 0xf2, 0x98, 0x69, 0x78,
-  0x19, 0x7e, 0x69, 0xa3, 0x49, 0x08, 0xb7, 0x61, 0xe3, 0x5f, 0x37, 0x20,
-  0x05, 0xd3, 0xeb, 0x51, 0xb0, 0x08, 0xa5, 0x5a, 0x28, 0x37, 0x78, 0x2a,
-  0x22, 0x34, 0xd8, 0x45, 0xb1, 0xc4, 0x67, 0x03, 0xe4, 0x3c, 0xe2, 0xa1,
-  0x29, 0x8c, 0x93, 0xef, 0xf3, 0xf9, 0x6c, 0x9a, 0x56, 0x14, 0x10, 0x18,
-  0xde, 0xad, 0x42, 0x26, 0x7c, 0x98, 0xea, 0x92, 0x7a, 0x75, 0x27, 0x47,
-  0x0b, 0x4c, 0xc5, 0xa9, 0x3e, 0x92, 0x45, 0x67, 0x37, 0x03, 0x9e, 0xf9,
-  0xbe, 0x2c, 0x4e, 0x26, 0x1f, 0x5d, 0x63, 0xdc, 0x73, 0xed, 0xb2, 0x3e,
-  0xed, 0x7d, 0x55, 0x5f, 0xc4, 0xe8, 0x51, 0xe8, 0x4f, 0xc9, 0x97, 0xd7,
-  0x8f, 0xc8, 0x84, 0xf5, 0x64, 0xc8, 0x7f, 0x3d, 0x71, 0xf9, 0x5c, 0x9e,
-  0xa2, 0xc6, 0x4a, 0x0c, 0x8b, 0xfc, 0xaf, 0x4e, 0x35, 0x6b, 0x7c, 0x1c,
-  0x6e, 0x14, 0x27, 0x4e, 0x68, 0xfa, 0xa7, 0xd0, 0x98, 0xcd, 0x9a, 0x08,
-  0x4e, 0x30, 0xc7, 0x0a, 0x71, 0x9c, 0x5d, 0x60, 0x5e, 0x62, 0x1b, 0x1d,
-  0xfa, 0xdf, 0xa8, 0x5d, 0x19, 0x3e, 0xf3, 0x2c, 0x14, 0x94, 0xcd, 0xdd,
-  0x64, 0x91, 0x17, 0xab, 0x26, 0xdb, 0x22, 0x20, 0x83, 0x46, 0x4d, 0xa5,
-  0xbc, 0x0c, 0xb1, 0x95, 0xe5, 0xc4, 0x49, 0x31, 0x0f, 0x65, 0x85, 0x58,
-  0x61, 0xe6, 0xa5, 0x19, 0x6b, 0xb5, 0x2a, 0x28, 0x88, 0x07, 0x51, 0x0a,
-  0xf3, 0x79, 0x36, 0xf7, 0xaa, 0x97, 0xc9, 0xe8, 0xe7, 0x65, 0x68, 0xfc,
-  0xa2, 0x9b, 0xce, 0xd0, 0xc7, 0xab, 0x82, 0x13, 0x74, 0x91, 0xc9, 0x8c,
-  0x32, 0x08, 0x71, 0xfe, 0xeb, 0x52, 0x05, 0x68, 0xca, 0x65, 0x10, 0xec,
-  0xc6, 0x04, 0xe3, 0x6a, 0x53, 0x91, 0x4d, 0xb4, 0x71, 0x1c, 0x89, 0x2b,
-  0x5a, 0x95, 0x48, 0xf9, 0xa4, 0x34, 0x16, 0x59, 0x08, 0x58, 0x18, 0x42,
-  0xbf, 0xc7, 0x92, 0xb2, 0xb1, 0x02, 0x37, 0x90, 0x57, 0x29, 0x82, 0xc9,
-  0x48, 0x77, 0xca, 0x6c, 0xaa, 0x92, 0x13, 0x66, 0x6c, 0x6e, 0x97, 0x1f,
-  0xcf, 0x2b, 0x00, 0x2d, 0x35, 0xf5, 0xcf, 0xeb, 0x10, 0x14, 0x8c, 0x46,
-  0xd6, 0x02, 0xea, 0xea, 0x74, 0xd4, 0xe9, 0xc9, 0xe6, 0x35, 0xb8, 0xee,
-  0x80, 0xd4, 0x47, 0xce, 0x55, 0xac, 0xca, 0xfa, 0x8e, 0x9e, 0xad, 0xe9,
-  0xe8, 0x82, 0x80, 0xe5, 0xb0, 0x84, 0x16, 0x77, 0xf3, 0x46, 0x8f, 0xad,
-  0x6d, 0x95, 0xdb, 0x79, 0xf2, 0xe8, 0x9e, 0x76, 0x28, 0x32, 0xc2, 0x50,
-  0xab, 0x24, 0x01, 0xe1, 0xf5, 0x4e, 0x13, 0x4f, 0x1f, 0x8f, 0x77, 0x1e,
-  0x9e, 0xcc, 0xe1, 0x8c, 0x2c, 0x8c, 0x20, 0xcb, 0x9f, 0xd0, 0x16, 0x4b,
-  0x8c, 0x62, 0xd9, 0xc7, 0x57, 0xd6, 0x56, 0x44, 0x02, 0xcc, 0x58, 0xeb,
-  0xb2, 0x36, 0x4b, 0x08, 0xa3, 0xfd, 0x88, 0x5c, 0x42, 0x5d, 0x0b, 0x11,
-  0xc2, 0xb6, 0xa8, 0x1e, 0x09, 0x3a, 0xe7, 0x42, 0x1f, 0x5d, 0x48, 0x2f,
-  0x89, 0x3e, 0xbb, 0xcc, 0xe8, 0x9c, 0xb3, 0xe8, 0xcc, 0xcd, 0xde, 0x03,
-  0x9b, 0x2b, 0x71, 0x2e, 0x83, 0x7a, 0x9e, 0xcd, 0x2e, 0x8d, 0x16, 0xb1,
-  0x58, 0x64, 0xd5, 0x00, 0x27, 0x84, 0x5e, 0xa6, 0xd2, 0x29, 0x2f, 0x39,
-  0xce, 0x42, 0x8d, 0x50, 0xdd, 0xc3, 0xb4, 0x6c, 0x3a, 0x05, 0x8e, 0x37,
-  0xb3, 0x4b, 0x45, 0xe8, 0xa8, 0xa6, 0x5b, 0x5a, 0x2c, 0x50, 0xc3, 0xe4,
-  0x9c, 0x34, 0x8d, 0x50, 0xbb, 0x98, 0xbe, 0x43, 0x5e, 0x27, 0x9b, 0x38,
-  0x1f, 0x85, 0x1f, 0x9c, 0xad, 0x96, 0x73, 0x06, 0x4b, 0xe4, 0x60, 0x3c,
-  0x37, 0xc4, 0x18, 0x36, 0xa9, 0xd6, 0xb2, 0xa2, 0xe5, 0x87, 0x35, 0x1e,
-  0x41, 0x40, 0x64, 0x97, 0x27, 0xc5, 0x65, 0x83, 0x2e, 0xe5, 0x05, 0xfa,
-  0x3b, 0xcf, 0x1a, 0xca, 0xbf, 0x33, 0x7a, 0x2c, 0xec, 0x65, 0xa1, 0x43,
-  0x66, 0xae, 0x2a, 0x0a, 0xbc, 0x57, 0xb9, 0x19, 0x2c, 0x8e, 0xc8, 0xf9,
-  0x1c, 0x18, 0x42, 0xc0, 0x03, 0x40, 0xae, 0x8c, 0x54, 0x97, 0x19, 0x27,
-  0xa7, 0xf3, 0x0c, 0xd5, 0x54, 0x2c, 0xac, 0x71, 0x78, 0xd4, 0x59, 0x1f,
-  0xa1, 0x34, 0xa9, 0xd0, 0xd1, 0xc5, 0x95, 0x6b, 0x0e, 0xa8, 0x18, 0x90,
-  0xf5, 0x4a, 0x2d, 0x96, 0x46, 0x10, 0x91, 0x60, 0xa4, 0x20, 0xa3, 0x94,
-  0xb6, 0x8c, 0x53, 0x96, 0x42, 0x97, 0xda, 0x3c, 0xfd, 0x70, 0xd7, 0xaa,
-  0xed, 0x88, 0xf4, 0xbb, 0x39, 0x6c, 0xc2, 0xb0, 0x4b, 0xb1, 0x7f, 0x8a,
-  0x8c, 0xdc, 0x57, 0x6c, 0xfe, 0xb9, 0x63, 0x07, 0x0e, 0xc5, 0xa2, 0x64,
-  0xb3, 0x98, 0x35, 0xa0, 0xf1, 0xe0, 0x20, 0x6c, 0x03, 0xf1, 0x05, 0xe7,
-  0xc4, 0x31, 0x59, 0x72, 0xcc, 0x28, 0x4c, 0x57, 0xe4, 0xea, 0x73, 0x6a,
-  0xbe, 0xb7, 0xe4, 0x47, 0x72, 0x99, 0x86, 0xab, 0x8a, 0x33, 0x85, 0x0c,
-  0x57, 0x0a, 0x28, 0x14, 0x9b, 0xac, 0x46, 0x32, 0xba, 0xc4, 0x4b, 0x8a,
-  0xfb, 0x01, 0x37, 0x10, 0x0f, 0xac, 0x16, 0x10, 0x96, 0x16, 0x25, 0xcb,
-  0x42, 0x4b, 0x70, 0xc7, 0x5c, 0x05, 0x8a, 0x7b, 0x51, 0xad, 0x32, 0x09,
-  0xf0, 0x4e, 0xfd, 0x79, 0x92, 0x83, 0xe7, 0x7f, 0x19, 0xe6, 0xbd, 0xa4,
-  0x78, 0xe5, 0xcf, 0xc5, 0xb6, 0x19, 0x43, 0x53, 0xd5, 0xd2, 0x7e, 0xa8,
-  0xc5, 0x67, 0x96, 0xe3, 0x7b, 0x0a, 0x14, 0x37, 0x77, 0x19, 0x45, 0x03,
-  0x5d, 0x12, 0x84, 0x3f, 0xdb, 0x3d, 0xcc, 0x34, 0xea, 0x4c, 0x08, 0x1f,
-  0x16, 0x03, 0x19, 0x6d, 0xa7, 0x39, 0x20, 0xdb, 0xd8, 0x91, 0xd0, 0xc1,
-  0x2b, 0x17, 0xe7, 0x1a, 0xe9, 0xdc, 0x05, 0xc3, 0x1a, 0x0a, 0x96, 0xcc,
-  0x9d, 0xa4, 0x34, 0x86, 0xcc, 0x0b, 0x47, 0x2c, 0xeb, 0x1e, 0xb0, 0x07,
-  0x15, 0xea, 0x23, 0x70, 0x2b, 0x72, 0x69, 0x13, 0xab, 0x52, 0x3b, 0x93,
-  0xa7, 0xd4, 0x8a, 0x8d, 0x37, 0x3c, 0x56, 0xd4, 0x55, 0x6d, 0x5f, 0xa2,
-  0x56, 0x86, 0x41, 0xe9, 0x52, 0x6c, 0xa0, 0x4b, 0x56, 0x1d, 0xdb, 0x32,
-  0x59, 0xc1, 0x0d, 0x8a, 0x95, 0xcf, 0x2f, 0x6c, 0x1d, 0x75, 0x8a, 0x31,
-  0x84, 0xc4, 0xfb, 0x68, 0xe7, 0x11, 0x04, 0x0e, 0xf3, 0xe2, 0x8a, 0x3c,
-  0xf0, 0x1a, 0xa8, 0x4b, 0x21, 0x88, 0xe4, 0xcd, 0x31, 0xed, 0xce, 0xef,
-  0xc2, 0x4c, 0x49, 0xac, 0x09, 0x1b, 0xe5, 0x0a, 0x15, 0x56, 0x84, 0x1e,
-  0x6c, 0xe9, 0x25, 0x36, 0x98, 0x0b, 0xd3, 0x75, 0x2c, 0x39, 0x82, 0x33,
-  0x6d, 0x17, 0xac, 0x52, 0xbe, 0x4e, 0xfe, 0xdd, 0x70, 0xb9, 0x6a, 0x5d,
-  0xaf, 0x99, 0x20, 0xce, 0x62, 0x25, 0x82, 0xcb, 0x26, 0x27, 0x3f, 0x1a,
-  0xdb, 0x8f, 0xf8, 0xfa, 0x18, 0xca, 0xf1, 0x4c, 0x3d, 0xa3, 0x91, 0x9a,
-  0xf9, 0x16, 0xb8, 0xbb, 0x1e, 0xdd, 0x3a, 0x6b, 0x43, 0x90, 0x4b, 0x8b,
-  0x7e, 0x95, 0xf9, 0x9a, 0x05, 0xeb, 0xb8, 0x98, 0x4a, 0x37, 0x6a, 0xce,
-  0x5b, 0xb3, 0x23, 0xe6, 0x57, 0x63, 0xee, 0x1b, 0x6f, 0x06, 0xfe, 0x30,
-  0x93, 0x4d, 0x8c, 0x03, 0xbb, 0xf0, 0xf8, 0xf6, 0x76, 0x4b, 0xab, 0x6a,
-  0x83, 0x76, 0x85, 0x8d, 0x8c, 0x2e, 0x42, 0xa9, 0x17, 0xe7, 0x7d, 0x2d,
-  0xf8, 0xe8, 0x6e, 0x1b, 0x11, 0x90, 0xaf, 0x56, 0x44, 0x59, 0x1b, 0x91,
-  0x00, 0x5b, 0xd2, 0x55, 0xb9, 0x8b, 0x8e, 0xc7, 0x4a, 0x54, 0x4a, 0xdc,
-  0x4e, 0xfc, 0x31, 0xe0, 0xe0, 0x54, 0x49, 0x3c, 0x02, 0xa8, 0xc2, 0xdb,
-  0xa3, 0xaf, 0xde, 0x4d, 0x8e, 0x5e, 0x26, 0x69, 0x04, 0x20, 0x98, 0x68,
-  0x95, 0x77, 0x84, 0x8f, 0x82, 0x69, 0xb4, 0x64, 0x59, 0x4a, 0xef, 0xe3,
-  0xb5, 0x57, 0x77, 0xec, 0xfa, 0xea, 0xbb, 0xc8, 0xd7, 0xe0, 0x20, 0xf2,
-  0xac, 0x67, 0x19, 0xea, 0x1d, 0x3f, 0xe7, 0x08, 0xe7, 0x00, 0x72, 0xda,
-  0x55, 0x46, 0x36, 0x77, 0x7f, 0xb6, 0x14, 0x10, 0x92, 0x85, 0x39, 0x1a,
-  0xec, 0x59, 0x86, 0x64, 0xaf, 0xdc, 0x98, 0xbc, 0xf7, 0x7a, 0xbf, 0x70,
-  0xec, 0x55, 0xda, 0x53, 0x9c, 0x97, 0xc0, 0xa7, 0xf5, 0x12, 0x52, 0x19,
-  0xdc, 0x2d, 0x0b, 0xaf, 0xca, 0x66, 0xde, 0x74, 0xa2, 0x10, 0x82, 0x42,
-  0xe5, 0xc4, 0x5c, 0x00, 0x18, 0x8a, 0xbb, 0x98, 0x06, 0x93, 0xce, 0x2f,
-  0x4b, 0xc3, 0xbe, 0xaf, 0x16, 0x16, 0x37, 0x85, 0xe1, 0xe5, 0xea, 0xad,
-  0x71, 0x28, 0xd5, 0x44, 0x35, 0x08, 0x8a, 0x22, 0xcc, 0x18, 0x53, 0x0a,
-  0x5a, 0x95, 0x3b, 0xac, 0x14, 0x61, 0xc5, 0x26, 0x81, 0x89, 0xa0, 0x40,
-  0xd1, 0x7a, 0xf0, 0x12, 0x06, 0x22, 0x3f, 0x0a, 0x39, 0x76, 0x3d, 0x62,
-  0x6a, 0xf6, 0x54, 0xc6, 0xe8, 0x8f, 0xfd, 0x8f, 0x2c, 0x90, 0xbd, 0xbb,
-  0x17, 0x13, 0x2e, 0x17, 0xe9, 0x2d, 0x79, 0xf9, 0x7a, 0xc9, 0x81, 0x7d,
-  0xde, 0xaa, 0xd3, 0x55, 0xac, 0x31, 0x93, 0x7e, 0xea, 0xf2, 0xef, 0x39,
-  0xe6, 0xdc, 0xee, 0xb4, 0xc8, 0x1e, 0xe4, 0xb3, 0x08, 0xa3, 0xb7, 0xc0,
-  0x70, 0xc5, 0x70, 0x7c, 0x9e, 0xb1, 0xab, 0x35, 0xc5, 0x34, 0x61, 0x00,
-  0xdf, 0xe4, 0x6a, 0xbd, 0xd4, 0xdf, 0x16, 0x3e, 0x26, 0x5d, 0x4e, 0x1c,
-  0x99, 0xd4, 0x7f, 0x08, 0x68, 0x8e, 0x1b, 0xb1, 0x02, 0x21, 0xaa, 0x33,
-  0x80, 0xdd, 0xea, 0x54, 0x1f, 0x94, 0xc0, 0x2b, 0xf2, 0xa9, 0x5e, 0x30,
-  0x17, 0xae, 0x1d, 0x79, 0x33, 0x60, 0xe9, 0xdc, 0x8e, 0x16, 0xa2, 0x34,
-  0x4d, 0x0c, 0xdb, 0x75, 0x67, 0x64, 0xb1, 0x09, 0x2e, 0x06, 0x2c, 0x8a,
-  0xeb, 0x53, 0x0b, 0x66, 0x57, 0xc4, 0xd2, 0x35, 0xd4, 0xaa, 0xbf, 0x04,
-  0xb0, 0x80, 0xe9, 0xb0, 0xd8, 0x51, 0xf8, 0x63, 0xa5, 0x0d, 0x30, 0x6d,
-  0xe4, 0xe5, 0x8c, 0xa0, 0x19, 0xb8, 0xb6, 0x69, 0x1f, 0x9c, 0xa5, 0x8c,
-  0x65, 0x03, 0xce, 0xde, 0xdb, 0x7c, 0xb1, 0x5a, 0xd0, 0xfb, 0x43, 0x86,
-  0x63, 0x59, 0x40, 0xe9, 0xd7, 0x4d, 0xa5, 0xcc, 0x11, 0x5b, 0x49, 0x39,
-  0xe6, 0x08, 0x02, 0x6f, 0x23, 0xa2, 0x6d, 0x58, 0x52, 0x56, 0x15, 0x54,
-  0x4e, 0xd0, 0x7f, 0x39, 0x7d, 0x26, 0xcf, 0x8b, 0xd5, 0xe2, 0xf3, 0x70,
-  0x10, 0x21, 0xeb, 0x20, 0xba, 0x94, 0x98, 0x7f, 0x67, 0x81, 0x17, 0x72,
-  0x23, 0x50, 0x4d, 0xde, 0xa3, 0x7e, 0x0e, 0x35, 0xe4, 0xc0, 0x51, 0xef,
-  0x0a, 0xa6, 0xa9, 0x3a, 0xff, 0x39, 0x6b, 0x7c, 0x42, 0xf7, 0x97, 0xac,
-  0x71, 0xac, 0x96, 0xe3, 0x20, 0x30, 0xb3, 0xb1, 0x65, 0x0f, 0xe5, 0x5d,
-  0xd3, 0xfd, 0x8e, 0x84, 0x15, 0x8b, 0x5f, 0x00, 0x21, 0x07, 0xb2, 0xc6,
-  0xd6, 0x05, 0x28, 0xf5, 0xe7, 0x82, 0x88, 0x2a, 0x62, 0x1b, 0xc4, 0xcb,
-  0x82, 0x4b, 0x84, 0xed, 0x7a, 0x0c, 0xcf, 0x7a, 0x80, 0x45, 0xe1, 0xed,
-  0x1b, 0x2a, 0x18, 0x88, 0xb9, 0x48, 0x43, 0xa3, 0x84, 0x27, 0x77, 0x95,
-  0x0e, 0x5f, 0xee, 0xd1, 0xce, 0xa7, 0xc3, 0xe4, 0xd1, 0xde, 0xb3, 0x21,
-  0x92, 0x57, 0xf0, 0x63, 0x0f, 0x3f, 0xf6, 0xf1, 0xc8, 0x63, 0x23, 0x1e,
-  0xad, 0x11, 0x0b, 0xc6, 0x51, 0x70, 0x7d, 0x07, 0x1a, 0x9d, 0x9e, 0x97,
-  0x2b, 0x4f, 0x42, 0x48, 0xbd, 0x05, 0xd7, 0x60, 0x0d, 0x66, 0x20, 0x37,
-  0x69, 0x4e, 0x24, 0x13, 0xc4, 0x8f, 0x52, 0x26, 0x8e, 0x88, 0x65, 0x2e,
-  0x16, 0x8d, 0x2a, 0xc5, 0x1b, 0xc1, 0x00, 0x8b, 0xad, 0x6b, 0xa9, 0x0d,
-  0x9a, 0x25, 0x5e, 0x71, 0x8c, 0x4b, 0xb0, 0xa0, 0xe8, 0x85, 0x4d, 0xd0,
-  0x38, 0x75, 0xe6, 0x56, 0xcb, 0xe7, 0xac, 0x4b, 0xe0, 0xe8, 0xd7, 0xc9,
-  0xee, 0x8e, 0x58, 0xa1, 0x6a, 0xbf, 0xb2, 0x8d, 0x05, 0xca, 0x8c, 0xec,
-  0xcf, 0x9c, 0x34, 0x58, 0x45, 0xec, 0xa2, 0xdc, 0x10, 0x2f, 0x06, 0x8b,
-  0xcf, 0x11, 0x9b, 0x3c, 0xc5, 0xf5, 0xdf, 0xba, 0x87, 0x23, 0x8e, 0x38,
-  0x5b, 0xae, 0x59, 0x4d, 0x5f, 0xd9, 0xad, 0x59, 0x7b, 0xc6, 0x7d, 0x4d,
-  0xec, 0xfd, 0xe1, 0xee, 0xbd, 0xb1, 0x57, 0xed, 0x2e, 0x12, 0x5e, 0xdd,
-  0x62, 0xf3, 0xb6, 0x72, 0x32, 0x71, 0xc2, 0xb2, 0x91, 0x43, 0x6b, 0x2b,
-  0x5e, 0xb3, 0xd5, 0x25, 0x7e, 0xf8, 0xb9, 0x68, 0xb5, 0x20, 0x6c, 0x3e,
-  0x79, 0x62, 0xd1, 0x8b, 0x38, 0x87, 0xc7, 0xe8, 0xa0, 0x9a, 0x75, 0xc0,
-  0xec, 0x93, 0xcc, 0x13, 0xa3, 0x17, 0x30, 0xf9, 0x1d, 0xc4, 0x5c, 0x98,
-  0x2a, 0x1f, 0x4a, 0xf0, 0xb9, 0xe1, 0xce, 0xc4, 0x2e, 0x28, 0x1c, 0x22,
-  0xd3, 0x82, 0x46, 0x28, 0x75, 0xc4, 0xe7, 0xd9, 0xc6, 0x37, 0xd0, 0xc1,
-  0xca, 0x6e, 0x43, 0xde, 0x1d, 0x13, 0x86, 0xfe, 0x40, 0x86, 0x55, 0xa7,
-  0x0c, 0x98, 0x7f, 0xf5, 0x4b, 0x3e, 0x4b, 0x9e, 0x6b, 0xd5, 0x87, 0x38,
-  0xec, 0x1c, 0x8e, 0x85, 0x79, 0xd2, 0xec, 0x5f, 0xcd, 0x0a, 0x99, 0x3e,
-  0x9e, 0x6c, 0x4a, 0x0b, 0x5b, 0x43, 0xa3, 0x6c, 0x91, 0xe7, 0x73, 0xf2,
-  0x62, 0x72, 0x9c, 0x9c, 0x1e, 0xbf, 0x78, 0xf5, 0xc6, 0xbc, 0x33, 0x0a,
-  0x1d, 0x02, 0x16, 0x6d, 0x99, 0xb0, 0xfa, 0x02, 0xb1, 0xb5, 0x83, 0xc8,
-  0xdc, 0xee, 0x28, 0x04, 0x64, 0x9d, 0xd1, 0xbd, 0xdb, 0x4a, 0x42, 0x1d,
-  0xad, 0x34, 0xc2, 0xbc, 0x2f, 0xb6, 0xda, 0xae, 0xae, 0x86, 0x25, 0x4b,
-  0xde, 0x8f, 0x17, 0xd8, 0x25, 0xc7, 0xd2, 0x5c, 0x72, 0xd6, 0x24, 0x1a,
-  0x9b, 0x0d, 0xd6, 0xce, 0x05, 0xcc, 0xd1, 0xe0, 0xcd, 0x98, 0x58, 0x73,
-  0x31, 0x14, 0xe2, 0xb5, 0x4d, 0xd8, 0xd4, 0x9d, 0xbc, 0xa2, 0x68, 0xe4,
-  0x79, 0x42, 0xe9, 0x33, 0xc8, 0xc5, 0x91, 0x55, 0x92, 0x1b, 0xd9, 0x4b,
-  0xce, 0x14, 0x94, 0x0f, 0x6b, 0x10, 0x27, 0x4c, 0x80, 0x8d, 0x3a, 0xb8,
-  0xce, 0xcf, 0xcb, 0xdb, 0xa1, 0xb3, 0x4a, 0x73, 0x10, 0x87, 0x48, 0xb6,
-  0x14, 0x53, 0x7a, 0x69, 0x38, 0x1b, 0xe1, 0xe8, 0x0a, 0x6a, 0x48, 0xc9,
-  0x05, 0x4f, 0x50, 0xc7, 0x24, 0xcc, 0x1c, 0x5d, 0x18, 0x51, 0xd8, 0x34,
-  0xe8, 0xfb, 0xa0, 0xd7, 0x91, 0x1b, 0x0e, 0x5c, 0x40, 0x6e, 0x79, 0x57,
-  0x20, 0x3a, 0xa2, 0xac, 0x26, 0x9b, 0x93, 0xe0, 0xf2, 0xd6, 0x0a, 0xa6,
-  0xa3, 0x36, 0x35, 0xac, 0xad, 0x65, 0xd5, 0xd1, 0x98, 0x7e, 0xaf, 0x82,
-  0x1b, 0x5c, 0x00, 0x29, 0x18, 0xc9, 0x11, 0xaf, 0x48, 0x7d, 0x40, 0x9d,
-  0xbb, 0xb2, 0x3e, 0xc1, 0x50, 0x18, 0x94, 0x98, 0x92, 0xda, 0xd9, 0x9e,
-  0x9e, 0xc4, 0xb0, 0x6d, 0xe9, 0x99, 0x6d, 0x49, 0x45, 0xb8, 0x2f, 0xa2,
-  0x97, 0xab, 0x78, 0xe8, 0xcc, 0x27, 0xa0, 0xfe, 0xfa, 0xaa, 0xbc, 0x19,
-  0xc5, 0x30, 0x78, 0x6d, 0x3c, 0x9c, 0x28, 0x65, 0x35, 0x3d, 0x8d, 0xc4,
-  0x84, 0x46, 0x28, 0xcd, 0x5e, 0xfb, 0x68, 0xc3, 0xc5, 0xf7, 0xa3, 0x96,
-  0x5c, 0x58, 0x79, 0x8e, 0x43, 0x3e, 0x09, 0x98, 0x68, 0x5d, 0xb1, 0xa3,
-  0xa2, 0x04, 0x7e, 0xde, 0x25, 0xe1, 0xee, 0x2d, 0xb2, 0xa6, 0x95, 0xe4,
-  0xe1, 0x8d, 0x20, 0x60, 0xe0, 0x73, 0x49, 0x81, 0xfa, 0xc7, 0x2a, 0xcf,
-  0x08, 0x1a, 0x21, 0x83, 0x91, 0x94, 0x4e, 0x2d, 0x06, 0xa7, 0x6d, 0x26,
-  0xd4, 0x26, 0x9b, 0xe7, 0xac, 0xa8, 0x11, 0x38, 0x72, 0x31, 0x7c, 0x5c,
-  0x6d, 0xa4, 0x32, 0x9a, 0xd3, 0x73, 0x88, 0x49, 0x2e, 0xcc, 0xd5, 0x49,
-  0x3e, 0x47, 0x0f, 0x4a, 0x5c, 0x83, 0x9d, 0x35, 0x35, 0x9a, 0x92, 0xec,
-  0xea, 0x0f, 0x61, 0xea, 0xf3, 0xb0, 0x55, 0x44, 0x9b, 0xbc, 0x5c, 0xc2,
-  0xc5, 0x1a, 0x14, 0x65, 0x2f, 0xd2, 0xf9, 0x76, 0xdd, 0xcc, 0x20, 0x4e,
-  0xac, 0x8a, 0x39, 0xc6, 0x89, 0x96, 0xd4, 0xc6, 0xd5, 0x5d, 0xc9, 0x26,
-  0x86, 0x0b, 0xcb, 0xfb, 0xd9, 0xda, 0x50, 0xae, 0x89, 0x67, 0xd9, 0xa6,
-  0x14, 0x49, 0xf4, 0x72, 0x5f, 0x6c, 0xec, 0x79, 0x88, 0xff, 0xeb, 0xaf,
-  0x16, 0x58, 0x14, 0xcf, 0x97, 0xd6, 0xb2, 0xb5, 0xcb, 0xeb, 0x36, 0xf3,
-  0x1a, 0xfb, 0x65, 0xc8, 0xf2, 0xbc, 0xac, 0x29, 0x83, 0xc8, 0xcc, 0xd0,
-  0xbc, 0x2b, 0xf5, 0xab, 0xd6, 0x6d, 0xf4, 0x88, 0x21, 0xb8, 0x3f, 0x12,
-  0xe5, 0x94, 0xd0, 0xb6, 0x1f, 0x79, 0x18, 0xa7, 0x4d, 0xc7, 0x21, 0xed,
-  0x23, 0x3a, 0x8f, 0xc2, 0x6c, 0xd3, 0x99, 0xc8, 0xc9, 0x1c, 0xb4, 0x1a,
-  0xc1, 0x38, 0x95, 0x42, 0x7e, 0x8c, 0xac, 0x58, 0xc2, 0xe1, 0x94, 0x50,
-  0x65, 0x8b, 0x3e, 0xac, 0x4e, 0xf5, 0x93, 0x59, 0xf7, 0x62, 0x0b, 0xfc,
-  0xdf, 0x96, 0xf5, 0x50, 0x67, 0x56, 0xe2, 0xf6, 0x28, 0x8b, 0x01, 0x32,
-  0xdf, 0xe3, 0xd8, 0x70, 0x30, 0xd2, 0xf0, 0x9a, 0xd8, 0x5c, 0x32, 0x49,
-  0x10, 0x69, 0xa1, 0x8d, 0x0a, 0x28, 0x7e, 0xc4, 0x4c, 0x6b, 0x88, 0x7c,
-  0x25, 0xf0, 0x8c, 0xd3, 0xb9, 0x91, 0xea, 0x22, 0x6e, 0x9d, 0x89, 0x60,
-  0x73, 0x03, 0x89, 0x7c, 0xd8, 0x95, 0x41, 0xea, 0x15, 0xb4, 0x91, 0xf9,
-  0x0a, 0x3d, 0x3b, 0xc3, 0x2b, 0x81, 0x48, 0x2b, 0x96, 0x5c, 0x14, 0x78,
-  0xdd, 0xa2, 0x40, 0x83, 0xd3, 0x78, 0x18, 0xf4, 0x5a, 0x56, 0xc5, 0xc2,
-  0xb3, 0x77, 0x61, 0x7a, 0xc7, 0x3d, 0xa3, 0x83, 0x81, 0x88, 0x9b, 0xc9,
-  0xa4, 0xc6, 0x85, 0xe7, 0xe6, 0x02, 0x6a, 0x81, 0x0e, 0x47, 0x40, 0xda,
-  0x05, 0xd6, 0x34, 0x06, 0xac, 0x6d, 0x03, 0x6d, 0x5b, 0x23, 0x53, 0x81,
-  0x4b, 0x71, 0xdb, 0x28, 0x5b, 0x97, 0x81, 0xd8, 0x95, 0x04, 0x93, 0x57,
-  0x45, 0x10, 0x3e, 0x06, 0x33, 0x23, 0x17, 0x9d, 0x27, 0x12, 0x61, 0xfd,
-  0x40, 0x30, 0x11, 0x6a, 0xe5, 0x09, 0xad, 0x21, 0xa9, 0x76, 0x10, 0xc9,
-  0xfb, 0xe4, 0x97, 0x36, 0x15, 0x27, 0x95, 0x5e, 0xdb, 0x6a, 0x85, 0x59,
-  0x95, 0xad, 0x22, 0x40, 0x7f, 0xa8, 0x10, 0xf9, 0xb8, 0x5d, 0x52, 0x5d,
-  0x50, 0xf5, 0x7f, 0xd5, 0x99, 0x4e, 0x1f, 0x76, 0xa8, 0x7b, 0x72, 0xb4,
-  0xef, 0x39, 0xd4, 0x0c, 0x77, 0x5d, 0x7f, 0xa8, 0xdb, 0xe5, 0x65, 0x7b,
-  0xbc, 0x9c, 0xed, 0xc3, 0xfc, 0x40, 0x5c, 0xf7, 0x7b, 0x0f, 0x24, 0x99,
-  0x56, 0xff, 0x9b, 0x1d, 0xc9, 0xf4, 0x61, 0x67, 0x32, 0x6d, 0x1d, 0x4a,
-  0x4c, 0x33, 0x64, 0xad, 0xb7, 0xbd, 0x23, 0xfe, 0xbf, 0xc7, 0xf4, 0xbf,
-  0xfa, 0x98, 0x7e, 0xda, 0x11, 0x86, 0xa9, 0xc6, 0x05, 0x17, 0xdb, 0xbc,
-  0xb7, 0x8a, 0x26, 0x94, 0x04, 0x1c, 0x83, 0x6d, 0x0b, 0x47, 0x1f, 0xab,
-  0xfb, 0xad, 0xf0, 0xc9, 0xd1, 0x68, 0xb9, 0x52, 0xb7, 0xf6, 0xb1, 0xdd,
-  0x0e, 0x05, 0x37, 0x5b, 0xdb, 0x72, 0x60, 0xf0, 0xd6, 0x2a, 0x3f, 0xce,
-  0x2f, 0x3f, 0x4e, 0xa4, 0x26, 0xa7, 0xcc, 0xe9, 0xd2, 0x08, 0x2c, 0xcb,
-  0x9c, 0x6e, 0x58, 0x23, 0x91, 0x19, 0xf2, 0x4b, 0xbe, 0x9e, 0x4c, 0x46,
-  0x2f, 0x4e, 0x5f, 0x25, 0xf7, 0xa8, 0x9f, 0x84, 0xe8, 0xe9, 0xc6, 0x18,
-  0xb3, 0x20, 0xf4, 0x87, 0xfd, 0xb7, 0x7b, 0x37, 0xf2, 0x7e, 0x77, 0x59,
-  0x5f, 0xd4, 0x49, 0x2b, 0xbb, 0x4d, 0x07, 0x65, 0x8b, 0x38, 0x42, 0xe9,
-  0xd0, 0xca, 0x39, 0x94, 0x61, 0x0a, 0x03, 0x17, 0xd8, 0x1e, 0x3d, 0x10,
-  0xb8, 0xd8, 0x09, 0x1b, 0x15, 0xb8, 0xa6, 0xbb, 0xcf, 0x9e, 0xec, 0x9a,
-  0x53, 0x71, 0xc7, 0x9e, 0x7a, 0x79, 0xf9, 0xd1, 0x78, 0x7f, 0xfb, 0xd1,
-  0xf8, 0x11, 0x78, 0xa2, 0xc4, 0xe7, 0x51, 0xde, 0x94, 0x34, 0x1f, 0xf7,
-  0x7b, 0xb3, 0x98, 0xf2, 0xe6, 0xe8, 0x30, 0xe1, 0x8c, 0x29, 0x82, 0x72,
-  0xef, 0x28, 0x9f, 0x9c, 0x51, 0x41, 0x21, 0xd3, 0xb2, 0x85, 0x4c, 0xac,
-  0x81, 0xd9, 0x26, 0x58, 0x0e, 0xd5, 0xa8, 0x08, 0xfc, 0xae, 0xb0, 0x03,
-  0x01, 0xbb, 0x63, 0xe5, 0x4a, 0xd6, 0x05, 0x63, 0x0c, 0x81, 0x0f, 0xbc,
-  0x25, 0xf1, 0x16, 0xec, 0x9e, 0xac, 0xc6, 0x47, 0xfd, 0xfb, 0xa3, 0x5a,
-  0x5c, 0x8f, 0x1e, 0xe8, 0xbc, 0x1d, 0x81, 0xba, 0x27, 0x0c, 0xd1, 0xea,
-  0xe6, 0x75, 0x52, 0x4d, 0x17, 0x56, 0x33, 0xbb, 0xf8, 0xc7, 0xac, 0x18,
-  0x7f, 0xac, 0x5a, 0x19, 0x91, 0xf4, 0x3d, 0xed, 0x51, 0x87, 0x2e, 0x8c,
-  0x4c, 0x94, 0xc6, 0xbe, 0x09, 0x89, 0xa6, 0xd8, 0xb5, 0x19, 0x32, 0x09,
-  0xe0, 0x30, 0xb3, 0x22, 0xe9, 0x35, 0x65, 0xdb, 0x8f, 0x7c, 0xa6, 0xad,
-  0x47, 0xec, 0x12, 0xe8, 0x8c, 0xdb, 0xaa, 0xb2, 0x74, 0x2e, 0xa3, 0xf2,
-  0xfa, 0x09, 0xbf, 0xc4, 0xea, 0x71, 0x44, 0x5a, 0x98, 0x06, 0x24, 0x8e,
-  0x18, 0x6f, 0x08, 0xd6, 0xc3, 0xeb, 0x6a, 0x83, 0x2e, 0x2b, 0x73, 0x9d,
-  0xe4, 0x4b, 0xc3, 0x0a, 0x1f, 0x90, 0xd2, 0xda, 0xbf, 0xf9, 0x51, 0x7e,
-  0x27, 0xe6, 0x5e, 0x2d, 0x4f, 0xab, 0xa7, 0x73, 0x0d, 0xa3, 0x93, 0x50,
-  0xf7, 0xee, 0xad, 0x1a, 0xe1, 0x72, 0x3d, 0x8d, 0x01, 0x49, 0xcc, 0x71,
-  0x33, 0xa5, 0xb8, 0x6e, 0xc0, 0xb6, 0x51, 0xa8, 0x2d, 0xa8, 0x3d, 0x6c,
-  0x94, 0xce, 0xfd, 0xa8, 0xcd, 0x0a, 0xd4, 0xca, 0x56, 0x97, 0x11, 0xc6,
-  0x98, 0x7b, 0x53, 0x0a, 0x53, 0xbc, 0x97, 0xf3, 0xfe, 0x16, 0xcc, 0x10,
-  0x02, 0x14, 0x9b, 0x5b, 0x3e, 0x5e, 0x1a, 0x94, 0x25, 0x4c, 0x36, 0x29,
-  0xf2, 0x58, 0xa0, 0x69, 0xb4, 0xd6, 0x83, 0x1f, 0x9a, 0x18, 0x8b, 0xe1,
-  0x25, 0x02, 0xc1, 0x82, 0xdc, 0xa3, 0x1e, 0x46, 0xea, 0x5d, 0x04, 0x7c,
-  0x76, 0x6d, 0xf5, 0x8b, 0xff, 0x53, 0xc4, 0xc0, 0xc7, 0x89, 0xdd, 0xab,
-  0x87, 0x88, 0x83, 0x5c, 0x1d, 0x8b, 0xc4, 0xc1, 0xc0, 0x02, 0xeb, 0xe9,
-  0x6c, 0xff, 0x57, 0x1a, 0xfc, 0xdf, 0x49, 0x1a, 0xfc, 0x67, 0x4e, 0xe9,
-  0x48, 0xf2, 0xe8, 0x3a, 0xca, 0x93, 0xa4, 0x3f, 0x47, 0xf3, 0x5c, 0xe7,
-  0x77, 0xe3, 0xa4, 0xa7, 0x44, 0xcd, 0x3d, 0x47, 0x34, 0x24, 0x85, 0xff,
-  0x7f, 0x1c, 0xd1, 0x07, 0x9d, 0xcc, 0xff, 0x1a, 0xe3, 0x09, 0x1f, 0xc4,
-  0x8f, 0x3a, 0x89, 0xaa, 0xeb, 0xff, 0x1f, 0x7f, 0x0e, 0xd7, 0x58, 0xf3,
-  0x36, 0x11, 0xba, 0x89, 0xd8, 0x5a, 0x2e, 0x58, 0x4d, 0x9a, 0xf6, 0x96,
-  0x13, 0x7d, 0x80, 0x02, 0xc1, 0x4b, 0xf7, 0xea, 0xf4, 0xbb, 0x27, 0x84,
-  0x4a, 0x39, 0x09, 0x71, 0xff, 0x8e, 0x5f, 0xbe, 0x38, 0xfd, 0x88, 0xd3,
-  0xfe, 0x37, 0xb2, 0xd1, 0x2e, 0xb3, 0x6c, 0x36, 0x62, 0x4f, 0xea, 0x73,
-  0xfa, 0x23, 0x1a, 0xa4, 0xa0, 0xa0, 0x6e, 0x44, 0xb6, 0x70, 0xb0, 0x86,
-  0xb1, 0x1f, 0xf4, 0xb2, 0x11, 0x53, 0x0a, 0xc1, 0x80, 0x44, 0xe8, 0x7c,
-  0x1d, 0x1a, 0x69, 0xca, 0x62, 0xb6, 0x25, 0x22, 0x20, 0xf7, 0x4d, 0xa4,
-  0x22, 0x31, 0x3b, 0x38, 0xde, 0x97, 0x00, 0x3d, 0xb6, 0x45, 0x1f, 0xbc,
-  0x67, 0x38, 0xf9, 0x23, 0x1a, 0x40, 0x76, 0xe7, 0xa6, 0xc2, 0x4e, 0x60,
-  0x86, 0xc8, 0xde, 0xdf, 0x81, 0x1b, 0x82, 0x38, 0x48, 0xd6, 0xfc, 0x8e,
-  0x20, 0x6f, 0xdd, 0xee, 0xfb, 0x42, 0x90, 0xd6, 0x2e, 0xa5, 0xbf, 0x13,
-  0xad, 0x15, 0x44, 0xcc, 0x00, 0x7b, 0x50, 0xbb, 0x3c, 0xc8, 0x5f, 0x1d,
-  0x8e, 0xba, 0xe1, 0xf1, 0xda, 0x2e, 0xda, 0x6b, 0xf9, 0xea, 0xa2, 0xbd,
-  0x9c, 0x91, 0x84, 0xb1, 0x61, 0x2b, 0xc2, 0xcb, 0x1f, 0x92, 0x4e, 0x3d,
-  0xd9, 0x4d, 0xd4, 0x67, 0xc1, 0x50, 0x66, 0x82, 0xa0, 0xf6, 0xb7, 0x30,
-  0x94, 0xd1, 0x7b, 0xfd, 0x1e, 0x5b, 0x36, 0xc0, 0x6a, 0x2b, 0x2a, 0x13,
-  0xe9, 0xc7, 0x6f, 0xd3, 0x61, 0x5e, 0xd5, 0x2e, 0xf8, 0x36, 0xa5, 0xc4,
-  0x54, 0x5a, 0xb5, 0x40, 0xd8, 0x10, 0xa6, 0x90, 0x35, 0xd3, 0xb1, 0xdd,
-  0x59, 0x42, 0x49, 0x9f, 0x22, 0x2d, 0xa5, 0xe2, 0x68, 0x0b, 0xc3, 0x5f,
-  0x87, 0x94, 0xe3, 0xa2, 0x05, 0xb6, 0x7b, 0x6c, 0x15, 0x1a, 0x3d, 0xf4,
-  0xfb, 0x97, 0xd8, 0xa6, 0xda, 0xf4, 0xd0, 0x05, 0x47, 0xe7, 0x59, 0x1a,
-  0xe4, 0x83, 0x85, 0xc8, 0x65, 0x6a, 0x8e, 0xb1, 0x5c, 0x21, 0xad, 0x38,
-  0xd6, 0x17, 0x94, 0x62, 0x88, 0xa4, 0xb9, 0x43, 0x24, 0xfc, 0x8d, 0xe0,
-  0x2f, 0x74, 0xf9, 0xfd, 0xe4, 0x78, 0x9f, 0x96, 0xf5, 0xec, 0x78, 0xe2,
-  0x97, 0x40, 0xab, 0x29, 0x3a, 0x81, 0x60, 0x37, 0xbe, 0x3c, 0x7a, 0x31,
-  0x39, 0x1b, 0x07, 0x53, 0x64, 0x8f, 0x78, 0x94, 0x60, 0x98, 0x09, 0x4f,
-  0x8e, 0xcd, 0x5c, 0xef, 0x80, 0xd1, 0x2f, 0x70, 0x1e, 0x18, 0x1c, 0x8f,
-  0x4d, 0x5b, 0x87, 0x9e, 0x9b, 0x72, 0x36, 0x69, 0x93, 0x55, 0x61, 0x18,
-  0x97, 0x59, 0x3b, 0x09, 0xfc, 0xb7, 0x29, 0x07, 0x44, 0x5b, 0x14, 0x3c,
-  0x5c, 0xce, 0x11, 0x5a, 0x81, 0x6e, 0xda, 0x76, 0x08, 0xe4, 0xc0, 0x09,
-  0x62, 0x56, 0x3f, 0xfe, 0x8d, 0x91, 0x3b, 0x4a, 0xa4, 0x55, 0xd9, 0xa1,
-  0xea, 0x5a, 0xb1, 0xf3, 0xdd, 0xab, 0xba, 0x0e, 0x58, 0x4d, 0x60, 0x07,
-  0x86, 0x19, 0x86, 0x69, 0xfd, 0x41, 0x1d, 0xdc, 0xd3, 0x86, 0x90, 0x8a,
-  0xd2, 0xb5, 0x05, 0xb4, 0xf7, 0xba, 0x9a, 0x10, 0xc7, 0x54, 0x94, 0xa3,
-  0xe9, 0x1c, 0x91, 0x4f, 0x23, 0x94, 0xad, 0x8c, 0x28, 0xa0, 0x7e, 0xa1,
-  0xa9, 0x36, 0x82, 0x16, 0x65, 0x72, 0x33, 0x6b, 0xe3, 0x5c, 0xd2, 0x84,
-  0x5b, 0x4a, 0xa8, 0x02, 0xa6, 0x11, 0x8f, 0x42, 0xd1, 0xaa, 0x11, 0x65,
-  0xbb, 0xad, 0xd1, 0x0d, 0x59, 0x7b, 0x95, 0xe8, 0x3b, 0x07, 0xcf, 0xad,
-  0x48, 0x11, 0x67, 0x6b, 0xa2, 0xec, 0xf2, 0x36, 0xaa, 0xa7, 0xc4, 0xd9,
-  0x4c, 0x60, 0xbf, 0x40, 0x05, 0xb7, 0x4d, 0xc6, 0x87, 0xa1, 0x54, 0x52,
-  0x57, 0x93, 0xfb, 0x18, 0x11, 0x88, 0xdd, 0xe6, 0xce, 0x51, 0x94, 0xca,
-  0x68, 0x66, 0x5c, 0xeb, 0xd5, 0xcc, 0xf6, 0xe9, 0xf8, 0xe9, 0x53, 0x43,
-  0x93, 0x8c, 0xc5, 0x92, 0xb6, 0xc1, 0xbb, 0x28, 0xfd, 0x1f, 0xcf, 0xe5,
-  0x85, 0x2e, 0x50, 0xec, 0x1e, 0xd0, 0x71, 0x8c, 0x45, 0xb2, 0xf1, 0xe1,
-  0x78, 0xd2, 0xc2, 0x2b, 0x74, 0x77, 0xa7, 0x6b, 0x46, 0x6b, 0x84, 0xad,
-  0x0c, 0x64, 0x0f, 0x9a, 0x5f, 0xed, 0x16, 0xb9, 0xa3, 0x15, 0x2b, 0xc0,
-  0xc9, 0xc9, 0xa4, 0xd5, 0x54, 0xdd, 0x10, 0x36, 0x53, 0x13, 0xb0, 0x27,
-  0xc9, 0x8c, 0x4d, 0xb9, 0xb2, 0xd9, 0xf4, 0x2e, 0x31, 0xd3, 0x99, 0x8b,
-  0xb1, 0x0f, 0x3b, 0x6a, 0x91, 0xe2, 0xd6, 0x39, 0xcb, 0xd9, 0x2a, 0x12,
-  0xa3, 0xa4, 0x71, 0x2b, 0x44, 0xfc, 0x69, 0x48, 0x7a, 0x84, 0x02, 0x06,
-  0x20, 0x88, 0x20, 0x0f, 0x5c, 0xd6, 0x6c, 0x6b, 0x0d, 0xb3, 0xd1, 0x28,
-  0x2e, 0x7f, 0xa6, 0x68, 0x2d, 0x5e, 0xaa, 0x3d, 0x99, 0x5e, 0x65, 0x46,
-  0x7e, 0x19, 0x7b, 0x58, 0x76, 0x0f, 0x3e, 0x8b, 0x5d, 0x22, 0x89, 0x9e,
-  0xcc, 0x8f, 0x3e, 0x8b, 0x8f, 0x1e, 0x85, 0x0b, 0x62, 0x88, 0x61, 0x16,
-  0x2b, 0xa0, 0x46, 0xe9, 0xf6, 0x94, 0xe9, 0xcf, 0x19, 0xf2, 0x6f, 0xb9,
-  0x1e, 0x1c, 0x86, 0xba, 0x8d, 0x8a, 0xc8, 0x9a, 0x85, 0xe7, 0x70, 0xcd,
-  0x61, 0xdc, 0x81, 0x53, 0x3f, 0x10, 0x38, 0x6d, 0x55, 0x09, 0xf7, 0xac,
-  0x86, 0xee, 0x76, 0x01, 0x10, 0x25, 0xc5, 0x4f, 0x3a, 0x59, 0xab, 0xbc,
-  0xe0, 0x6c, 0x50, 0x5d, 0x5d, 0xa0, 0xe9, 0x58, 0xbe, 0x3d, 0x1a, 0x5d,
-  0x34, 0x4b, 0x3b, 0xb1, 0xb5, 0x8c, 0x69, 0x27, 0xb6, 0x18, 0x20, 0x0d,
-  0x73, 0x05, 0xd5, 0x0d, 0xd0, 0x1f, 0xca, 0x80, 0x35, 0x79, 0x64, 0xb2,
-  0x86, 0x4e, 0xa4, 0x48, 0xf3, 0x47, 0x91, 0x89, 0xc4, 0xc4, 0x21, 0x1f,
-  0x4b, 0x42, 0xea, 0x67, 0x2b, 0x8a, 0xee, 0x5b, 0xe4, 0xe4, 0x33, 0xdf,
-  0x2e, 0x2f, 0x2e, 0x08, 0x8f, 0xc4, 0x10, 0x61, 0x53, 0xe5, 0x46, 0xbb,
-  0x0c, 0xad, 0xcc, 0x54, 0x4a, 0xc4, 0x25, 0x74, 0x73, 0x9f, 0xae, 0x0f,
-  0x46, 0x7c, 0x58, 0x9b, 0x54, 0x11, 0xae, 0x49, 0x0f, 0x39, 0x9c, 0x51,
-  0x82, 0x2c, 0x71, 0xe0, 0xb5, 0x14, 0x11, 0x06, 0x8c, 0xa3, 0x8c, 0x31,
-  0xa7, 0x59, 0x12, 0x76, 0x35, 0x91, 0xfd, 0x1a, 0xd2, 0x70, 0x88, 0x45,
-  0x42, 0x1c, 0xe1, 0x5d, 0x4e, 0xa4, 0xd2, 0xe6, 0x10, 0x4a, 0x04, 0x22,
-  0x50, 0x49, 0xec, 0x85, 0x92, 0x05, 0x23, 0xeb, 0x50, 0x4a, 0x7b, 0x70,
-  0xf9, 0x1a, 0x1e, 0x37, 0x37, 0xf2, 0xcb, 0x9c, 0x60, 0xbe, 0xb2, 0x62,
-  0x5a, 0xdd, 0x2d, 0xfd, 0x7a, 0x88, 0xb3, 0x7f, 0x86, 0x26, 0x15, 0x18,
-  0x82, 0xe2, 0x53, 0x8c, 0x1e, 0x62, 0x64, 0x8f, 0xad, 0x50, 0x1d, 0x42,
-  0x2c, 0x9a, 0xb4, 0xc7, 0xe5, 0x32, 0x20, 0x14, 0x37, 0x7e, 0xb6, 0x38,
-  0x4c, 0x0b, 0x0e, 0x17, 0x1d, 0x29, 0x73, 0x02, 0xb8, 0x77, 0x11, 0xfa,
-  0x73, 0xb0, 0xb8, 0x36, 0x17, 0xfc, 0xc1, 0xa7, 0x61, 0x6f, 0xc8, 0xcb,
-  0x75, 0xbd, 0x17, 0x1c, 0x80, 0xc9, 0x71, 0x9b, 0x45, 0xaa, 0xd9, 0x60,
-  0x8e, 0x6a, 0xc4, 0x1f, 0x34, 0x8b, 0xda, 0xd1, 0xc6, 0xf5, 0xde, 0x50,
-  0x22, 0x69, 0x22, 0x60, 0xd7, 0x9c, 0xf8, 0x67, 0xab, 0xbc, 0xbb, 0x9b,
-  0x0f, 0x48, 0x1b, 0xd5, 0x6a, 0xaa, 0x97, 0x2d, 0x9f, 0x28, 0x24, 0x6d,
-  0xa0, 0xc1, 0x84, 0x60, 0xca, 0x66, 0x59, 0x90, 0xc1, 0xe5, 0x8a, 0x3a,
-  0xa0, 0x01, 0xa6, 0x2c, 0x4a, 0x41, 0x80, 0x5f, 0xe8, 0xc9, 0xee, 0xd3,
-  0x27, 0x5b, 0xeb, 0xae, 0x15, 0x14, 0x3e, 0x06, 0x0a, 0x13, 0x13, 0x0b,
-  0xfe, 0xda, 0x1b, 0xfb, 0x4b, 0x91, 0xb8, 0xb2, 0xb0, 0x2e, 0x64, 0xb0,
-  0x2b, 0x0b, 0x16, 0x33, 0x6c, 0x3e, 0xcd, 0x4b, 0x45, 0x18, 0x22, 0x8b,
-  0xf3, 0x55, 0x3e, 0xa7, 0x00, 0x58, 0xe5, 0x71, 0x44, 0xb4, 0x5d, 0x6b,
-  0x4c, 0x50, 0xbc, 0x8f, 0xac, 0x33, 0xa3, 0x7d, 0x1d, 0x03, 0x8b, 0xad,
-  0xa3, 0x5d, 0xfc, 0xdd, 0xcc, 0xeb, 0x6b, 0x1d, 0x2c, 0xfd, 0x3e, 0x6e,
-  0xff, 0xe5, 0x87, 0x21, 0xb8, 0x06, 0xfe, 0xf9, 0xfd, 0xdc, 0xff, 0xad,
-  0xf7, 0x73, 0xff, 0xd7, 0xed, 0xe7, 0xd3, 0xc7, 0x4f, 0x3e, 0xfd, 0x15,
-  0xfb, 0xe9, 0xad, 0xe5, 0x7f, 0xd9, 0x7e, 0x7a, 0x34, 0xf5, 0xeb, 0xf6,
-  0x53, 0x63, 0xca, 0xa2, 0x05, 0x51, 0xde, 0x6a, 0x8e, 0x28, 0x82, 0xea,
-  0x91, 0x08, 0xcb, 0xf9, 0xeb, 0xf2, 0x4a, 0x00, 0xa2, 0xc1, 0x78, 0xa2,
-  0x8c, 0x6c, 0x43, 0x1a, 0x4f, 0xc4, 0x9c, 0xe5, 0xb0, 0x23, 0x49, 0x97,
-  0x5c, 0xce, 0x51, 0x69, 0x7e, 0x63, 0xb4, 0xa1, 0x86, 0x48, 0x05, 0xc6,
-  0xf1, 0xd2, 0x6e, 0x39, 0xae, 0xef, 0x0f, 0x84, 0xcd, 0xf6, 0xc3, 0xee,
-  0x78, 0xe1, 0xbc, 0xc0, 0xc9, 0xf6, 0xda, 0xdd, 0x99, 0xfb, 0x75, 0x14,
-  0x4d, 0xb2, 0xe5, 0x70, 0xdb, 0xda, 0x06, 0x2b, 0xb3, 0xe2, 0xa1, 0x26,
-  0xd1, 0x73, 0xa3, 0x7e, 0x19, 0x06, 0x5f, 0x80, 0xfa, 0xef, 0xe6, 0x99,
-  0x5c, 0xda, 0x98, 0x34, 0x08, 0x04, 0x46, 0xb3, 0xae, 0xf3, 0x45, 0x2a,
-  0x2b, 0x77, 0x82, 0x1e, 0xc7, 0xe2, 0x98, 0x32, 0xd2, 0x68, 0x6b, 0x30,
-  0xe4, 0x6e, 0xab, 0x8d, 0x0c, 0x3f, 0xe5, 0x98, 0xfb, 0x45, 0x04, 0xcd,
-  0x75, 0x5d, 0x44, 0x71, 0x37, 0xc2, 0xb7, 0xa7, 0x92, 0x73, 0x34, 0xbd,
-  0x03, 0x55, 0xbd, 0xdb, 0x65, 0xbd, 0x39, 0x7a, 0x88, 0x21, 0xd3, 0x49,
-  0xb5, 0xee, 0x56, 0xca, 0x96, 0x32, 0xdb, 0x01, 0xc4, 0x14, 0xae, 0x6b,
-  0x99, 0x50, 0xbb, 0x44, 0xb5, 0x97, 0x44, 0xaa, 0x45, 0xa5, 0xef, 0xcd,
-  0xe8, 0x43, 0x4a, 0x4c, 0x93, 0x08, 0xb6, 0x8f, 0x1f, 0x98, 0xfb, 0x12,
-  0xbb, 0x3b, 0x5b, 0x2d, 0x96, 0x8a, 0x76, 0x8f, 0xdc, 0xcb, 0x9c, 0x30,
-  0x52, 0x24, 0x07, 0xb6, 0x2f, 0x29, 0xdb, 0xda, 0x73, 0x25, 0x44, 0x96,
-  0x6d, 0xc3, 0xba, 0x57, 0xa2, 0xd1, 0x68, 0x16, 0xfb, 0x2b, 0xc6, 0xef,
-  0x20, 0x00, 0xed, 0xec, 0x22, 0x08, 0xf2, 0xc1, 0x39, 0xa3, 0x08, 0xc6,
-  0x59, 0x76, 0xbe, 0xba, 0x54, 0xb4, 0x38, 0x9b, 0x58, 0xdb, 0xa6, 0x4a,
-  0xca, 0x0e, 0x05, 0x8c, 0x6c, 0xc6, 0x71, 0xe4, 0xc5, 0x5d, 0x88, 0x9e,
-  0xd9, 0x18, 0x21, 0x2d, 0x9f, 0xae, 0x8b, 0x2f, 0xed, 0x4e, 0x7c, 0xd8,
-  0x99, 0x36, 0xd1, 0x7e, 0xb7, 0x46, 0xbb, 0x4f, 0x17, 0xcd, 0x74, 0x39,
-  0xba, 0x48, 0x51, 0x68, 0x22, 0x48, 0x5a, 0x96, 0x70, 0x73, 0xa1, 0xf7,
-  0xb3, 0xc3, 0xd3, 0xe4, 0xab, 0x54, 0x2a, 0x31, 0x27, 0x9b, 0x86, 0xeb,
-  0x3e, 0x7d, 0xb4, 0xbb, 0xbf, 0xb5, 0x56, 0xc7, 0x68, 0x83, 0x27, 0x53,
-  0x5f, 0x45, 0x19, 0xcb, 0x8c, 0x39, 0x5b, 0x55, 0x85, 0x82, 0xb2, 0x9a,
-  0x8e, 0xde, 0xbf, 0x39, 0x79, 0x79, 0x74, 0xfc, 0xe2, 0x6f, 0x16, 0xfb,
-  0x6f, 0xe2, 0x17, 0x53, 0xcb, 0xd2, 0xfa, 0xee, 0x7d, 0x9d, 0x99, 0x21,
-  0x37, 0x28, 0xa8, 0x16, 0xa9, 0xa8, 0xe6, 0x4a, 0xa9, 0x29, 0x64, 0x22,
-  0xa7, 0x29, 0xad, 0x81, 0xff, 0x65, 0xed, 0x18, 0x86, 0xff, 0x9d, 0xb1,
-  0x61, 0xc9, 0x12, 0xd4, 0xcd, 0xc5, 0xe6, 0x1c, 0x8b, 0xf2, 0x10, 0x2f,
-  0x52, 0x81, 0x09, 0x17, 0x04, 0xbc, 0x00, 0xdc, 0x00, 0xb9, 0xf4, 0x39,
-  0x34, 0x31, 0x39, 0xc3, 0x48, 0x7f, 0xba, 0xb8, 0x68, 0x17, 0x19, 0xa0,
-  0xf4, 0x6a, 0xca, 0x8b, 0x5a, 0x6b, 0xa3, 0x6e, 0xf3, 0xfb, 0x86, 0x2e,
-  0x88, 0x6c, 0x5e, 0x64, 0xcd, 0x48, 0x86, 0xf5, 0xdc, 0xfc, 0xfb, 0xd9,
-  0x75, 0x3a, 0x0f, 0xc0, 0xbd, 0xd2, 0xba, 0xb6, 0x64, 0x68, 0xf9, 0x0e,
-  0xde, 0xf4, 0x4a, 0xd0, 0x4e, 0xac, 0xdd, 0x42, 0x9f, 0x34, 0xe7, 0x22,
-  0x28, 0xb9, 0x7a, 0x76, 0xf6, 0xb7, 0xd3, 0xa3, 0xcf, 0x9e, 0x83, 0x6b,
-  0x7d, 0x8e, 0x34, 0xb8, 0xba, 0xc5, 0xc4, 0x28, 0x08, 0x38, 0x98, 0xc3,
-  0x0f, 0x2f, 0x5f, 0x4d, 0x4e, 0x8f, 0x4f, 0x0e, 0x3f, 0x7b, 0xfe, 0x03,
-  0x54, 0x15, 0x73, 0x53, 0xdc, 0x79, 0xef, 0xda, 0xcf, 0x6c, 0x01, 0xc4,
-  0x10, 0x17, 0xf2, 0xe8, 0xfb, 0xf7, 0x47, 0x6f, 0xbe, 0xfb, 0xec, 0xf9,
-  0x75, 0x5a, 0x0d, 0x31, 0x3f, 0x7e, 0x1b, 0x61, 0xf6, 0xc5, 0x75, 0x5e,
-  0x95, 0x05, 0x6c, 0x5e, 0x89, 0xf9, 0x32, 0x07, 0xa5, 0xb6, 0x48, 0x0d,
-  0x62, 0xf6, 0xf9, 0xfc, 0x43, 0x9d, 0xff, 0x92, 0x25, 0xe6, 0xf5, 0xf9,
-  0x2a, 0xac, 0x96, 0x75, 0xc6, 0x70, 0x7a, 0x66, 0x31, 0xf0, 0x5b, 0xf2,
-  0xe5, 0xf1, 0xb7, 0x28, 0x7c, 0x62, 0xdd, 0x0f, 0x0b, 0x2e, 0x44, 0x9d,
-  0x7c, 0xfe, 0x78, 0x77, 0x6f, 0x4b, 0xae, 0x73, 0x41, 0x4e, 0x39, 0x37,
-  0x23, 0xfe, 0x10, 0x24, 0x70, 0xfe, 0x22, 0xa9, 0xa8, 0x5d, 0xe8, 0x20,
-  0x87, 0x52, 0xaa, 0x96, 0x5c, 0x4a, 0xfd, 0xa1, 0x68, 0x79, 0xf3, 0xad,
-  0x21, 0x53, 0xe4, 0xc4, 0x04, 0x86, 0xec, 0xb3, 0xaf, 0x3c, 0xa8, 0x52,
-  0x0f, 0x7c, 0xc1, 0x0c, 0x47, 0x8c, 0xe1, 0x6b, 0x2f, 0xc3, 0xdf, 0xd1,
-  0x45, 0xda, 0x55, 0x97, 0x69, 0xb1, 0xcd, 0xfd, 0x25, 0xf4, 0x13, 0x5f,
-  0x67, 0x2f, 0x74, 0x8e, 0x92, 0x51, 0x4b, 0x46, 0xda, 0xa7, 0x59, 0x2a,
-  0xe1, 0x29, 0x38, 0xdc, 0x5a, 0xc5, 0x2a, 0x5f, 0x00, 0xa1, 0x08, 0xf9,
-  0x80, 0x6c, 0x33, 0xf5, 0x2c, 0xa2, 0xf3, 0xec, 0x12, 0x76, 0x24, 0x5b,
-  0x2d, 0xc8, 0x02, 0xdd, 0x76, 0xcd, 0x10, 0x25, 0xac, 0x57, 0x53, 0x68,
-  0x65, 0x04, 0x81, 0xc3, 0xc9, 0x10, 0x0c, 0x8a, 0x69, 0x4e, 0xac, 0x35,
-  0xa7, 0xb6, 0x46, 0x27, 0x68, 0x0f, 0xfd, 0x70, 0x38, 0xba, 0xc4, 0x1d,
-  0xea, 0xf3, 0x44, 0xdc, 0x75, 0xbc, 0xb2, 0xed, 0x88, 0xfa, 0x85, 0x0e,
-  0x39, 0x30, 0x95, 0xc9, 0xd7, 0xf1, 0x1c, 0xbf, 0xf6, 0x96, 0x7b, 0x63,
-  0x8b, 0x0c, 0x99, 0xf1, 0x58, 0x3a, 0xa3, 0x69, 0xdb, 0xc4, 0x25, 0x29,
-  0x4a, 0x8b, 0xa2, 0x61, 0x8d, 0x7a, 0x56, 0xfa, 0x11, 0xcb, 0xb9, 0x60,
-  0x32, 0x25, 0x60, 0x99, 0xc7, 0xe9, 0x6e, 0x02, 0x6d, 0xf4, 0x34, 0x69,
-  0x13, 0xc5, 0x43, 0xcf, 0x27, 0xe5, 0x28, 0xf7, 0x96, 0xd4, 0x5c, 0x5b,
-  0x3d, 0x33, 0x82, 0x5f, 0xcc, 0xb9, 0x33, 0x6a, 0x00, 0xe0, 0xb8, 0x27,
-  0x18, 0x2d, 0x6d, 0x91, 0x20, 0x33, 0xc8, 0x5a, 0x45, 0x50, 0xe4, 0x63,
-  0x93, 0xba, 0xed, 0xca, 0x88, 0x44, 0x50, 0xe5, 0x38, 0xab, 0x54, 0x0a,
-  0x41, 0x35, 0x5c, 0x6c, 0xd7, 0x21, 0xee, 0xd2, 0x78, 0x36, 0xa9, 0xf8,
-  0xa8, 0x14, 0xc1, 0x13, 0x09, 0x3b, 0x89, 0x80, 0x99, 0x88, 0xc0, 0x3c,
-  0xe9, 0xaf, 0xf9, 0x49, 0x77, 0x52, 0xdd, 0x53, 0xdf, 0x33, 0xd0, 0xd4,
-  0xe3, 0x29, 0x42, 0xd0, 0xb2, 0x34, 0xd1, 0xa6, 0xd5, 0x82, 0x20, 0x2e,
-  0xcc, 0x00, 0xfd, 0xbc, 0x39, 0x72, 0x35, 0xd3, 0x29, 0xf5, 0x95, 0x29,
-  0x23, 0x82, 0x9c, 0x9a, 0xd8, 0x3a, 0x56, 0x16, 0x87, 0x9b, 0x5d, 0x0a,
-  0xe2, 0xc6, 0xcc, 0x84, 0x24, 0xd0, 0xdb, 0x36, 0xa7, 0xa1, 0x2b, 0x0f,
-  0x82, 0xe4, 0x1f, 0x88, 0x7a, 0x9d, 0xb6, 0x8a, 0xec, 0xc6, 0x6f, 0xcb,
-  0x29, 0x19, 0xb6, 0xbd, 0xdf, 0xd3, 0x89, 0x64, 0xf4, 0x24, 0x24, 0xc6,
-  0x26, 0xcf, 0xbf, 0x3b, 0x7a, 0x3b, 0x79, 0x75, 0xf2, 0xe6, 0xf3, 0xa8,
-  0xb2, 0x2b, 0x5f, 0x62, 0x5e, 0x79, 0x91, 0xb9, 0xa4, 0x7b, 0x67, 0xcb,
-  0x87, 0x35, 0x4b, 0x6d, 0x26, 0x5c, 0x28, 0x37, 0x2f, 0xf0, 0x48, 0x50,
-  0xf6, 0x7c, 0x9a, 0x2d, 0x1b, 0xce, 0xeb, 0x95, 0xc7, 0x59, 0x64, 0x26,
-  0x7f, 0x20, 0xd5, 0x1b, 0x25, 0xc5, 0x6d, 0x67, 0xa8, 0xbf, 0xed, 0xda,
-  0xdf, 0xf6, 0x42, 0x6a, 0xe7, 0x2f, 0xf6, 0xfb, 0x52, 0x32, 0x7d, 0x0b,
-  0x59, 0xcd, 0x30, 0x0b, 0x8a, 0x04, 0x6e, 0xc6, 0xdb, 0x0e, 0xaa, 0xb8,
-  0x4f, 0x62, 0xd5, 0x9b, 0x8d, 0x05, 0xc6, 0x3a, 0xf9, 0xf7, 0x77, 0xaf,
-  0x0e, 0x47, 0x6c, 0x61, 0x26, 0x06, 0xb3, 0x6d, 0xe8, 0xd7, 0x7a, 0x20,
-  0x83, 0x01, 0xc5, 0x03, 0xf3, 0xbc, 0xb8, 0x98, 0xd5, 0x92, 0x33, 0x09,
-  0x80, 0x93, 0xc9, 0x10, 0x60, 0xfe, 0x8a, 0x06, 0xf5, 0x0a, 0xc7, 0x3b,
-  0xed, 0x17, 0xcd, 0xc3, 0xd7, 0xbb, 0x5e, 0xc2, 0x9e, 0x7d, 0x6e, 0x37,
-  0xf6, 0xdc, 0x6e, 0xf8, 0xdc, 0x5e, 0xec, 0xb9, 0xbd, 0xf0, 0xb9, 0xfd,
-  0xd8, 0x73, 0xde, 0x06, 0xd8, 0x24, 0xec, 0xc4, 0x2a, 0xe1, 0x3b, 0x43,
-  0xa7, 0x9d, 0xbb, 0x5f, 0xf7, 0x5a, 0x8a, 0xfa, 0xfe, 0xd8, 0xa3, 0x45,
-  0x2f, 0x2f, 0x40, 0x6c, 0x0d, 0x52, 0x2b, 0x31, 0xf3, 0x6d, 0x0b, 0x6a,
-  0x5a, 0xe8, 0xb7, 0x2c, 0x24, 0xd6, 0x74, 0xa8, 0xcd, 0x19, 0xb1, 0xb5,
-  0x63, 0xcf, 0x37, 0x7d, 0xee, 0xee, 0x8f, 0xa6, 0xf9, 0xf2, 0x0a, 0x17,
-  0xe1, 0x73, 0xf9, 0x65, 0x85, 0xfa, 0x24, 0x30, 0xfd, 0x86, 0xc2, 0xd0,
-  0xf1, 0x64, 0x2b, 0xf1, 0xb0, 0x6f, 0xa5, 0xea, 0x03, 0xbd, 0x96, 0xd0,
-  0x7b, 0xb5, 0x43, 0xbe, 0x0d, 0x2d, 0xf8, 0x41, 0x7e, 0x9e, 0x0d, 0x45,
-  0x36, 0xef, 0x61, 0xc7, 0x69, 0x29, 0xa8, 0x8a, 0x76, 0xce, 0x19, 0xf4,
-  0x3a, 0x34, 0x69, 0x9b, 0x0b, 0xb5, 0x68, 0x58, 0x4d, 0xd7, 0x4e, 0x4c,
-  0x65, 0x13, 0xf5, 0x15, 0xc5, 0x4b, 0x47, 0x71, 0xf7, 0x42, 0x1b, 0x6f,
-  0x0d, 0xd5, 0xca, 0xfd, 0x65, 0xf4, 0xbe, 0x7e, 0xf7, 0xf6, 0x38, 0x90,
-  0x6f, 0x13, 0xd8, 0x84, 0xea, 0x83, 0xed, 0x6d, 0xac, 0xfd, 0xb8, 0xce,
-  0xb6, 0x0d, 0x3f, 0xab, 0xb7, 0xc9, 0x6e, 0x2c, 0xbd, 0x5e, 0x35, 0x8b,
-  0xf9, 0x5a, 0xb9, 0xa4, 0xd6, 0x0a, 0x25, 0x0c, 0xe9, 0x3f, 0x63, 0xb7,
-  0xa0, 0xc3, 0xab, 0x20, 0x7e, 0xc0, 0x3b, 0xaa, 0xb1, 0xb4, 0xdd, 0xf2,
-  0x91, 0x46, 0xb5, 0x82, 0xff, 0x07, 0x94, 0xbc, 0x8b, 0x9b, 0x97, 0x6e,
-  0x6c, 0x8b, 0xc6, 0xc4, 0xfa, 0x2a, 0x07, 0x34, 0x39, 0x14, 0x56, 0xbc,
-  0x00, 0xdc, 0x80, 0x2c, 0x70, 0x15, 0x59, 0xb8, 0xd5, 0x8a, 0x4a, 0xac,
-  0x91, 0x61, 0x22, 0xb6, 0x5c, 0xb5, 0xef, 0x54, 0x82, 0x2d, 0x42, 0xa6,
-  0x1c, 0x15, 0x73, 0x7e, 0x67, 0xa6, 0x0d, 0x9f, 0x22, 0x65, 0x14, 0x3e,
-  0xc7, 0xcf, 0xcf, 0x43, 0xfc, 0x8d, 0x84, 0xa6, 0x10, 0x44, 0xe4, 0x42,
-  0xff, 0x40, 0x92, 0x2a, 0xaf, 0x3f, 0xf7, 0xd7, 0x71, 0xcb, 0xf6, 0xf8,
-  0x6f, 0x69, 0x5b, 0x06, 0x93, 0xb7, 0xa7, 0x83, 0xa1, 0x04, 0xe1, 0x98,
-  0x0e, 0x46, 0xe6, 0xef, 0x84, 0xb4, 0x5c, 0x54, 0x91, 0x7d, 0xfc, 0x48,
-  0xe2, 0x65, 0x79, 0x8c, 0x9c, 0x18, 0x1e, 0xba, 0xe6, 0xe8, 0x4b, 0x1b,
-  0x33, 0x4c, 0xdb, 0xe5, 0xe5, 0xda, 0x1b, 0xe6, 0xdc, 0x9e, 0x21, 0x47,
-  0xf2, 0x0d, 0x5d, 0x19, 0xaf, 0xb8, 0x58, 0x69, 0xab, 0x07, 0x18, 0x9a,
-  0xa1, 0x61, 0x8e, 0x3b, 0x8e, 0x86, 0xb2, 0xfa, 0x20, 0x2e, 0x68, 0x71,
-  0x97, 0x30, 0x37, 0xe9, 0x4e, 0xb6, 0x6b, 0xb9, 0xf4, 0xa8, 0x91, 0xe3,
-  0x55, 0x74, 0xda, 0xb2, 0x62, 0x8a, 0xa6, 0xae, 0x86, 0xd1, 0x1e, 0x5a,
-  0x35, 0x0b, 0xf6, 0x75, 0xb1, 0xc2, 0x9e, 0x50, 0x2b, 0x9d, 0x46, 0xee,
-  0x41, 0xc4, 0x7c, 0xd4, 0xd9, 0x7d, 0xbb, 0x78, 0xcf, 0x59, 0x12, 0x8c,
-  0xed, 0xbf, 0x7d, 0x06, 0x7b, 0x45, 0xaa, 0x95, 0x16, 0x77, 0xc0, 0x20,
-  0xba, 0x3e, 0x69, 0x8b, 0x34, 0xdf, 0x97, 0xf1, 0xaa, 0x78, 0x5b, 0xde,
-  0xce, 0x8c, 0xd5, 0xc3, 0x29, 0x0c, 0xda, 0x6d, 0xba, 0x57, 0x66, 0x31,
-  0xae, 0xa3, 0xa8, 0x80, 0xea, 0xa2, 0xd3, 0x94, 0xf9, 0xdd, 0xbb, 0x10,
-  0xfe, 0x3a, 0x50, 0x67, 0xd1, 0xfc, 0x0b, 0x3a, 0x01, 0x1a, 0xa0, 0x9e,
-  0x3c, 0x68, 0x0d, 0x64, 0x09, 0x7e, 0xe5, 0x0a, 0x88, 0x0e, 0xd5, 0xa5,
-  0x6d, 0xba, 0x09, 0x03, 0x92, 0xfd, 0x3d, 0xd6, 0xa5, 0xb5, 0x30, 0xb8,
-  0x76, 0xe3, 0x57, 0xd7, 0x57, 0x08, 0xdd, 0x6f, 0xe7, 0x66, 0x79, 0x92,
-  0x06, 0x49, 0x16, 0xca, 0x50, 0xef, 0xcd, 0xc9, 0x22, 0x8f, 0xa4, 0xd4,
-  0xab, 0x41, 0x23, 0x5a, 0x7c, 0x33, 0xc4, 0x91, 0x83, 0x11, 0x58, 0xba,
-  0x20, 0x2d, 0x86, 0xbb, 0x6f, 0x59, 0x31, 0x71, 0x8f, 0x5b, 0xe9, 0x98,
-  0xf0, 0xa7, 0xca, 0x84, 0x73, 0x5d, 0x3a, 0xcd, 0xbd, 0xc7, 0x19, 0x7e,
-  0x2f, 0xfc, 0x8d, 0xc4, 0x0b, 0xf0, 0x0c, 0x1b, 0xe7, 0x81, 0x76, 0x8c,
-  0x94, 0x06, 0x37, 0x48, 0x4d, 0xd5, 0x4e, 0xef, 0x01, 0xc8, 0x40, 0x33,
-  0xe6, 0xb0, 0x23, 0xa6, 0x44, 0x6d, 0xcc, 0x2a, 0x88, 0x74, 0x50, 0xc0,
-  0xa9, 0xd6, 0xa5, 0x95, 0x7d, 0x65, 0xd5, 0x42, 0xcc, 0xc1, 0x7b, 0x20,
-  0x25, 0x42, 0x01, 0x04, 0x82, 0xd1, 0xaf, 0xdc, 0xac, 0xdd, 0xff, 0xcd,
-  0x36, 0x6b, 0xf7, 0xff, 0x84, 0xcd, 0xda, 0xfb, 0x95, 0x9b, 0xb5, 0xf7,
-  0xbf, 0xd9, 0x66, 0xed, 0xfd, 0x9f, 0xb0, 0x59, 0xfb, 0xbf, 0x72, 0xb3,
-  0xf6, 0x7f, 0xfb, 0xcd, 0xfa, 0xef, 0xa6, 0x94, 0x12, 0xbe, 0x3c, 0x5d,
-  0x5b, 0x2a, 0xed, 0x6a, 0xd2, 0x84, 0x95, 0x05, 0x8d, 0xc0, 0x0b, 0xeb,
-  0x13, 0xbe, 0x17, 0xd9, 0xb9, 0xfe, 0x08, 0xac, 0x4d, 0xa7, 0xee, 0x45,
-  0xad, 0x0a, 0xb1, 0x92, 0x62, 0x08, 0x25, 0x81, 0xf8, 0xdb, 0xde, 0x8c,
-  0x5b, 0xde, 0x03, 0xd5, 0x95, 0x62, 0x9b, 0x20, 0xb6, 0x9d, 0x70, 0x1b,
-  0x24, 0x3c, 0x84, 0x61, 0xe2, 0x98, 0xb4, 0xad, 0xe5, 0x81, 0xf4, 0xe8,
-  0xc0, 0xaa, 0x70, 0x95, 0x5f, 0x02, 0x6e, 0x34, 0xe2, 0x4c, 0xb2, 0x9a,
-  0xad, 0xfa, 0xc9, 0x3b, 0x8e, 0x72, 0xcf, 0x29, 0x5d, 0x65, 0x1d, 0xdd,
-  0xb5, 0xdf, 0x4b, 0x7e, 0xbf, 0x26, 0x1b, 0xc2, 0x77, 0xf4, 0x78, 0xc9,
-  0xe3, 0x5e, 0xf0, 0x8e, 0xaa, 0xed, 0x9f, 0x91, 0x6a, 0xa4, 0x05, 0xc0,
-  0xe3, 0xe5, 0xc5, 0x9c, 0xc5, 0x14, 0x89, 0x83, 0x04, 0x6d, 0x3f, 0x63,
-  0x10, 0x3e, 0x44, 0x02, 0x1d, 0xc9, 0xbb, 0xce, 0x49, 0xc9, 0xc4, 0x17,
-  0x02, 0xd8, 0x49, 0x66, 0xae, 0xc5, 0x6b, 0x53, 0x38, 0x20, 0x09, 0x96,
-  0x1c, 0x4a, 0x28, 0xa3, 0x76, 0xc2, 0xf2, 0x39, 0x57, 0x61, 0x23, 0x78,
-  0xc9, 0x28, 0xee, 0x30, 0x61, 0x95, 0xde, 0x27, 0x3b, 0x3f, 0x69, 0xcf,
-  0x37, 0x9d, 0x66, 0xa3, 0xb4, 0x9e, 0xe6, 0x79, 0x3c, 0x10, 0x40, 0x9d,
-  0xd9, 0x29, 0xc1, 0x1d, 0x53, 0xa1, 0x65, 0x20, 0x3e, 0x2f, 0x96, 0x98,
-  0x01, 0x57, 0x5b, 0x17, 0xb8, 0x3d, 0x0c, 0xd8, 0x1c, 0xda, 0xcb, 0x52,
-  0x9d, 0x14, 0xc3, 0x88, 0xc1, 0x13, 0xe7, 0x92, 0x0b, 0x67, 0x31, 0xf2,
-  0x39, 0xa2, 0x5b, 0xbd, 0xd2, 0xe5, 0x43, 0xf5, 0x36, 0xb1, 0x05, 0xb1,
-  0x83, 0xb8, 0xfd, 0x2e, 0x50, 0x7c, 0x07, 0xa3, 0x01, 0xcc, 0xb5, 0xb6,
-  0xe6, 0x33, 0x20, 0xc9, 0x53, 0x49, 0x96, 0x92, 0x97, 0x15, 0x34, 0xae,
-  0x27, 0x96, 0x40, 0xdd, 0x33, 0x86, 0x84, 0xee, 0xb4, 0x80, 0x12, 0x95,
-  0xb5, 0x54, 0x1f, 0x2b, 0x38, 0xbe, 0x39, 0x82, 0x02, 0x29, 0xce, 0x69,
-  0x58, 0xd9, 0x2d, 0xa7, 0x9d, 0x87, 0xaa, 0x1c, 0xab, 0x8e, 0x57, 0x9a,
-  0x94, 0xfd, 0x62, 0x72, 0xf8, 0xea, 0x55, 0x2b, 0x45, 0x1d, 0x4b, 0xc7,
-  0xe5, 0x57, 0x18, 0x1f, 0xa9, 0x46, 0xd5, 0x87, 0xac, 0xea, 0xc1, 0xeb,
-  0xa6, 0xb3, 0xb2, 0x30, 0xc7, 0x8f, 0x3c, 0x4a, 0x86, 0x11, 0xe4, 0x8c,
-  0x1c, 0x49, 0x38, 0xf1, 0x24, 0xc3, 0x17, 0x66, 0x98, 0x39, 0xf0, 0x2d,
-  0xaf, 0x56, 0x8b, 0xb4, 0xf8, 0xfd, 0xc1, 0x39, 0xe3, 0xb9, 0x5f, 0xb2,
-  0x5a, 0x7c, 0xae, 0x7c, 0x77, 0x75, 0x48, 0x6b, 0x91, 0xf2, 0x91, 0xa7,
-  0x15, 0xdd, 0x9b, 0x54, 0x97, 0x5d, 0xfc, 0x08, 0x5c, 0x02, 0xd2, 0xcc,
-  0x94, 0xd0, 0x84, 0xb9, 0x71, 0x33, 0x5d, 0x75, 0x82, 0x53, 0x14, 0xa3,
-  0x75, 0x9a, 0x05, 0x08, 0xe1, 0xe4, 0x1e, 0x5c, 0xcb, 0x98, 0x77, 0xbb,
-  0x77, 0x23, 0xf5, 0xf0, 0x47, 0x9e, 0x80, 0xd6, 0x11, 0xb8, 0xff, 0x0c,
-  0xf0, 0x11, 0xf8, 0x2d, 0x4e, 0x80, 0x40, 0x5e, 0x0d, 0xfe, 0x3c, 0xe8,
-  0x29, 0x30, 0xfa, 0x80, 0x76, 0xcc, 0xbe, 0xff, 0x57, 0x51, 0x5a, 0x18,
-  0xa2, 0xe3, 0x33, 0x31, 0x7f, 0x4f, 0x57, 0x45, 0x7e, 0x3b, 0x12, 0xb0,
-  0xa9, 0x75, 0x85, 0x3c, 0x0f, 0x59, 0x00, 0x49, 0x34, 0x9d, 0x8d, 0x66,
-  0xf1, 0xce, 0xbc, 0x6c, 0x84, 0x91, 0x05, 0x82, 0x94, 0xb8, 0x8d, 0xa1,
-  0x5f, 0xba, 0x8b, 0xd8, 0x7a, 0x24, 0xc8, 0xa9, 0xc8, 0x1a, 0xa8, 0xaa,
-  0x6b, 0x3d, 0x76, 0x6d, 0x2f, 0xe8, 0x19, 0xe1, 0x28, 0x2e, 0x91, 0x63,
-  0x34, 0x22, 0x27, 0x5c, 0x94, 0x08, 0x69, 0x31, 0x5c, 0x42, 0x4f, 0xdb,
-  0x31, 0xe2, 0xd5, 0x8a, 0x16, 0xd2, 0xd1, 0x6b, 0x9f, 0x8b, 0x86, 0x46,
-  0xe3, 0xb1, 0x6c, 0x95, 0x5b, 0x57, 0x23, 0x3a, 0xef, 0x7a, 0x5c, 0xa8,
-  0x0a, 0xb1, 0x73, 0x4b, 0xa7, 0x4b, 0x1c, 0xd3, 0xc8, 0xdd, 0xdd, 0x29,
-  0x56, 0x3d, 0x4e, 0xde, 0x9c, 0x9c, 0x1d, 0xf1, 0xf9, 0x6c, 0xd5, 0xd2,
-  0x26, 0x98, 0xd7, 0x9c, 0xea, 0x62, 0x6c, 0x6b, 0xd8, 0xc6, 0x3c, 0x4c,
-  0xd5, 0x71, 0x05, 0x9a, 0x85, 0xd7, 0x21, 0x67, 0x83, 0x9c, 0xb7, 0xf8,
-  0xfb, 0x90, 0x05, 0x7a, 0x16, 0x22, 0xda, 0xb3, 0x20, 0xca, 0x0d, 0xc4,
-  0x17, 0xcf, 0xaf, 0x7e, 0x95, 0x17, 0x1f, 0xec, 0xb8, 0x2a, 0x26, 0x44,
-  0xd7, 0x9b, 0x06, 0xa7, 0x75, 0xaa, 0xce, 0x06, 0xb1, 0xe8, 0xb6, 0xc0,
-  0xb3, 0xc8, 0x52, 0x0c, 0xee, 0x8d, 0xdc, 0x5c, 0xd4, 0xb7, 0x44, 0x19,
-  0xc7, 0x54, 0x01, 0xbe, 0x79, 0x63, 0x13, 0x38, 0x88, 0x15, 0x02, 0x20,
-  0x00, 0x2f, 0xcf, 0xe7, 0xad, 0x34, 0x2b, 0x31, 0x01, 0x6b, 0x66, 0xe7,
-  0xa6, 0x91, 0xce, 0x59, 0x72, 0xe3, 0xc3, 0x83, 0xda, 0x94, 0x5a, 0x3c,
-  0xac, 0xbf, 0xb0, 0x54, 0x1c, 0xe6, 0xae, 0x1d, 0x86, 0x07, 0xd6, 0xb1,
-  0x99, 0x2a, 0x82, 0x34, 0x9c, 0x80, 0x5b, 0x2a, 0x76, 0x9a, 0x23, 0x6e,
-  0x88, 0xc1, 0xa3, 0xf7, 0x34, 0xea, 0xf4, 0x95, 0x7b, 0xf9, 0x85, 0x54,
-  0x3d, 0xcb, 0xd4, 0x80, 0xea, 0xf5, 0x31, 0x36, 0x5c, 0xc6, 0x74, 0xa2,
-  0xbd, 0x48, 0x6e, 0xdd, 0x56, 0x00, 0x7b, 0x79, 0xc7, 0x60, 0x2a, 0x8e,
-  0xf6, 0x5a, 0x85, 0xf9, 0x30, 0xd4, 0xce, 0xd0, 0x28, 0xf2, 0x9b, 0x02,
-  0x2a, 0xc2, 0x93, 0x48, 0x98, 0x26, 0xd0, 0x42, 0xa8, 0x3e, 0x6d, 0x25,
-  0x35, 0x6e, 0x25, 0x1a, 0x5c, 0xb8, 0x19, 0x83, 0x74, 0x4b, 0x73, 0x6c,
-  0xd4, 0xcc, 0x88, 0x2f, 0xaf, 0x02, 0x73, 0x2f, 0xb6, 0x30, 0xb2, 0xa4,
-  0x54, 0x72, 0x19, 0x76, 0x72, 0x9b, 0xd4, 0x0b, 0x9e, 0x16, 0x1e, 0x68,
-  0x5b, 0xd2, 0x1e, 0xc5, 0x71, 0x4b, 0x75, 0x82, 0xf4, 0x97, 0x0b, 0x1d,
-  0x27, 0x47, 0x78, 0x3a, 0x6c, 0xe8, 0x2f, 0x52, 0x5e, 0x37, 0xaf, 0xec,
-  0x3a, 0x01, 0x36, 0x9d, 0xc3, 0x4e, 0xbb, 0x74, 0x25, 0x94, 0xc7, 0x65,
-  0x5a, 0xa1, 0xe0, 0x12, 0x22, 0xc8, 0x58, 0x2a, 0xc1, 0x40, 0x6c, 0xb7,
-  0x89, 0x39, 0x83, 0xcb, 0x79, 0x79, 0x7e, 0x6e, 0x26, 0x3f, 0x50, 0x29,
-  0xc5, 0xf4, 0x1d, 0xd8, 0xa8, 0xfd, 0x91, 0xa4, 0xd5, 0x25, 0x29, 0xcf,
-  0x43, 0x52, 0x23, 0xd8, 0x01, 0x80, 0x51, 0xdc, 0xd9, 0x25, 0xd1, 0xee,
-  0xb5, 0x16, 0x54, 0xe4, 0x9e, 0xa9, 0x05, 0xc3, 0x48, 0x48, 0x03, 0x73,
-  0x6b, 0xf9, 0x13, 0x28, 0xfd, 0x19, 0x9f, 0xea, 0xf0, 0x38, 0x62, 0x12,
-  0xe3, 0x1e, 0x45, 0x72, 0xd5, 0x5b, 0x95, 0x92, 0xb9, 0xf8, 0x30, 0x9d,
-  0xa9, 0xd0, 0x65, 0x43, 0x4b, 0xd0, 0x9e, 0xd0, 0xe0, 0x3f, 0xf0, 0xcf,
-  0xee, 0x10, 0x3f, 0xf7, 0xfe, 0x73, 0x40, 0x5e, 0x9d, 0x83, 0xed, 0xed,
-  0x9b, 0x9b, 0x9b, 0xb1, 0xc2, 0xb0, 0x9a, 0x2d, 0xfb, 0x24, 0x4c, 0x14,
-  0x06, 0x1e, 0x65, 0x4f, 0x07, 0x67, 0xc9, 0x20, 0x5f, 0x5c, 0xfe, 0xb8,
-  0x3b, 0xda, 0xdd, 0xd9, 0xd9, 0xf9, 0x79, 0xbc, 0xc4, 0xfa, 0x5e, 0x50,
-  0xb3, 0xe6, 0xa7, 0xdf, 0xec, 0x36, 0x8f, 0x64, 0x3b, 0x8a, 0x99, 0xcd,
-  0xdf, 0xa9, 0x5a, 0x5d, 0x70, 0x4d, 0x49, 0x26, 0xe5, 0x03, 0x8f, 0xc5,
-  0xb0, 0x7f, 0x3c, 0x6d, 0xa1, 0xb5, 0x85, 0x38, 0x25, 0xe7, 0x1c, 0xf6,
-  0xfc, 0x78, 0x7f, 0x6f, 0x2f, 0x61, 0x81, 0x83, 0xb3, 0x59, 0x39, 0x44,
-  0x03, 0x40, 0x26, 0x59, 0x4a, 0xe1, 0xfe, 0x7c, 0x97, 0x01, 0xb0, 0x36,
-  0x65, 0x27, 0x90, 0xa1, 0x8c, 0x9e, 0xb8, 0x54, 0xaa, 0xce, 0x6b, 0x98,
-  0x58, 0x72, 0x5e, 0xce, 0xee, 0x5c, 0xab, 0x86, 0xc4, 0x2b, 0x30, 0x56,
-  0xc3, 0x0e, 0x25, 0x29, 0x4e, 0x80, 0x71, 0x53, 0x01, 0x86, 0x09, 0xb2,
-  0xce, 0x24, 0x33, 0x95, 0x6e, 0x39, 0x42, 0x22, 0x2f, 0xb0, 0xbe, 0x54,
-  0x36, 0x9d, 0xf0, 0x4f, 0x57, 0x95, 0x14, 0xe1, 0xa5, 0x00, 0x8e, 0x9b,
-  0xf4, 0xae, 0x75, 0xd9, 0x9b, 0x15, 0x7f, 0x6e, 0x7e, 0x04, 0x76, 0x6f,
-  0x39, 0x9a, 0x10, 0x2d, 0x41, 0x4b, 0x8c, 0x61, 0x95, 0x35, 0xd3, 0xab,
-  0xa0, 0xb8, 0x06, 0x38, 0xb8, 0x19, 0xed, 0x95, 0x99, 0x90, 0xb8, 0xdf,
-  0xc2, 0xd4, 0x45, 0x6b, 0xa0, 0x91, 0x66, 0x4d, 0x93, 0xa8, 0x48, 0x49,
-  0x99, 0x13, 0xd3, 0xb2, 0xb8, 0xc8, 0xb9, 0x30, 0x6a, 0x9f, 0xad, 0x83,
-  0xd9, 0x26, 0xc6, 0x81, 0xfe, 0x38, 0x2b, 0x07, 0x27, 0x60, 0x7a, 0x95,
-  0x2d, 0x84, 0x63, 0x6e, 0x6a, 0xd8, 0xe7, 0x40, 0x68, 0x70, 0x10, 0xd1,
-  0xc8, 0x07, 0x17, 0xfa, 0x95, 0x99, 0x89, 0x96, 0x43, 0xb1, 0xd7, 0x9c,
-  0x14, 0xeb, 0xbd, 0x5c, 0x41, 0x71, 0x3c, 0x4f, 0xe5, 0x3e, 0x51, 0x00,
-  0x89, 0x71, 0x3c, 0x3c, 0xdb, 0xb0, 0xc5, 0xac, 0xa2, 0x4b, 0xac, 0x5e,
-  0x9d, 0x8f, 0x44, 0xf2, 0xa1, 0x11, 0x51, 0xd0, 0x0c, 0x4e, 0xeb, 0xcb,
-  0x57, 0x87, 0x28, 0x9d, 0xfc, 0xd5, 0xd9, 0xa9, 0xf9, 0x89, 0x6c, 0x1e,
-  0xf3, 0x0f, 0x12, 0xe5, 0xc3, 0x3a, 0xca, 0xa7, 0xfb, 0x1c, 0x1a, 0x45,
-  0xc4, 0xea, 0x97, 0xc2, 0xb1, 0x91, 0xb2, 0xbe, 0xe8, 0x37, 0xf4, 0x2a,
-  0x73, 0x46, 0x02, 0xa0, 0x5b, 0x52, 0xa2, 0x05, 0x5a, 0x78, 0xf4, 0x78,
-  0xbc, 0xc3, 0x53, 0xc4, 0x1a, 0x4a, 0x64, 0x90, 0x64, 0xd7, 0x91, 0x9d,
-  0x46, 0x3d, 0x97, 0x69, 0x3c, 0xf4, 0xc0, 0x0e, 0x65, 0x98, 0x70, 0x81,
-  0x09, 0x46, 0x5e, 0xd1, 0x6f, 0xbd, 0x28, 0xd0, 0x7b, 0x12, 0xae, 0xf5,
-  0xee, 0x92, 0x20, 0xe7, 0xbb, 0x6e, 0x71, 0x00, 0xaa, 0xde, 0xa0, 0x49,
-  0x44, 0xc4, 0x84, 0x63, 0xd9, 0xb5, 0x42, 0x13, 0x12, 0xfc, 0x3e, 0x74,
-  0x85, 0x91, 0x4b, 0xdc, 0x02, 0x72, 0x67, 0x49, 0x76, 0x54, 0x32, 0x3a,
-  0x19, 0x32, 0x8c, 0x3b, 0x64, 0x94, 0x51, 0x4c, 0x3e, 0xe9, 0xab, 0x38,
-  0x6d, 0x2b, 0x85, 0x25, 0x27, 0x66, 0xe8, 0x92, 0x57, 0x3a, 0x94, 0x2a,
-  0x58, 0x54, 0x57, 0x9e, 0x79, 0x33, 0x10, 0x2f, 0x18, 0xb0, 0x1a, 0x46,
-  0x41, 0x5e, 0xdc, 0x08, 0x10, 0x04, 0x12, 0xb1, 0x38, 0x0e, 0x5a, 0x04,
-  0x5f, 0xf7, 0x92, 0x1c, 0x7a, 0x91, 0x7c, 0xc0, 0xbc, 0xef, 0xcc, 0x7d,
-  0xbe, 0x18, 0x27, 0x5f, 0x66, 0x37, 0x69, 0x95, 0xfd, 0x8b, 0x3b, 0xbb,
-  0x5f, 0x0a, 0x92, 0x38, 0x4b, 0xf0, 0xb1, 0x44, 0x42, 0x10, 0xd9, 0x96,
-  0xc6, 0x15, 0xb3, 0x4e, 0xad, 0xb2, 0x30, 0x57, 0x76, 0x22, 0x92, 0xa4,
-  0x75, 0xc4, 0x58, 0xd5, 0xdb, 0x66, 0x98, 0xc7, 0x28, 0xc4, 0x13, 0x9e,
-  0x42, 0xb8, 0x38, 0x77, 0xc8, 0xfb, 0x96, 0x31, 0x80, 0x3e, 0x49, 0x0d,
-  0x25, 0xd3, 0xd9, 0xe0, 0xaf, 0x70, 0x68, 0x7d, 0xf6, 0x62, 0xd0, 0xe2,
-  0x13, 0xb1, 0xb2, 0xcf, 0x35, 0x73, 0xde, 0xb6, 0x9a, 0x25, 0xdc, 0x16,
-  0x37, 0x52, 0x76, 0xcb, 0xa8, 0xca, 0x44, 0x53, 0x37, 0x79, 0xb1, 0xbf,
-  0x27, 0x6b, 0xe1, 0x6d, 0xcf, 0xe8, 0x85, 0xc2, 0xa9, 0x8f, 0xd2, 0x4b,
-  0x34, 0x14, 0x75, 0xe2, 0xb5, 0x4a, 0xdc, 0xf3, 0xfa, 0xbe, 0xc3, 0x2b,
-  0x2f, 0xe8, 0x15, 0x29, 0x8a, 0xad, 0x11, 0x92, 0x3e, 0x1c, 0x87, 0x5a,
-  0x60, 0x3b, 0x74, 0x0c, 0x3b, 0x2a, 0xf3, 0xd7, 0xf3, 0x79, 0x5a, 0x7c,
-  0xb0, 0x71, 0xeb, 0xdc, 0x92, 0x39, 0x18, 0xab, 0x8a, 0x53, 0xe2, 0xdd,
-  0x87, 0x12, 0x35, 0x49, 0x57, 0x76, 0x50, 0x8e, 0x0f, 0x12, 0xf3, 0x22,
-  0xad, 0x90, 0xb0, 0x4a, 0x6b, 0x26, 0x41, 0xf5, 0xfe, 0x9e, 0xd8, 0x6a,
-  0xdd, 0x4c, 0xc8, 0xdf, 0x10, 0x21, 0xf3, 0x73, 0xe1, 0xe5, 0xca, 0x51,
-  0x05, 0x9c, 0xaa, 0xab, 0x01, 0xfa, 0x3d, 0x84, 0x0d, 0x27, 0x3b, 0xa4,
-  0x0f, 0x70, 0x58, 0x0a, 0xf4, 0x5d, 0x2c, 0x9b, 0x3b, 0x2b, 0xa7, 0x90,
-  0x45, 0xa7, 0xbb, 0xc4, 0x9b, 0x83, 0xc1, 0x96, 0x2d, 0x37, 0x11, 0xd8,
-  0xd3, 0x16, 0xa5, 0x82, 0xee, 0xc8, 0x24, 0x50, 0xcb, 0x20, 0x83, 0x8c,
-  0xcb, 0x51, 0x7d, 0x5e, 0x05, 0x18, 0x1b, 0x68, 0x41, 0xd8, 0x30, 0x74,
-  0xc7, 0x75, 0xa5, 0x72, 0x2c, 0x6f, 0xa2, 0xa1, 0xf6, 0x16, 0x9a, 0x26,
-  0xa3, 0x28, 0x6e, 0x5f, 0x08, 0xaa, 0x97, 0xb0, 0x2e, 0x6c, 0x0e, 0x92,
-  0xc1, 0xd6, 0xef, 0x18, 0x30, 0x61, 0xb1, 0xfb, 0xcd, 0x95, 0x69, 0x7e,
-  0x1e, 0xa8, 0x7f, 0xb6, 0xef, 0xf2, 0x6c, 0x04, 0x56, 0xb2, 0x8d, 0xc2,
-  0x4c, 0x1e, 0x5d, 0x91, 0xca, 0x2f, 0x5c, 0xe1, 0x41, 0xe7, 0x45, 0x8e,
-  0x85, 0x4d, 0x8c, 0x93, 0x13, 0xa7, 0xcb, 0x17, 0x43, 0x82, 0x71, 0x6f,
-  0xaa, 0xa9, 0x22, 0x5b, 0xe3, 0x77, 0x89, 0x07, 0x4e, 0xe7, 0xb1, 0x15,
-  0xa0, 0x8a, 0xef, 0x39, 0x95, 0x95, 0xa8, 0x63, 0xa3, 0xd3, 0x10, 0x7c,
-  0xa9, 0x2d, 0x60, 0x68, 0xc7, 0x10, 0x82, 0xc4, 0x67, 0xa4, 0x41, 0xb8,
-  0x3f, 0x4f, 0x22, 0x5e, 0x6b, 0x9e, 0xa5, 0x15, 0x76, 0x97, 0x93, 0x10,
-  0xad, 0x8f, 0xd7, 0x12, 0xa1, 0x31, 0x37, 0x7b, 0xc7, 0xb1, 0x44, 0xae,
-  0xde, 0x91, 0xb9, 0x4f, 0xca, 0x62, 0x18, 0x60, 0xf1, 0x21, 0x1e, 0x82,
-  0x0d, 0x7e, 0x08, 0x34, 0x5d, 0xf8, 0x25, 0x14, 0x59, 0x2f, 0xa6, 0xf7,
-  0xf4, 0xf8, 0xf9, 0x3d, 0xe3, 0xac, 0xf4, 0xa3, 0x31, 0x48, 0xe5, 0x68,
-  0xdd, 0x0c, 0x43, 0x54, 0x43, 0xce, 0xf3, 0x0c, 0xa6, 0x64, 0xd8, 0xbd,
-  0x30, 0x1d, 0x81, 0x06, 0xcc, 0xd9, 0xa9, 0x5e, 0xfb, 0x0a, 0xfe, 0x55,
-  0x3e, 0xcb, 0x7c, 0xd3, 0x93, 0xe0, 0x2b, 0x9a, 0x43, 0x14, 0x28, 0x2b,
-  0x38, 0x40, 0x74, 0x0e, 0xcc, 0x0a, 0x53, 0x5d, 0x03, 0xc4, 0x67, 0x21,
-  0x06, 0xd7, 0x45, 0xbc, 0x53, 0x8d, 0xbf, 0x82, 0x4d, 0x2a, 0xa5, 0xc5,
-  0xc9, 0x34, 0xfb, 0x13, 0xe2, 0xdc, 0xce, 0x18, 0xdf, 0xbd, 0xd6, 0x32,
-  0x0f, 0xb2, 0x40, 0x77, 0x08, 0xb1, 0xe5, 0xcb, 0x03, 0xd1, 0xc3, 0x86,
-  0x69, 0x73, 0x29, 0x06, 0x2c, 0x50, 0xad, 0x0b, 0x1f, 0xa9, 0x39, 0xcd,
-  0x33, 0x55, 0xac, 0x6e, 0x1f, 0x75, 0xde, 0x9c, 0x85, 0xeb, 0x9c, 0xd7,
-  0x9e, 0x81, 0x27, 0xcf, 0xab, 0x3c, 0xbb, 0x80, 0xc6, 0x48, 0x33, 0x92,
-  0xb8, 0xe4, 0xc0, 0x64, 0x97, 0xa5, 0x9c, 0x69, 0x08, 0xd1, 0x0c, 0x19,
-  0xf7, 0x39, 0x59, 0xed, 0x98, 0xed, 0xdb, 0x52, 0xdd, 0x5c, 0x22, 0x05,
-  0x89, 0xb4, 0x5a, 0x6f, 0x92, 0xb3, 0xe2, 0xa2, 0x41, 0xbf, 0x60, 0x6f,
-  0x6a, 0x6e, 0x06, 0x75, 0x15, 0x38, 0xc5, 0x7c, 0xa0, 0x91, 0xfb, 0x88,
-  0x1e, 0xf9, 0xe6, 0x10, 0xd1, 0xd2, 0xab, 0x16, 0x1e, 0x2f, 0x36, 0x80,
-  0x55, 0xfa, 0x36, 0xab, 0x8c, 0xe4, 0x51, 0xd6, 0xc9, 0x77, 0x8f, 0xd5,
-  0xff, 0xa3, 0xd0, 0x11, 0x2c, 0x06, 0xda, 0x8c, 0x68, 0xe2, 0x56, 0x3c,
-  0xf4, 0xc0, 0x77, 0xc4, 0x19, 0x40, 0xcc, 0xa0, 0xf5, 0x75, 0x5f, 0x1e,
-  0xf4, 0xa9, 0x94, 0x8f, 0x9c, 0xf9, 0xc4, 0x90, 0x9f, 0xf9, 0x33, 0x5e,
-  0x9c, 0x5c, 0x3a, 0x25, 0x27, 0x8e, 0x56, 0x64, 0x34, 0x7b, 0x5b, 0x9e,
-  0x37, 0x29, 0xa1, 0xec, 0x27, 0x6e, 0xe0, 0xc9, 0x59, 0x0e, 0x5b, 0xdb,
-  0xd8, 0x32, 0xf4, 0x68, 0x62, 0x98, 0x44, 0x3e, 0xb9, 0x92, 0x16, 0x9d,
-  0xc8, 0x15, 0x88, 0xf0, 0xf5, 0x15, 0xa4, 0x60, 0x08, 0x67, 0xd1, 0x32,
-  0x80, 0x9c, 0xb0, 0x26, 0x22, 0xc0, 0x9b, 0xb3, 0xe3, 0xd7, 0x82, 0xbe,
-  0xe2, 0xd8, 0x9c, 0x48, 0x3d, 0xce, 0x22, 0x21, 0x6c, 0x87, 0xa9, 0x2a,
-  0xc4, 0x6f, 0xd1, 0xc5, 0x50, 0xe7, 0x25, 0xa3, 0x07, 0x61, 0xd9, 0xb4,
-  0x3a, 0x65, 0x25, 0xa9, 0x8f, 0x6a, 0x0b, 0x91, 0x45, 0x8d, 0xb8, 0x11,
-  0x40, 0x84, 0x35, 0xed, 0x3d, 0xd9, 0xa9, 0xcc, 0x45, 0x61, 0x18, 0xcd,
-  0xba, 0x9a, 0x20, 0xb8, 0xca, 0x95, 0x1f, 0x7a, 0x3d, 0xf3, 0x4c, 0xc0,
-  0x62, 0xb8, 0x1e, 0x54, 0xf2, 0xb2, 0xbc, 0x29, 0x46, 0xc7, 0x48, 0x4e,
-  0x4f, 0x8e, 0xcb, 0x4b, 0xb3, 0x54, 0x6f, 0xa2, 0x26, 0xb3, 0x77, 0xa7,
-  0x6f, 0x92, 0x4d, 0x88, 0x16, 0xc0, 0x14, 0x11, 0x7c, 0x50, 0x3c, 0xb9,
-  0x25, 0xfa, 0x5d, 0xed, 0x0a, 0x6a, 0x52, 0x01, 0xcd, 0xa3, 0x1f, 0x5e,
-  0xbc, 0x3e, 0x3d, 0x3e, 0xfa, 0x89, 0x83, 0x9d, 0x82, 0xe9, 0xe0, 0xe3,
-  0x2f, 0x3c, 0x85, 0x97, 0xdc, 0x63, 0xf0, 0xf9, 0x9a, 0x71, 0xdc, 0xf5,
-  0x5e, 0xe5, 0xc2, 0x1a, 0x1d, 0xf8, 0xc9, 0xe9, 0xab, 0x91, 0x82, 0x7b,
-  0x12, 0xcf, 0x42, 0xe5, 0xd2, 0x8a, 0x91, 0xca, 0xb4, 0x90, 0xd7, 0xb7,
-  0xa1, 0x27, 0x50, 0x4f, 0xc4, 0x30, 0x79, 0xa3, 0xa1, 0xa5, 0x43, 0xda,
-  0x71, 0x1c, 0xc1, 0x97, 0x39, 0xd5, 0x50, 0xed, 0x46, 0x05, 0x8a, 0xf2,
-  0x47, 0xb6, 0x8c, 0x00, 0x37, 0x17, 0xf7, 0x8a, 0x45, 0x36, 0xad, 0xb3,
-  0x39, 0xdb, 0x8e, 0x7b, 0x6f, 0x48, 0x62, 0x06, 0xb4, 0x8d, 0x48, 0x3e,
-  0x0a, 0xfc, 0x94, 0x92, 0x8c, 0x74, 0x6e, 0xef, 0x33, 0x51, 0x09, 0x99,
-  0x46, 0xf8, 0x5e, 0xe8, 0x56, 0x66, 0x3d, 0x48, 0x06, 0xa3, 0x55, 0x72,
-  0x30, 0xf8, 0x1d, 0x45, 0x04, 0xdf, 0xcc, 0x1e, 0x29, 0x06, 0x29, 0xee,
-  0x4a, 0xb5, 0xc3, 0x4b, 0x55, 0x22, 0x4f, 0xe0, 0x27, 0xe4, 0x06, 0x43,
-  0x41, 0xe6, 0xa8, 0xcb, 0xed, 0x4b, 0xc9, 0x8d, 0x97, 0x11, 0xe8, 0xad,
-  0x82, 0xf8, 0x12, 0x1b, 0xdf, 0x60, 0xcc, 0xda, 0x30, 0x6c, 0x80, 0x7d,
-  0x28, 0x60, 0xf1, 0x03, 0x72, 0x0c, 0x8b, 0xf6, 0x5a, 0xce, 0x8c, 0x38,
-  0xfe, 0x82, 0xdd, 0x3f, 0x94, 0x3c, 0x1e, 0x36, 0x47, 0x6b, 0xb5, 0xf1,
-  0xf9, 0x86, 0x38, 0xb8, 0x07, 0x22, 0xbe, 0x81, 0x57, 0x0f, 0x58, 0x46,
-  0x87, 0xec, 0x8f, 0xd1, 0x9b, 0x13, 0xbf, 0xf1, 0x7c, 0xc3, 0x7a, 0xc2,
-  0x07, 0x51, 0x29, 0x94, 0xdf, 0xf3, 0xea, 0xba, 0xea, 0xdb, 0x89, 0x4d,
-  0x58, 0x30, 0xb7, 0xa6, 0xb9, 0xbf, 0xd8, 0x24, 0x89, 0x22, 0xee, 0x5a,
-  0x21, 0x9e, 0x12, 0x5e, 0xbb, 0xa6, 0x44, 0x7f, 0xe4, 0x32, 0xd6, 0x7f,
-  0xd5, 0xb1, 0x6a, 0xb9, 0x91, 0x74, 0x4e, 0xfe, 0x20, 0xa9, 0xa8, 0xce,
-  0xda, 0x2c, 0x85, 0x17, 0xf7, 0xc8, 0x43, 0x1c, 0x2f, 0x0c, 0xcb, 0x04,
-  0x09, 0xfb, 0xd1, 0x24, 0xd4, 0x6e, 0x82, 0x27, 0x39, 0x15, 0x43, 0xdb,
-  0xb1, 0x57, 0xb8, 0xc9, 0xb4, 0xbc, 0x51, 0xa1, 0x3c, 0x61, 0x09, 0x0b,
-  0x2b, 0xf6, 0xb0, 0xf7, 0xa4, 0xaa, 0x5d, 0xdd, 0x51, 0x1e, 0xdf, 0xb6,
-  0x1a, 0xbd, 0x47, 0x42, 0x39, 0x1e, 0x14, 0x71, 0x40, 0x14, 0xeb, 0x61,
-  0x4f, 0xaa, 0xbe, 0xb0, 0x65, 0xf5, 0xca, 0xb9, 0x8c, 0x57, 0x71, 0x54,
-  0x6b, 0xa2, 0x79, 0xcc, 0xc6, 0xed, 0x27, 0x6c, 0xdb, 0x7c, 0x16, 0x29,
-  0x29, 0x42, 0x7e, 0x04, 0xaa, 0x72, 0xd3, 0x9f, 0x19, 0x4b, 0xcb, 0xe4,
-  0xd6, 0x69, 0xdc, 0x5f, 0x2a, 0xc4, 0x8e, 0x2f, 0x1e, 0xd1, 0x1b, 0xf5,
-  0x49, 0x7d, 0x27, 0xa7, 0xaa, 0x0e, 0x55, 0xc9, 0x97, 0xe2, 0xb5, 0xf4,
-  0x5d, 0x81, 0x92, 0x7f, 0xca, 0x26, 0x5b, 0x51, 0xc3, 0x34, 0x38, 0x42,
-  0x63, 0x36, 0x72, 0x72, 0xad, 0xd4, 0xe3, 0x98, 0x08, 0xcb, 0x32, 0x29,
-  0x13, 0x9d, 0x0b, 0x8a, 0x21, 0x69, 0x15, 0xae, 0x4c, 0x6d, 0x42, 0xa2,
-  0xa4, 0x86, 0xb6, 0xed, 0x88, 0x5f, 0x9b, 0x6e, 0x8f, 0xfd, 0x6a, 0x46,
-  0x96, 0x82, 0x3b, 0x09, 0x63, 0x82, 0xfd, 0xd9, 0x34, 0xfe, 0x41, 0x63,
-  0x41, 0xb9, 0x72, 0x79, 0x36, 0x5d, 0x35, 0xed, 0xbc, 0x4a, 0x6f, 0x4c,
-  0x02, 0xc2, 0x47, 0x43, 0xda, 0xa4, 0x83, 0xa0, 0xfa, 0xf6, 0xa9, 0x22,
-  0xa8, 0x1d, 0x0c, 0xb6, 0xc4, 0x85, 0xce, 0x55, 0x83, 0x2d, 0xb4, 0x5a,
-  0xcc, 0x39, 0xae, 0x43, 0xae, 0x32, 0xb6, 0x65, 0xbb, 0x48, 0x91, 0x68,
-  0xf7, 0x86, 0x46, 0xab, 0x68, 0xef, 0x5f, 0xb1, 0xe1, 0xd3, 0xeb, 0x5c,
-  0x2e, 0xfe, 0xa9, 0xda, 0x44, 0xeb, 0xe0, 0x28, 0x07, 0x3d, 0x97, 0x17,
-  0x64, 0x91, 0x78, 0x71, 0x6d, 0xa8, 0x9b, 0x6c, 0x15, 0xfa, 0xaa, 0x2e,
-  0x7e, 0x60, 0x8b, 0x4e, 0xe7, 0xcd, 0xa8, 0xbe, 0x9e, 0xc6, 0xf3, 0x60,
-  0x24, 0xc3, 0xd6, 0xa2, 0xe2, 0xbc, 0x30, 0x0f, 0x4f, 0xae, 0xa7, 0x07,
-  0xb6, 0x3a, 0x5e, 0x6d, 0x59, 0x44, 0xe8, 0x70, 0xac, 0xef, 0x8a, 0xe9,
-  0xd5, 0xcb, 0x37, 0x93, 0x78, 0xd3, 0x44, 0xd4, 0x5a, 0x8a, 0x16, 0x20,
-  0xb0, 0x78, 0xda, 0xdc, 0x45, 0xc0, 0x4f, 0x65, 0xc5, 0x43, 0x70, 0x67,
-  0x91, 0x35, 0xf1, 0xc2, 0xfb, 0x36, 0xde, 0x5c, 0xfb, 0x15, 0x6b, 0x8d,
-  0xc3, 0xfd, 0xc2, 0x67, 0x59, 0xc4, 0x0f, 0x72, 0x7d, 0x8c, 0x52, 0xac,
-  0x08, 0xcf, 0x29, 0xde, 0x5c, 0x73, 0x05, 0x9f, 0x8d, 0xa1, 0x2a, 0x69,
-  0xb1, 0xea, 0x0f, 0xb6, 0x3a, 0x37, 0xc4, 0x31, 0xcf, 0x5b, 0x4b, 0xe5,
-  0x20, 0x17, 0xe4, 0x4b, 0x0d, 0xa2, 0x51, 0x4f, 0xb2, 0xfa, 0xd5, 0x82,
-  0xc6, 0x0e, 0xaf, 0xd2, 0xea, 0xb0, 0x2c, 0xae, 0xe3, 0xa3, 0xea, 0xc4,
-  0x24, 0xb1, 0x21, 0xc4, 0xeb, 0x77, 0x6a, 0xde, 0x4e, 0xa7, 0x0d, 0x21,
-  0x4d, 0x12, 0xb6, 0xaa, 0x86, 0x21, 0xc6, 0x9b, 0xdb, 0x24, 0x0f, 0xc5,
-  0xd1, 0x97, 0x87, 0x2f, 0x5f, 0x1d, 0x6e, 0x75, 0x47, 0xf2, 0x92, 0x90,
-  0x00, 0x84, 0xf7, 0xf0, 0x75, 0xc3, 0x1b, 0x65, 0xc9, 0xce, 0x1b, 0x04,
-  0x3d, 0x2c, 0x7a, 0x17, 0x0b, 0x48, 0x3d, 0x5d, 0x2e, 0x90, 0x73, 0x49,
-  0x35, 0xa8, 0x88, 0x3f, 0x7d, 0xd0, 0xa0, 0x85, 0x45, 0xb6, 0x80, 0xff,
-  0xd3, 0xde, 0xd0, 0x0c, 0xfd, 0x48, 0x22, 0x1e, 0x75, 0x3e, 0x8a, 0x37,
-  0x37, 0x83, 0x1c, 0x89, 0xfb, 0x9e, 0xd3, 0x08, 0xfe, 0xa5, 0x3b, 0x89,
-  0x4b, 0x94, 0xa3, 0x13, 0x56, 0x44, 0xc3, 0x1d, 0x41, 0xda, 0x8d, 0x94,
-  0x9c, 0x73, 0xbc, 0xc9, 0x68, 0x3c, 0x50, 0xaf, 0x38, 0xef, 0x3c, 0xde,
-  0xab, 0x05, 0xf8, 0x3a, 0x7c, 0xfb, 0xe2, 0xb5, 0x21, 0x33, 0x76, 0xb6,
-  0x86, 0x31, 0x63, 0xb4, 0x34, 0xe6, 0x63, 0x1a, 0x45, 0xb0, 0xd5, 0x02,
-  0xf4, 0x1e, 0xef, 0x42, 0x51, 0xe0, 0x19, 0x58, 0x98, 0x9d, 0x4b, 0x41,
-  0x0b, 0xdf, 0x4c, 0xce, 0x26, 0xfa, 0x8f, 0x8e, 0x29, 0xb7, 0x75, 0x2a,
-  0xc3, 0xc7, 0x0d, 0xcd, 0xed, 0xf1, 0x3f, 0xdb, 0x7b, 0xf6, 0x05, 0x9b,
-  0x19, 0xab, 0xeb, 0x33, 0x8e, 0xbc, 0xb6, 0x2f, 0xaf, 0xed, 0xaf, 0x7b,
-  0x2d, 0xf2, 0xde, 0x84, 0x4d, 0x67, 0xf7, 0x71, 0x80, 0x3c, 0x12, 0x65,
-  0xb7, 0x16, 0xbc, 0xf7, 0xe5, 0x9b, 0x76, 0x03, 0xd6, 0x91, 0x88, 0x6f,
-  0x46, 0x9a, 0x5a, 0x2b, 0x92, 0x8c, 0xa7, 0x88, 0x44, 0xac, 0x76, 0xa7,
-  0xd7, 0x4f, 0xc4, 0x93, 0x0a, 0x9e, 0x81, 0x8d, 0xa4, 0x8f, 0xac, 0xc0,
-  0x1b, 0xbc, 0xa1, 0x9a, 0x62, 0x7c, 0x52, 0xbe, 0x02, 0x1c, 0x56, 0x06,
-  0xe8, 0xdf, 0xcb, 0xe3, 0xb4, 0xba, 0xcc, 0x22, 0xbe, 0xfe, 0x60, 0xad,
-  0xec, 0x54, 0x5d, 0x2c, 0x86, 0xb9, 0x3d, 0xe7, 0x78, 0x9d, 0x7d, 0x9a,
-  0x43, 0x71, 0x6d, 0xd2, 0x47, 0x55, 0x1f, 0x7b, 0x33, 0x73, 0xdd, 0xfb,
-  0xfa, 0xcb, 0x60, 0x18, 0x86, 0x5a, 0x7f, 0x01, 0xef, 0xb6, 0x0c, 0x6c,
-  0x96, 0xf9, 0xbc, 0x6b, 0xf3, 0x3a, 0x4f, 0x93, 0xcb, 0x5f, 0xf2, 0x25,
-  0x25, 0xd4, 0x22, 0x16, 0x77, 0x8b, 0xee, 0x6e, 0x1b, 0x88, 0x18, 0xef,
-  0x8e, 0x07, 0x64, 0x19, 0xdf, 0xfa, 0x95, 0x78, 0x0d, 0x7f, 0xed, 0x64,
-  0x72, 0xfc, 0xe0, 0x85, 0x50, 0x07, 0xef, 0xfa, 0x98, 0x58, 0xd2, 0xb7,
-  0xe4, 0x9f, 0x8f, 0xd9, 0x18, 0xbc, 0xf0, 0xfe, 0xfb, 0x2f, 0xe3, 0xa3,
-  0xa1, 0xd6, 0x66, 0x19, 0xb2, 0xf7, 0xb5, 0xbc, 0xc2, 0x4d, 0x5e, 0x18,
-  0xad, 0x70, 0x66, 0x6e, 0xc8, 0xf9, 0x92, 0x6f, 0xc8, 0xfe, 0xb6, 0x4f,
-  0x81, 0xa6, 0xc9, 0xff, 0xe0, 0xb9, 0x2b, 0xe5, 0xe3, 0xa7, 0xab, 0xf3,
-  0xb9, 0x59, 0xfb, 0xc9, 0xea, 0xe2, 0x22, 0xbf, 0x4d, 0x8e, 0xf3, 0xba,
-  0x11, 0x26, 0x49, 0x6a, 0x82, 0xa2, 0x3c, 0xe5, 0xf5, 0x9a, 0x5b, 0x82,
-  0xe3, 0x94, 0xe9, 0x84, 0xb6, 0x72, 0xa5, 0x1c, 0x72, 0x00, 0x4b, 0x76,
-  0x83, 0x25, 0xf7, 0x55, 0xaf, 0x2e, 0x46, 0x7d, 0x9b, 0x77, 0x9b, 0xd5,
-  0xa1, 0xa2, 0xc7, 0x05, 0x32, 0xf5, 0x9f, 0x8f, 0x59, 0xd1, 0x09, 0xcf,
-  0x1a, 0xff, 0xf8, 0x61, 0xf2, 0x00, 0xc3, 0xc0, 0xe5, 0xef, 0x70, 0x6c,
-  0xc9, 0xc8, 0xa9, 0xcd, 0x0c, 0x19, 0x8d, 0x26, 0x0c, 0x18, 0xf3, 0xd9,
-  0x0d, 0x83, 0x69, 0x0f, 0xc9, 0xff, 0x37, 0xa1, 0x35, 0x33, 0x02, 0x75,
-  0x0c, 0x33, 0x65, 0x82, 0xc2, 0x41, 0xfc, 0xcf, 0xda, 0xb1, 0x4a, 0x52,
-  0x58, 0x8f, 0x74, 0x44, 0x99, 0x76, 0x13, 0x46, 0xf4, 0x7a, 0xcb, 0xe1,
-  0x3a, 0xa7, 0xa2, 0x74, 0x6f, 0xad, 0x5b, 0x92, 0x9e, 0x85, 0x36, 0x3b,
-  0x1f, 0xc5, 0x8b, 0xc4, 0x45, 0xf9, 0x9a, 0x2e, 0xc8, 0xf8, 0x8b, 0x7c,
-  0x55, 0xcb, 0x15, 0x6a, 0xaf, 0xd5, 0xb5, 0xf3, 0x7a, 0x57, 0xe4, 0xf0,
-  0xba, 0xf4, 0x64, 0x3f, 0xf3, 0x97, 0x96, 0x15, 0x9b, 0xd1, 0x8b, 0x09,
-  0x24, 0xd6, 0xce, 0xed, 0x84, 0x82, 0xd3, 0xea, 0xde, 0xb6, 0x6e, 0x25,
-  0x7c, 0xad, 0x6e, 0x5f, 0x52, 0x3d, 0x62, 0xe3, 0x2f, 0x75, 0x33, 0xbb,
-  0x8f, 0x03, 0xe1, 0x99, 0x2d, 0x0a, 0xcb, 0xf1, 0x63, 0xa0, 0x99, 0xcd,
-  0xc4, 0x87, 0x71, 0x1f, 0xef, 0x19, 0xdd, 0x40, 0x2f, 0x22, 0x98, 0x31,
-  0xb8, 0x3a, 0x93, 0xe7, 0xac, 0x01, 0x7d, 0x1e, 0x31, 0x3c, 0x48, 0xb1,
-  0x74, 0x41, 0x80, 0xf1, 0x75, 0x25, 0xd2, 0x3a, 0xc9, 0xf5, 0x96, 0xa2,
-  0xbc, 0xb4, 0x44, 0x68, 0xc3, 0x65, 0x33, 0x63, 0x6e, 0x1d, 0x26, 0x0c,
-  0x54, 0x6c, 0x3f, 0xe7, 0x36, 0xc4, 0x36, 0x27, 0x4e, 0x34, 0x0a, 0xbc,
-  0x35, 0x3d, 0xc0, 0x71, 0x4b, 0x46, 0x3a, 0xc6, 0x2b, 0x63, 0x9b, 0xac,
-  0xd1, 0x9e, 0x6f, 0x03, 0x3a, 0xe2, 0x64, 0x48, 0x38, 0x80, 0x3d, 0x0f,
-  0xb0, 0x62, 0xcc, 0xd4, 0xad, 0x9e, 0x02, 0xd3, 0x62, 0x5a, 0x47, 0x2c,
-  0x05, 0x0d, 0xd9, 0x6c, 0x06, 0x3c, 0xa2, 0x01, 0x21, 0x6a, 0xa8, 0xe7,
-  0x88, 0x42, 0x33, 0x55, 0xab, 0x65, 0xbd, 0x50, 0xdb, 0x16, 0x0b, 0x7a,
-  0x1a, 0x09, 0xb8, 0xd1, 0x31, 0x0e, 0xbe, 0xd0, 0x30, 0xcf, 0x01, 0xab,
-  0x95, 0x25, 0x5b, 0xb5, 0x34, 0xf1, 0xc0, 0xb6, 0x29, 0x4d, 0x46, 0x60,
-  0x66, 0x38, 0x6c, 0x8a, 0x52, 0x56, 0xb0, 0x6b, 0xa6, 0xc9, 0xd1, 0x20,
-  0xaa, 0x70, 0xd9, 0x05, 0xb0, 0x05, 0xbc, 0x5b, 0x66, 0x09, 0xed, 0x82,
-  0xbd, 0x35, 0x14, 0x01, 0xb6, 0x3a, 0xaf, 0x9b, 0xbc, 0x59, 0x85, 0x07,
-  0xf5, 0x5c, 0xb1, 0xc6, 0x09, 0x96, 0x87, 0x14, 0x08, 0x6c, 0x86, 0xc3,
-  0xce, 0x21, 0x33, 0x04, 0x62, 0x61, 0x1b, 0xaa, 0xd3, 0xc9, 0x01, 0xb6,
-  0xe7, 0x84, 0x36, 0x32, 0x2f, 0x6f, 0xba, 0x92, 0xd5, 0x0b, 0x68, 0xc0,
-  0x76, 0x74, 0xed, 0xa4, 0x5b, 0xf3, 0xf6, 0x9f, 0xff, 0x43, 0xbf, 0x7c,
-  0x8f, 0x95, 0xfa, 0x4f, 0x5d, 0x29, 0x8d, 0x49, 0x4f, 0x03, 0x6c, 0x18,
-  0xb2, 0xfd, 0x24, 0x7f, 0xa6, 0x55, 0xf9, 0x3b, 0x42, 0x1e, 0x79, 0x69,
-  0x80, 0xc1, 0x46, 0x0d, 0xfe, 0x79, 0x6c, 0x05, 0x1d, 0x69, 0x24, 0x05,
-  0xd8, 0x05, 0x29, 0xa3, 0xe7, 0x77, 0x81, 0xc9, 0x14, 0x64, 0xf8, 0x53,
-  0x31, 0xa4, 0xb2, 0x0d, 0x95, 0x19, 0xc9, 0x25, 0x79, 0x18, 0x00, 0x78,
-  0x45, 0xbb, 0xf8, 0x53, 0x25, 0x88, 0x6a, 0x46, 0xd7, 0x16, 0xb7, 0x21,
-  0x7f, 0x1e, 0x57, 0x7c, 0x35, 0xea, 0x4d, 0xac, 0x7d, 0x2d, 0x90, 0x3d,
-  0xd3, 0x4e, 0x5a, 0xcd, 0xac, 0xa1, 0xe8, 0x5c, 0x21, 0xaf, 0x38, 0x92,
-  0xeb, 0x3c, 0xf0, 0xae, 0x10, 0x30, 0x95, 0xc0, 0x9f, 0xe9, 0xcb, 0x5c,
-  0xd9, 0xd6, 0xc6, 0x6f, 0xfd, 0xf9, 0x3f, 0x38, 0x4a, 0xf8, 0x3f, 0xc3,
-  0x1b, 0xfd, 0xe4, 0xec, 0xe8, 0x80, 0x86, 0xf4, 0xe7, 0x51, 0x7d, 0xb7,
-  0x38, 0x2f, 0xe7, 0x72, 0xf0, 0xb0, 0xf8, 0x66, 0x01, 0xf5, 0x33, 0xa6,
-  0x12, 0x72, 0x97, 0x8f, 0x3c, 0xd4, 0xa6, 0x61, 0xb4, 0xce, 0x15, 0xec,
-  0x04, 0xe5, 0x94, 0xd3, 0xe8, 0x91, 0xc6, 0x64, 0x4e, 0xde, 0x9f, 0x13,
-  0x05, 0x62, 0x32, 0x3c, 0x81, 0x6c, 0xc6, 0x37, 0xce, 0x51, 0x62, 0x13,
-  0xc2, 0xa2, 0x2e, 0xca, 0xf5, 0x74, 0x9c, 0x5a, 0xed, 0x3e, 0x86, 0x77,
-  0x05, 0x7e, 0x61, 0x86, 0xf9, 0x9e, 0x32, 0xb5, 0x45, 0xf7, 0x39, 0xe4,
-  0xcf, 0x46, 0x67, 0xf4, 0x59, 0x29, 0xe5, 0x59, 0x1c, 0x68, 0xb8, 0xa6,
-  0xa2, 0x0d, 0x43, 0x40, 0x84, 0x24, 0x16, 0xb7, 0x0b, 0x1d, 0xc7, 0xf0,
-  0x99, 0x60, 0x9c, 0xb4, 0x07, 0x8b, 0xfa, 0xd2, 0x1b, 0x76, 0xab, 0xe0,
-  0xf0, 0x58, 0xc1, 0x63, 0x19, 0xa8, 0xf7, 0xf1, 0x78, 0x27, 0xd0, 0x3b,
-  0xb3, 0x5b, 0xb3, 0xb7, 0xb8, 0x7d, 0x5c, 0x13, 0x86, 0x99, 0x65, 0x15,
-  0x80, 0xd3, 0xdd, 0x97, 0x12, 0x25, 0xe8, 0x62, 0x30, 0x6c, 0xbb, 0xeb,
-  0x87, 0xdf, 0xd3, 0xa9, 0x72, 0xa3, 0xf7, 0x19, 0x15, 0x25, 0xc8, 0xaf,
-  0xb3, 0xf5, 0xcd, 0xb0, 0x7b, 0xd6, 0x88, 0x9d, 0x0b, 0x86, 0x65, 0xd7,
-  0x98, 0x75, 0x1f, 0x46, 0x8b, 0x21, 0x2b, 0x39, 0x10, 0x63, 0x7c, 0x5f,
-  0x73, 0xec, 0xaf, 0x24, 0x33, 0xaa, 0xc4, 0x33, 0xc2, 0x6c, 0x9d, 0x5f,
-  0x58, 0xfd, 0xa8, 0x41, 0x56, 0x21, 0x05, 0x51, 0xa2, 0xdd, 0x7b, 0xf6,
-  0xa8, 0x24, 0x97, 0x96, 0xcf, 0x70, 0x23, 0x41, 0x3b, 0x12, 0xaa, 0x8c,
-  0xf8, 0x9e, 0xf5, 0xcd, 0xb9, 0xe0, 0x1f, 0xf1, 0xf8, 0xbe, 0x82, 0x81,
-  0x9c, 0x02, 0xb5, 0x56, 0x6c, 0x5e, 0xcf, 0xa9, 0xea, 0xc3, 0x02, 0xde,
-  0x90, 0x48, 0x88, 0x4a, 0x12, 0xbb, 0xa5, 0x28, 0xb0, 0xe2, 0xdf, 0x86,
-  0x6e, 0x38, 0x6c, 0x51, 0x1a, 0x79, 0xb1, 0x43, 0xba, 0xa9, 0xeb, 0x9b,
-  0xe3, 0xa4, 0xa2, 0x27, 0xb1, 0x4d, 0x6d, 0x96, 0xef, 0x0d, 0x4d, 0x57,
-  0x77, 0xef, 0x11, 0x7a, 0x4f, 0x7b, 0xa6, 0xde, 0x3a, 0xfa, 0x80, 0x96,
-  0x96, 0x91, 0x5d, 0x56, 0x4b, 0xb4, 0x43, 0xc7, 0x73, 0x5e, 0xb2, 0x01,
-  0xe2, 0xbe, 0x69, 0x48, 0x70, 0x8b, 0x44, 0x69, 0xfb, 0x88, 0x67, 0x9b,
-  0xed, 0x42, 0xba, 0x8f, 0x82, 0x81, 0x21, 0xac, 0xee, 0xbd, 0xa3, 0xf1,
-  0x36, 0x89, 0xdb, 0xbc, 0x2d, 0x7a, 0x80, 0xe8, 0x89, 0x01, 0x99, 0x11,
-  0x05, 0x13, 0x2d, 0x04, 0xd1, 0xf9, 0x8f, 0xfc, 0x2a, 0xce, 0x13, 0xac,
-  0x11, 0xdc, 0x14, 0x0d, 0x67, 0x86, 0x89, 0x60, 0x41, 0xef, 0xdc, 0x84,
-  0x95, 0x7a, 0x82, 0x13, 0xb3, 0xfb, 0x29, 0xb0, 0x68, 0x38, 0x57, 0x2c,
-  0x4f, 0x6b, 0x3b, 0x42, 0x9e, 0x02, 0xb1, 0x02, 0x9a, 0xb0, 0x60, 0x51,
-  0xde, 0xcb, 0x3f, 0x38, 0xac, 0x16, 0x82, 0xd3, 0xb8, 0x67, 0x65, 0x38,
-  0x1b, 0xa2, 0xbb, 0x32, 0xfd, 0x0b, 0xa2, 0x73, 0x1e, 0xad, 0xef, 0x5b,
-  0x51, 0x3b, 0x37, 0xc5, 0x3b, 0x4e, 0xc6, 0x85, 0x2d, 0x8e, 0x7e, 0x21,
-  0x62, 0xe8, 0x40, 0x83, 0xde, 0x73, 0x6a, 0x5b, 0xfb, 0xbc, 0xd7, 0xb7,
-  0xcf, 0x36, 0xb3, 0x91, 0x99, 0x06, 0x3e, 0xf3, 0xd2, 0x1d, 0x59, 0x97,
-  0xa3, 0x74, 0x60, 0xcb, 0x7a, 0xe6, 0x77, 0x49, 0xb4, 0xc6, 0xd0, 0x9a,
-  0xee, 0x1f, 0xef, 0x44, 0xe8, 0xff, 0xef, 0x35, 0x75, 0x6b, 0xa5, 0x8d,
-  0xe4, 0xdf, 0x26, 0x27, 0x6f, 0x92, 0xf2, 0xfc, 0xef, 0x58, 0x5c, 0x76,
-  0xce, 0x23, 0xa5, 0xc2, 0x5e, 0x26, 0x1f, 0xb2, 0x48, 0xc6, 0x12, 0x25,
-  0x56, 0xbc, 0xcf, 0x97, 0x3e, 0xe3, 0x7b, 0x75, 0xea, 0xea, 0x9e, 0x0b,
-  0x23, 0xe6, 0xfc, 0x0b, 0x04, 0x7d, 0xc9, 0x07, 0xc4, 0x1e, 0xee, 0xdd,
-  0x91, 0x29, 0x63, 0xce, 0x90, 0x99, 0xd6, 0xcb, 0xc2, 0x1d, 0xa9, 0x7c,
-  0xaa, 0x56, 0x5b, 0xd8, 0x64, 0x1e, 0x45, 0xa2, 0x50, 0x93, 0xd0, 0x98,
-  0xd3, 0x3e, 0x7f, 0x7b, 0xcf, 0x22, 0x0b, 0xc3, 0x73, 0xe2, 0xda, 0x64,
-  0x3a, 0x27, 0x9e, 0x40, 0xab, 0xa4, 0x60, 0x7b, 0x26, 0xde, 0x50, 0xef,
-  0x99, 0x93, 0x87, 0x1c, 0x7f, 0xef, 0x50, 0x14, 0xe4, 0xc3, 0x5b, 0x5e,
-  0xa2, 0x10, 0xf9, 0x5c, 0xa3, 0x31, 0x3a, 0xe3, 0x60, 0x4d, 0xe6, 0xfe,
-  0xe5, 0x95, 0xd8, 0xb0, 0xd6, 0x9d, 0xbb, 0x17, 0x19, 0x85, 0x99, 0xf0,
-  0x7b, 0x5b, 0x74, 0xc7, 0x08, 0x48, 0x3c, 0x7f, 0x2c, 0x80, 0x91, 0x0e,
-  0x5d, 0x39, 0x1e, 0xc0, 0xe4, 0xea, 0x68, 0x64, 0x20, 0x51, 0xb5, 0x26,
-  0x89, 0x68, 0x39, 0x9d, 0xc3, 0xb2, 0x1f, 0x1d, 0x83, 0xfa, 0x0d, 0xdd,
-  0xd1, 0x97, 0x7d, 0xb0, 0x4c, 0xb1, 0xe3, 0x59, 0xf4, 0xd6, 0x64, 0xfd,
-  0x18, 0x14, 0x4c, 0x6e, 0x13, 0x51, 0x0d, 0x29, 0x85, 0x8c, 0x22, 0xd6,
-  0x32, 0x0d, 0x90, 0x75, 0xc3, 0x17, 0x39, 0x3b, 0x07, 0x30, 0x3a, 0x94,
-  0x9d, 0xed, 0x40, 0xb6, 0x09, 0xe7, 0x76, 0x55, 0xb3, 0x2f, 0xe7, 0xd5,
-  0x04, 0x72, 0x65, 0x20, 0x93, 0x27, 0xb1, 0x88, 0xf5, 0xce, 0x8e, 0xec,
-  0xf7, 0xec, 0x88, 0x76, 0x5d, 0xdb, 0x1d, 0xa1, 0x95, 0xd0, 0x0f, 0x99,
-  0x13, 0x42, 0x1a, 0xbb, 0x28, 0x91, 0x65, 0xe2, 0x28, 0xe5, 0xd7, 0xd0,
-  0x45, 0x74, 0x4f, 0x0c, 0xad, 0x93, 0xf4, 0xe6, 0x1f, 0x7e, 0x0a, 0x0b,
-  0xb1, 0x22, 0xa4, 0x55, 0x46, 0x48, 0x98, 0xd5, 0xd4, 0x53, 0x2d, 0x7f,
-  0x70, 0xcf, 0x55, 0x20, 0x97, 0x90, 0x28, 0x15, 0xd0, 0xe0, 0xd3, 0x84,
-  0x92, 0x6a, 0x7e, 0xc9, 0xaa, 0x52, 0x84, 0xc9, 0xc4, 0x2b, 0x37, 0xf0,
-  0xab, 0x44, 0x3b, 0x62, 0xf2, 0xef, 0xeb, 0x7a, 0x0e, 0x4e, 0x9c, 0x5f,
-  0xdc, 0x99, 0x65, 0xad, 0x7b, 0x71, 0xdf, 0xfc, 0x99, 0xf2, 0x73, 0xca,
-  0x05, 0x3c, 0x73, 0xf4, 0x06, 0x97, 0xc1, 0x59, 0x66, 0x88, 0xc9, 0x8c,
-  0x57, 0xeb, 0xe9, 0xb2, 0x04, 0x48, 0x89, 0xd4, 0xbd, 0x8b, 0xef, 0x90,
-  0x6b, 0xcc, 0xca, 0xe0, 0xe3, 0x64, 0x47, 0x0c, 0x7c, 0xf7, 0x2e, 0x5c,
-  0xab, 0x25, 0x34, 0xe2, 0x82, 0x9a, 0xda, 0x9b, 0xfa, 0x38, 0x76, 0xd8,
-  0x95, 0x82, 0xde, 0x93, 0x99, 0x90, 0xc3, 0x90, 0x24, 0xd3, 0xcb, 0x1e,
-  0x13, 0x34, 0x4a, 0xa7, 0x5d, 0x43, 0x89, 0x46, 0xc7, 0x10, 0xd5, 0xe6,
-  0x91, 0xea, 0x1f, 0x49, 0xa8, 0xbe, 0x70, 0x3d, 0x5a, 0xc9, 0x7c, 0x52,
-  0x72, 0xdd, 0x2c, 0x05, 0xb6, 0x61, 0x04, 0xb8, 0x89, 0x11, 0x7d, 0x51,
-  0x27, 0x7d, 0x36, 0x4c, 0x8f, 0x3f, 0x6e, 0x0d, 0x55, 0x59, 0x52, 0x0d,
-  0x48, 0x42, 0x2b, 0x09, 0xf8, 0x9a, 0xc4, 0x92, 0x29, 0x4a, 0x37, 0x52,
-  0x0c, 0x75, 0xfa, 0xc9, 0x83, 0x4e, 0xb3, 0x94, 0x34, 0x26, 0x23, 0xc6,
-  0x25, 0x81, 0x84, 0x96, 0x9d, 0xe3, 0x60, 0x64, 0x9e, 0xc8, 0xca, 0x01,
-  0xb8, 0xac, 0x75, 0x1c, 0xde, 0xf2, 0x47, 0x07, 0x36, 0xb2, 0xd6, 0xc6,
-  0x59, 0xa9, 0x8a, 0xf4, 0x31, 0xf4, 0xfb, 0x24, 0xba, 0x5d, 0x10, 0x30,
-  0xed, 0x0d, 0x7c, 0xe6, 0xe7, 0x56, 0x9a, 0x8b, 0xb8, 0x73, 0x0f, 0xff,
-  0xfa, 0xcb, 0xca, 0x5d, 0xba, 0x72, 0xe7, 0xd2, 0x95, 0x5b, 0x56, 0x7a,
-  0xab, 0x7e, 0x84, 0x30, 0xfe, 0xac, 0x7f, 0x1a, 0x7a, 0xe9, 0xfa, 0xd3,
-  0xf8, 0xa3, 0xef, 0xdc, 0xb6, 0xfc, 0xfa, 0xbb, 0x88, 0xdf, 0x8e, 0xb7,
-  0x19, 0x61, 0x53, 0x4b, 0xa9, 0xb8, 0x5a, 0x2a, 0x03, 0xab, 0x01, 0x0c,
-  0xb6, 0x3e, 0x46, 0xc8, 0x8c, 0x11, 0xa5, 0x64, 0xee, 0xf8, 0x44, 0x89,
-  0x83, 0x20, 0x1f, 0x6f, 0x02, 0x5d, 0x98, 0x82, 0xae, 0xa8, 0x38, 0x2b,
-  0xe8, 0x50, 0xed, 0xeb, 0x5b, 0x49, 0x0c, 0xfc, 0xb6, 0xab, 0xac, 0x99,
-  0xd1, 0xfa, 0x82, 0x29, 0x67, 0xc0, 0xdc, 0xcb, 0x63, 0x00, 0x1f, 0xfc,
-  0xde, 0x16, 0x2e, 0xe4, 0xb8, 0x87, 0xb2, 0x41, 0x98, 0xe4, 0xc2, 0x2c,
-  0x24, 0x31, 0x55, 0x06, 0x82, 0x76, 0x97, 0x98, 0x3e, 0x1d, 0x31, 0x09,
-  0x53, 0x6b, 0x12, 0x71, 0x90, 0xac, 0x6b, 0x4d, 0x11, 0x0e, 0x6c, 0x53,
-  0x74, 0x2c, 0xef, 0xe1, 0x58, 0x31, 0x1c, 0x16, 0xea, 0x51, 0x99, 0xe1,
-  0xc3, 0xc6, 0x4f, 0x96, 0x45, 0xd2, 0x84, 0xef, 0x25, 0x11, 0x9f, 0xd5,
-  0xc6, 0xbb, 0xd6, 0xdc, 0xc5, 0x87, 0x75, 0xad, 0xf9, 0x77, 0x61, 0x5b,
-  0xa8, 0xd9, 0xe8, 0xf6, 0x01, 0x6d, 0xa5, 0x88, 0xc3, 0xbb, 0xf4, 0xaa,
-  0x4a, 0x72, 0xa5, 0x4f, 0x67, 0xb7, 0x30, 0x77, 0x50, 0xbd, 0xaa, 0xb8,
-  0x16, 0xdc, 0xfd, 0xaa, 0x9c, 0x1a, 0xb8, 0x6d, 0x7b, 0x00, 0xfc, 0x6e,
-  0x97, 0xbb, 0xec, 0x19, 0x95, 0x9d, 0xa2, 0x3f, 0x2a, 0xf9, 0xb0, 0x3b,
-  0x26, 0x37, 0xa8, 0x8f, 0x1c, 0x15, 0xb7, 0xf7, 0x90, 0x31, 0x7d, 0xbc,
-  0x7c, 0xd0, 0x11, 0x10, 0xba, 0x22, 0x41, 0xeb, 0xce, 0x7f, 0xd0, 0xa5,
-  0xb9, 0x5e, 0x24, 0x68, 0xdd, 0xfa, 0xf7, 0x1f, 0xda, 0x3e, 0x91, 0x60,
-  0x37, 0xc6, 0x11, 0xa5, 0xa8, 0x8a, 0xfe, 0xf7, 0x15, 0xd9, 0xef, 0xf9,
-  0xce, 0xa5, 0x6a, 0x5c, 0x10, 0xed, 0x38, 0x68, 0xb3, 0xeb, 0x27, 0x89,
-  0x62, 0x86, 0x24, 0xf1, 0xec, 0x39, 0xb5, 0xf8, 0x72, 0x7d, 0x10, 0x35,
-  0xdb, 0xb2, 0x98, 0x37, 0xfe, 0x18, 0x39, 0xef, 0xc9, 0x7e, 0x7c, 0x0e,
-  0x18, 0xd0, 0x1f, 0x34, 0x87, 0xd0, 0x6a, 0x3d, 0x76, 0x66, 0xbc, 0xfb,
-  0x39, 0x80, 0xe4, 0xf8, 0x0d, 0x13, 0x32, 0x75, 0xab, 0x95, 0x3b, 0x71,
-  0x35, 0x3d, 0xb8, 0xf2, 0x02, 0x9c, 0xd9, 0xec, 0x4b, 0xba, 0xc7, 0xb0,
-  0x41, 0x8f, 0x6b, 0xea, 0x15, 0x83, 0x63, 0xb4, 0xaf, 0x8e, 0xe8, 0x92,
-  0xe1, 0x5e, 0x78, 0x9f, 0x2e, 0x97, 0x72, 0x7b, 0xde, 0x4f, 0xf2, 0x0c,
-  0xa5, 0x0d, 0x3c, 0x0a, 0x2e, 0x89, 0x3b, 0xe4, 0xe4, 0xa1, 0xf2, 0x83,
-  0x4b, 0x48, 0x22, 0xed, 0x0a, 0x58, 0x4a, 0xf7, 0x92, 0xfc, 0xdc, 0x16,
-  0x1b, 0xdd, 0x9e, 0x4c, 0xbe, 0xd9, 0xce, 0x9a, 0xa9, 0x5e, 0xe3, 0xdb,
-  0x2e, 0x7a, 0xde, 0x5a, 0xd9, 0xee, 0x69, 0x8e, 0x04, 0x09, 0x2a, 0x4e,
-  0x0e, 0xe2, 0xb7, 0x6e, 0xb7, 0x07, 0xd0, 0x3e, 0x2d, 0x42, 0xdb, 0xe4,
-  0xf4, 0x1b, 0x4f, 0x53, 0x4a, 0x83, 0xe8, 0xec, 0x3a, 0x96, 0x43, 0x1a,
-  0x34, 0x84, 0x63, 0xb6, 0x46, 0xdd, 0x7f, 0xb2, 0xdd, 0xe4, 0xa2, 0x53,
-  0x81, 0x01, 0x15, 0x11, 0xb3, 0xab, 0xe5, 0x1f, 0xbe, 0x9f, 0x5c, 0x2f,
-  0x74, 0x91, 0x49, 0xd0, 0x1c, 0xc5, 0x17, 0xdf, 0x3f, 0xe0, 0x25, 0x6c,
-  0x95, 0x2c, 0x2d, 0x3d, 0x80, 0xe9, 0x3e, 0x78, 0xc8, 0x0f, 0x1e, 0x31,
-  0xa3, 0x96, 0xa8, 0xbc, 0x86, 0x01, 0x93, 0xeb, 0x4c, 0xe2, 0x23, 0xa4,
-  0x64, 0xcf, 0x65, 0x18, 0x17, 0x15, 0xb5, 0xe1, 0x6b, 0x14, 0x19, 0x2c,
-  0x6b, 0x66, 0x62, 0x23, 0xdb, 0xae, 0xe4, 0xcf, 0xd4, 0x92, 0x6a, 0x73,
-  0x59, 0xde, 0x3b, 0xba, 0x54, 0x8a, 0x9f, 0xe0, 0x5a, 0xf0, 0x7c, 0x83,
-  0x53, 0xa5, 0x1f, 0x2f, 0x61, 0xd6, 0x90, 0xce, 0x7d, 0xcd, 0x41, 0xe2,
-  0xe3, 0x3c, 0xf1, 0x6b, 0xc4, 0x33, 0xf6, 0xec, 0x85, 0xd5, 0x8f, 0xee,
-  0x23, 0x0f, 0x04, 0x39, 0xce, 0xe7, 0x56, 0x9f, 0xba, 0xf7, 0x4a, 0x32,
-  0xd7, 0xd9, 0x52, 0x97, 0x07, 0x74, 0x41, 0x64, 0xc2, 0x64, 0x3a, 0xd4,
-  0x83, 0x31, 0x4c, 0x1e, 0x4c, 0x0a, 0x0c, 0x29, 0x61, 0x65, 0x6c, 0xa9,
-  0xe5, 0x20, 0x5e, 0x68, 0x2e, 0xeb, 0x82, 0x2f, 0xd3, 0xa9, 0xaa, 0xc8,
-  0xf7, 0x8d, 0x2e, 0xe5, 0xa2, 0xda, 0xed, 0x45, 0x70, 0x28, 0x5a, 0x56,
-  0xa0, 0xe0, 0xe0, 0xe2, 0x87, 0x5c, 0xe7, 0x02, 0x23, 0x45, 0x89, 0x07,
-  0x36, 0x42, 0xc9, 0x5b, 0xaf, 0xfa, 0x23, 0x7c, 0x56, 0x51, 0xe3, 0x0c,
-  0x8d, 0x95, 0x46, 0xfe, 0xf0, 0xe3, 0xf3, 0x7b, 0x30, 0x70, 0x8d, 0xf1,
-  0x86, 0x54, 0xea, 0x8e, 0x8f, 0xd4, 0x2d, 0xa2, 0x8c, 0xdb, 0x07, 0x1a,
-  0x09, 0x29, 0xc1, 0xad, 0x7d, 0x8c, 0xba, 0x0c, 0x42, 0x76, 0x1e, 0x71,
-  0xf2, 0xf7, 0x4b, 0x81, 0xb2, 0x03, 0x5e, 0xfe, 0x17, 0x2a, 0x1e, 0xf1,
-  0x05, 0x6b, 0x94, 0x21, 0x1c, 0x1d, 0x76, 0x8e, 0x3f, 0xc0, 0x73, 0x60,
-  0x36, 0x30, 0x7e, 0x62, 0x58, 0x36, 0x6f, 0x4b, 0xea, 0xe1, 0x2a, 0x5b,
-  0xb4, 0x7c, 0x8a, 0x7a, 0xe7, 0x0c, 0x95, 0x87, 0x10, 0x11, 0x94, 0xc9,
-  0xc8, 0x59, 0x65, 0xcb, 0x4d, 0xa0, 0xf3, 0x39, 0x6d, 0x35, 0x23, 0xf7,
-  0xf8, 0x03, 0xbc, 0xad, 0xa6, 0x25, 0xa3, 0xfb, 0x06, 0x2d, 0xe5, 0xc5,
-  0x2c, 0xbb, 0x6d, 0xe9, 0xe4, 0x1e, 0xf8, 0xd3, 0x30, 0xd9, 0x19, 0xd1,
-  0x03, 0xf7, 0xba, 0x28, 0x5e, 0x66, 0x23, 0x42, 0x4e, 0x61, 0x20, 0x27,
-  0x44, 0xb8, 0xa5, 0x82, 0xec, 0x41, 0x2e, 0x20, 0xe9, 0x46, 0xfb, 0x49,
-  0xee, 0x3b, 0xa6, 0x14, 0xb4, 0x51, 0xe5, 0x86, 0x17, 0x27, 0x5e, 0xb3,
-  0x0f, 0x9b, 0xa5, 0xf3, 0xec, 0xf6, 0xaf, 0x17, 0x2d, 0xb7, 0xcb, 0x1e,
-  0x25, 0x23, 0x04, 0xe4, 0xef, 0xd1, 0x7d, 0x46, 0x0f, 0x75, 0xd6, 0x22,
-  0x61, 0x85, 0x20, 0xa2, 0xe6, 0x33, 0x97, 0x9f, 0xa5, 0xa6, 0x30, 0x5b,
-  0x2c, 0xea, 0xe0, 0x21, 0x36, 0xe2, 0xfa, 0xf7, 0x44, 0xab, 0xbf, 0x4d,
-  0x0d, 0xcf, 0x88, 0xa6, 0x23, 0xd6, 0xe9, 0x35, 0xa7, 0x3d, 0x89, 0x59,
-  0x97, 0x7c, 0x63, 0xb8, 0x21, 0xdb, 0x28, 0xa8, 0xed, 0x4a, 0xc1, 0x54,
-  0x27, 0xbb, 0x1b, 0x85, 0x60, 0xb4, 0x20, 0x84, 0x2b, 0xd1, 0xed, 0xba,
-  0xc8, 0x9a, 0x94, 0x52, 0x55, 0xcd, 0x07, 0x14, 0x5f, 0x3d, 0xd3, 0x70,
-  0x2d, 0xb3, 0xe9, 0x0d, 0x17, 0x02, 0xa6, 0x38, 0x7f, 0x07, 0x83, 0x1f,
-  0x49, 0xe2, 0x14, 0x80, 0x0a, 0xea, 0xcd, 0xda, 0xba, 0x6f, 0x67, 0x97,
-  0x63, 0xa6, 0x89, 0x31, 0xe5, 0x8d, 0x68, 0x6b, 0x60, 0x14, 0x43, 0xe2,
-  0xbe, 0xd0, 0xb6, 0x63, 0xcd, 0x49, 0x9c, 0x44, 0xa2, 0x88, 0xf6, 0xed,
-  0x76, 0x17, 0x74, 0xb8, 0x29, 0x5c, 0xc2, 0xb6, 0x29, 0x39, 0xa1, 0xa1,
-  0x74, 0xcf, 0x33, 0x91, 0x9c, 0x5f, 0xca, 0x39, 0xf2, 0x41, 0x5b, 0xdd,
-  0x94, 0xdd, 0x5c, 0x11, 0x54, 0x73, 0xc3, 0x48, 0x18, 0xa1, 0x0d, 0x34,
-  0xaf, 0xeb, 0x15, 0x6d, 0xd8, 0x57, 0xaf, 0x8e, 0x8f, 0x6c, 0xfa, 0xc4,
-  0xff, 0xbb, 0x3d, 0xc6, 0x82, 0x57, 0xd3, 0x20, 0x50, 0x9f, 0xf1, 0x42,
-  0x3c, 0xf0, 0x17, 0x01, 0x14, 0xf9, 0x16, 0x7a, 0x8e, 0x7e, 0xdc, 0x42,
-  0x13, 0x39, 0x7a, 0xf3, 0xdd, 0xab, 0xb7, 0x27, 0x6f, 0x5e, 0x1f, 0xbd,
-  0x39, 0xfb, 0xc4, 0x8f, 0xd5, 0x88, 0xd4, 0x26, 0xab, 0xc3, 0x58, 0x31,
-  0xd4, 0x6d, 0x2f, 0x6f, 0x08, 0x56, 0x81, 0xcb, 0x01, 0x9a, 0x79, 0xca,
-  0x5f, 0x63, 0xbf, 0x39, 0xef, 0x21, 0x75, 0x78, 0x22, 0x2a, 0x75, 0x09,
-  0xc3, 0xde, 0x0c, 0x61, 0x32, 0x63, 0x76, 0x91, 0x72, 0x79, 0xc5, 0x9c,
-  0xcb, 0xa3, 0xdd, 0xa2, 0x1c, 0x0d, 0x65, 0x1e, 0xd5, 0x5e, 0xe9, 0x75,
-  0x0d, 0x8e, 0x70, 0xde, 0xca, 0xd6, 0x20, 0x1c, 0x71, 0xbf, 0x63, 0x40,
-  0x9b, 0x78, 0x9d, 0x35, 0x05, 0x36, 0x26, 0xf1, 0x89, 0x3a, 0xbd, 0x92,
-  0xda, 0xf4, 0xcc, 0x8f, 0x98, 0x47, 0xf8, 0x8c, 0xc8, 0xab, 0x2d, 0x71,
-  0x6b, 0x6b, 0x11, 0x06, 0xf5, 0x24, 0xbc, 0x59, 0xfc, 0xa8, 0xe6, 0xb5,
-  0x83, 0xed, 0xed, 0x9f, 0x9f, 0x43, 0xb8, 0xff, 0xfc, 0xc7, 0x03, 0x50,
-  0xc1, 0xcf, 0x21, 0x1c, 0x7e, 0xed, 0x0d, 0xc4, 0x65, 0x28, 0x2b, 0x98,
-  0x01, 0xe8, 0xd6, 0x2e, 0x27, 0xb9, 0x1f, 0xde, 0x9f, 0xbe, 0x3d, 0xf9,
-  0xe1, 0x6f, 0xbf, 0x71, 0x17, 0x5e, 0xbc, 0xe9, 0x8f, 0x48, 0xb4, 0xd0,
-  0xc6, 0x7f, 0xfe, 0x55, 0xbd, 0xad, 0xed, 0xae, 0xdd, 0xfe, 0x50, 0x22,
-  0xa7, 0xe4, 0x8d, 0x20, 0x0e, 0x8a, 0x40, 0x7a, 0xb8, 0x50, 0xab, 0x42,
-  0xf6, 0x38, 0x8b, 0x90, 0x0d, 0xfe, 0x66, 0x79, 0xa0, 0xee, 0xe0, 0xb6,
-  0x85, 0xc1, 0x71, 0x74, 0x51, 0x10, 0x48, 0x8b, 0x8b, 0x10, 0x1e, 0x0a,
-  0x84, 0x10, 0x30, 0x82, 0x86, 0x8c, 0x23, 0x44, 0x79, 0x27, 0x76, 0x41,
-  0x5e, 0x1c, 0x1f, 0xff, 0xfa, 0x55, 0x90, 0x65, 0xe8, 0xac, 0x83, 0xb9,
-  0x25, 0x8a, 0xd2, 0xce, 0x68, 0x64, 0x85, 0x7a, 0x3d, 0x03, 0xeb, 0xca,
-  0x12, 0xbc, 0x39, 0x91, 0xd1, 0x3c, 0x27, 0x6d, 0x62, 0x54, 0x67, 0x46,
-  0x07, 0x48, 0xe1, 0xcb, 0xd4, 0xd2, 0x34, 0x18, 0x58, 0xbd, 0xcd, 0x09,
-  0x0f, 0xf5, 0xe7, 0x41, 0x3c, 0xa7, 0x7b, 0x88, 0xb3, 0x21, 0x78, 0x41,
-  0x39, 0x09, 0x9f, 0xb2, 0x24, 0x4b, 0x0b, 0x41, 0x89, 0x28, 0x52, 0x4e,
-  0xbe, 0x60, 0xa6, 0x67, 0x06, 0x12, 0x82, 0x79, 0x01, 0x55, 0xc5, 0xf0,
-  0xbc, 0x2a, 0xaf, 0x3f, 0x50, 0x12, 0x29, 0x8e, 0x28, 0x89, 0x94, 0x0a,
-  0xd8, 0x04, 0x1d, 0x81, 0xc6, 0x24, 0x88, 0x72, 0x2e, 0x7b, 0x3f, 0xaf,
-  0x63, 0xa3, 0xa3, 0x5a, 0xac, 0x7c, 0x17, 0xc3, 0xf0, 0xcc, 0x8e, 0x88,
-  0xb4, 0x95, 0x4a, 0x2e, 0xe5, 0x7d, 0x38, 0x28, 0xb6, 0xb6, 0x98, 0x52,
-  0x31, 0x0c, 0xa2, 0xa1, 0x22, 0xb8, 0xe0, 0x01, 0xee, 0xba, 0xa9, 0xb3,
-  0xf9, 0x45, 0x0f, 0x9c, 0x92, 0xcf, 0x31, 0x3c, 0x5f, 0x93, 0x20, 0x3a,
-  0xd5, 0x5a, 0x4e, 0xd4, 0x51, 0x38, 0x90, 0xd7, 0xc8, 0xa7, 0x15, 0x1a,
-  0x38, 0x85, 0x14, 0x6d, 0x4e, 0x22, 0xb8, 0x87, 0x65, 0x1f, 0x36, 0xbe,
-  0x49, 0x80, 0xb0, 0xd1, 0xb9, 0xee, 0xed, 0x67, 0xb3, 0x30, 0x41, 0x1b,
-  0xb0, 0xe2, 0x7e, 0xee, 0xba, 0xc8, 0x16, 0xa3, 0xdb, 0x44, 0x51, 0xe2,
-  0x78, 0xa7, 0x5a, 0xcf, 0xc8, 0x37, 0x0f, 0x69, 0xce, 0x22, 0x26, 0x31,
-  0xdd, 0x26, 0x0d, 0x32, 0x47, 0x9a, 0x44, 0x50, 0x89, 0x04, 0x9e, 0x12,
-  0x3b, 0x1b, 0x4b, 0x34, 0xf5, 0x06, 0x1e, 0xb6, 0xfc, 0x80, 0x91, 0x46,
-  0x62, 0x66, 0xcc, 0x63, 0x70, 0x5b, 0x30, 0x5c, 0xa0, 0xdf, 0x9e, 0x1d,
-  0x28, 0xc5, 0xfe, 0xf1, 0x28, 0x59, 0x90, 0x53, 0xdc, 0xd4, 0x2c, 0xe6,
-  0xfd, 0x8d, 0xa3, 0xab, 0x10, 0xc1, 0x91, 0x23, 0x9b, 0x0e, 0x84, 0x9c,
-  0x88, 0x16, 0x54, 0x90, 0xa6, 0x2a, 0x3b, 0xf7, 0x10, 0x79, 0xdc, 0x02,
-  0xec, 0x10, 0x0a, 0x40, 0x97, 0x7c, 0x6b, 0xca, 0x1e, 0xb2, 0x79, 0x0d,
-  0x82, 0xcd, 0x41, 0xe9, 0xfc, 0xe7, 0x8a, 0x6a, 0xa2, 0x4e, 0x55, 0x40,
-  0x1f, 0xcd, 0xcb, 0x3a, 0x86, 0x9d, 0x7e, 0x8e, 0x28, 0xfe, 0xac, 0xe9,
-  0xcb, 0x57, 0x72, 0x03, 0x52, 0x07, 0xa0, 0x04, 0x10, 0x43, 0x51, 0x05,
-  0x52, 0x08, 0x8e, 0x8f, 0x94, 0x24, 0x1c, 0x22, 0x07, 0xc2, 0xa2, 0x90,
-  0xc4, 0xd0, 0xa2, 0xb9, 0x26, 0xa1, 0x94, 0xe0, 0xa9, 0x32, 0x09, 0x93,
-  0x4e, 0x6d, 0x49, 0x55, 0x26, 0x0b, 0x5c, 0x91, 0x07, 0x49, 0x32, 0x38,
-  0x38, 0xd8, 0x1d, 0x24, 0x3d, 0x66, 0x4e, 0xba, 0x46, 0xe1, 0xe0, 0x3a,
-  0x38, 0xd8, 0xc1, 0x63, 0x1c, 0xc8, 0x9b, 0xdd, 0x09, 0x6a, 0x06, 0x75,
-  0xe4, 0xa6, 0x74, 0x68, 0xf6, 0xee, 0xfd, 0x64, 0x72, 0xfc, 0xfe, 0xcb,
-  0x17, 0x87, 0xdf, 0x1e, 0xbd, 0x79, 0x99, 0x3c, 0xf7, 0x32, 0x78, 0x3e,
-  0x8f, 0x64, 0x7a, 0x77, 0x0b, 0x97, 0x07, 0x09, 0x90, 0x03, 0x4d, 0x1e,
-  0x1a, 0x74, 0x70, 0x21, 0xf3, 0x2e, 0xf7, 0xba, 0xd2, 0x46, 0x90, 0x11,
-  0xe8, 0x37, 0xb1, 0x90, 0xaa, 0x90, 0x05, 0x49, 0xd0, 0xde, 0x80, 0xac,
-  0x1b, 0x7a, 0x1d, 0x88, 0x82, 0xe3, 0x1b, 0x2a, 0x35, 0x65, 0xd6, 0xe0,
-  0x47, 0x82, 0x10, 0x2a, 0xc0, 0x2b, 0x7a, 0x0b, 0xc7, 0x3a, 0xc6, 0x22,
-  0x25, 0x3c, 0xdb, 0x8e, 0xf4, 0xde, 0xaa, 0xc6, 0xaa, 0x41, 0xa1, 0x30,
-  0xe6, 0x7c, 0x20, 0x58, 0x18, 0x01, 0xa9, 0xa1, 0x00, 0x8a, 0x10, 0x8d,
-  0xa6, 0x11, 0x36, 0x83, 0x3d, 0x00, 0xe2, 0x8c, 0xce, 0x3b, 0x15, 0xd8,
-  0x54, 0x0c, 0xc6, 0xe1, 0xf6, 0xf1, 0x05, 0xdb, 0xa4, 0x77, 0x96, 0x7d,
-  0xc5, 0xf1, 0xeb, 0xa2, 0x89, 0x3d, 0x3a, 0x5c, 0x3e, 0x4d, 0x9b, 0x98,
-  0xf3, 0xc8, 0x9b, 0xf3, 0xd6, 0x01, 0xac, 0x35, 0x69, 0x55, 0xd7, 0x00,
-  0x3f, 0xb8, 0x2c, 0x56, 0xcd, 0x1c, 0xe0, 0x6f, 0x97, 0xf5, 0x87, 0x3c,
-  0x08, 0xac, 0x36, 0x4a, 0xe1, 0x8c, 0xbe, 0x36, 0x2d, 0xa5, 0x48, 0xf2,
-  0x1e, 0x26, 0x45, 0x6d, 0xfe, 0x44, 0xc1, 0x67, 0x7a, 0xbf, 0x5a, 0xd5,
-  0xf4, 0x7d, 0x3d, 0x35, 0xdb, 0x55, 0x64, 0x84, 0xa3, 0x87, 0x5c, 0x9c,
-  0x51, 0xd4, 0xe0, 0x20, 0x95, 0xa1, 0xca, 0xf9, 0x85, 0x79, 0xd9, 0x0e,
-  0xfd, 0xdf, 0x8f, 0x4f, 0xbe, 0x7e, 0xf9, 0xea, 0x6d, 0xf2, 0xbc, 0x0d,
-  0xc2, 0x1b, 0xa1, 0xbe, 0x58, 0x72, 0x67, 0x3b, 0x29, 0x72, 0x68, 0x11,
-  0xff, 0x9a, 0xee, 0x85, 0x12, 0x94, 0x85, 0xd3, 0xdb, 0x45, 0x62, 0x75,
-  0x39, 0xfc, 0xcc, 0x8d, 0xa1, 0xb3, 0x1b, 0x86, 0x8d, 0xcd, 0x56, 0xd3,
-  0x2c, 0xf9, 0xc7, 0xbc, 0xbc, 0xac, 0x43, 0x83, 0x11, 0xed, 0xaf, 0x7d,
-  0x79, 0x28, 0x52, 0xab, 0xc5, 0xc0, 0xad, 0x99, 0x28, 0x20, 0x28, 0x51,
-  0x5e, 0x8a, 0x40, 0xf9, 0x67, 0x80, 0x4b, 0x8a, 0xb9, 0x93, 0xbc, 0xa0,
-  0x80, 0x04, 0xd5, 0xeb, 0x36, 0x21, 0x50, 0x5d, 0x65, 0xb7, 0x88, 0x81,
-  0x7a, 0x59, 0x52, 0x11, 0xda, 0xcc, 0x9a, 0x34, 0x6a, 0x49, 0x3b, 0x14,
-  0x82, 0x37, 0x0c, 0x28, 0xa8, 0x0c, 0x90, 0xd2, 0x35, 0x4e, 0xf9, 0x88,
-  0xe3, 0xe4, 0x7b, 0x2a, 0xfa, 0x45, 0xab, 0x77, 0x5e, 0x9a, 0x1f, 0x28,
-  0x90, 0x11, 0xc9, 0xda, 0x33, 0xb4, 0xf4, 0xed, 0xd1, 0xdf, 0xcc, 0xe6,
-  0x40, 0x07, 0x62, 0x44, 0xea, 0xbe, 0x8d, 0x21, 0x40, 0xae, 0x4c, 0x32,
-  0x06, 0xfa, 0xc4, 0xfe, 0xd4, 0x2d, 0x47, 0x0b, 0xa0, 0x2b, 0xf0, 0x22,
-  0xe1, 0xf8, 0x73, 0xad, 0x8a, 0x69, 0x05, 0x59, 0x8e, 0x0c, 0x63, 0x46,
-  0x6e, 0xf0, 0x56, 0x45, 0xc2, 0xcf, 0x52, 0xc6, 0x44, 0xe7, 0x23, 0x29,
-  0x47, 0x31, 0x94, 0x91, 0x38, 0x1d, 0x9a, 0x41, 0x2a, 0x20, 0x31, 0xa5,
-  0xf3, 0xbb, 0x5f, 0x32, 0x5b, 0xf0, 0xca, 0x50, 0xea, 0x05, 0xc4, 0x3f,
-  0xd3, 0x20, 0xd0, 0x21, 0xd8, 0x64, 0xc5, 0xdb, 0x87, 0x2a, 0xd9, 0xdd,
-  0x54, 0x03, 0xc2, 0x37, 0xa4, 0x26, 0xd8, 0xd9, 0x83, 0x2c, 0x39, 0x45,
-  0xeb, 0xfc, 0x1e, 0xb5, 0x2d, 0xae, 0xd2, 0xea, 0x83, 0x58, 0x30, 0x6e,
-  0xdc, 0x42, 0x73, 0x26, 0xcd, 0x3c, 0x44, 0x15, 0xbe, 0xd1, 0xc2, 0x7a,
-  0xba, 0x01, 0x07, 0x5a, 0x1d, 0x8d, 0xa0, 0x18, 0x70, 0xb1, 0x98, 0x53,
-  0xf5, 0x65, 0x89, 0x8b, 0x84, 0x3e, 0x94, 0x8a, 0x69, 0xe6, 0x97, 0x37,
-  0x93, 0x49, 0x04, 0x46, 0x05, 0xc7, 0xcb, 0x3c, 0x68, 0xf6, 0x91, 0x25,
-  0x55, 0xf3, 0xf3, 0xec, 0xe4, 0xf0, 0xe4, 0xd8, 0xfc, 0x72, 0xf4, 0xd5,
-  0xab, 0x1f, 0x9c, 0x36, 0x2b, 0x55, 0xcb, 0x79, 0x23, 0x6c, 0x38, 0x2c,
-  0x95, 0x87, 0x78, 0x3a, 0x6c, 0xa9, 0x11, 0x9c, 0x0e, 0x85, 0x4c, 0xa8,
-  0x96, 0x12, 0xca, 0x01, 0xac, 0x9f, 0xb8, 0x7b, 0x5e, 0xc5, 0x73, 0x82,
-  0xc0, 0xcb, 0x6f, 0x7d, 0x8c, 0x54, 0x9f, 0xcf, 0x71, 0xab, 0x36, 0xc9,
-  0xd0, 0x51, 0xdc, 0xab, 0x96, 0x64, 0x4e, 0x16, 0x01, 0x5f, 0xe3, 0x6d,
-  0xcb, 0xf4, 0x3c, 0x28, 0x0a, 0x8f, 0xc9, 0x35, 0x14, 0x8e, 0x3f, 0xd4,
-  0xe6, 0x14, 0x79, 0x44, 0x6e, 0x57, 0x1c, 0x72, 0x57, 0xc4, 0x05, 0x77,
-  0xcb, 0xd0, 0x9b, 0xa4, 0x1a, 0x6a, 0x1a, 0x43, 0x04, 0x8d, 0x64, 0x63,
-  0x15, 0x2d, 0x24, 0xd2, 0x8e, 0x20, 0x43, 0x40, 0x16, 0xb6, 0xb9, 0xf6,
-  0x9c, 0x64, 0x01, 0x44, 0x22, 0xa0, 0xe0, 0x15, 0x18, 0xa0, 0x3c, 0x18,
-  0x62, 0x11, 0xb2, 0xa2, 0xa8, 0x3a, 0x8c, 0xe6, 0x81, 0x7f, 0xdc, 0x20,
-  0x54, 0x13, 0x40, 0xaf, 0xb6, 0x90, 0x2e, 0x2d, 0x97, 0x46, 0x9f, 0x2c,
-  0x43, 0x13, 0x2a, 0xf6, 0x40, 0x8c, 0x54, 0x6d, 0x4d, 0xb9, 0x5e, 0xd3,
-  0x75, 0xb8, 0x00, 0x41, 0x0e, 0x38, 0x92, 0x09, 0xeb, 0x47, 0xeb, 0xda,
-  0x80, 0x25, 0xe3, 0x1f, 0xab, 0xfc, 0x3a, 0x25, 0x08, 0x16, 0x73, 0xc1,
-  0x8e, 0x46, 0xfc, 0x52, 0xa7, 0x8d, 0xf4, 0x57, 0x35, 0x92, 0xb6, 0x5b,
-  0x79, 0xfc, 0x6b, 0x1a, 0x79, 0xdc, 0x69, 0xe3, 0xea, 0x57, 0x35, 0x32,
-  0x52, 0xbd, 0xe6, 0x93, 0x4f, 0x8e, 0x7e, 0x78, 0x75, 0x96, 0x1c, 0x9e,
-  0xbc, 0x74, 0x07, 0xec, 0x8c, 0x94, 0x6b, 0x26, 0x01, 0x73, 0x65, 0x15,
-  0x86, 0x06, 0x51, 0xab, 0xda, 0x16, 0xdf, 0xe4, 0xe8, 0x4a, 0xc4, 0x20,
-  0xd5, 0x8a, 0xec, 0x92, 0x57, 0x0c, 0x99, 0x8c, 0x08, 0x28, 0xf2, 0xd2,
-  0x78, 0x50, 0x56, 0x5e, 0x12, 0x4f, 0xed, 0x72, 0x13, 0x81, 0xc7, 0x9f,
-  0x56, 0x5c, 0x39, 0xc7, 0xb6, 0x58, 0x30, 0x86, 0x10, 0xe1, 0x76, 0x34,
-  0x2d, 0x53, 0xbc, 0x43, 0x70, 0x26, 0x5e, 0x0d, 0x67, 0x3a, 0xa1, 0x7c,
-  0x32, 0x6a, 0x4b, 0xde, 0xe8, 0x70, 0xfc, 0xac, 0xa6, 0x5d, 0xcd, 0x23,
-  0x6d, 0x91, 0x3b, 0x11, 0xba, 0x30, 0x3a, 0xdc, 0xc7, 0x33, 0x5b, 0x68,
-  0x0b, 0x82, 0x5d, 0x51, 0xb6, 0x44, 0xba, 0x88, 0xb6, 0x69, 0x9b, 0xb0,
-  0xfd, 0xec, 0x49, 0xdc, 0x40, 0x9a, 0xcf, 0xd9, 0x45, 0x20, 0xb9, 0x22,
-  0xf9, 0x2f, 0x9e, 0x75, 0x69, 0xdf, 0x1a, 0x13, 0xcc, 0xf4, 0xe7, 0x14,
-  0xd9, 0x35, 0xe3, 0x63, 0x51, 0xdf, 0x19, 0x89, 0xf9, 0x96, 0xe4, 0x03,
-  0x98, 0xfe, 0x04, 0x7a, 0xda, 0xbd, 0xf9, 0x48, 0x83, 0xf0, 0x15, 0xdf,
-  0xba, 0xac, 0xac, 0x31, 0x55, 0xcd, 0xd0, 0xce, 0x3d, 0xa1, 0x60, 0x62,
-  0x7a, 0x51, 0xe7, 0x14, 0xfb, 0x12, 0x9e, 0x31, 0x09, 0x50, 0xd2, 0x5e,
-  0x15, 0x9b, 0x4c, 0x2a, 0x83, 0x65, 0xb7, 0xcb, 0x79, 0x3e, 0xcd, 0x29,
-  0x84, 0x4e, 0x61, 0x89, 0x4d, 0x57, 0xb4, 0x5e, 0x23, 0x2e, 0x63, 0xdd,
-  0xd1, 0x8b, 0x7c, 0xb4, 0x22, 0xbd, 0x39, 0x67, 0x25, 0x2d, 0x20, 0x83,
-  0x86, 0x9a, 0x75, 0x3b, 0x4f, 0x01, 0x8b, 0x88, 0xb1, 0x1a, 0xba, 0x61,
-  0x54, 0x1e, 0xdd, 0x81, 0x38, 0x3e, 0x8d, 0x43, 0xe5, 0x78, 0x2c, 0x72,
-  0xbf, 0xda, 0x1b, 0x14, 0x5d, 0x25, 0xb1, 0xa6, 0x86, 0x33, 0x0b, 0xfd,
-  0x28, 0xf6, 0xb9, 0x92, 0x20, 0x2d, 0xa1, 0x43, 0x61, 0x82, 0xe7, 0x31,
-  0x5f, 0x4d, 0xdd, 0x71, 0x68, 0x3e, 0xe9, 0xf4, 0xa2, 0x9d, 0x30, 0xf4,
-  0xb4, 0xeb, 0xc1, 0x77, 0xc0, 0x73, 0x17, 0xd4, 0x07, 0x05, 0x62, 0xdc,
-  0xdf, 0xcb, 0xd3, 0x2e, 0xbd, 0x78, 0xee, 0x7d, 0xea, 0xc9, 0x3e, 0xf9,
-  0xa9, 0x18, 0xd8, 0x33, 0x00, 0xff, 0x88, 0x35, 0xc8, 0x68, 0x59, 0x73,
-  0x61, 0xa8, 0xf2, 0x09, 0xc5, 0x8f, 0x91, 0x91, 0x9c, 0x56, 0x7f, 0xaa,
-  0xa3, 0x37, 0xaa, 0x80, 0x6f, 0xdf, 0x7c, 0x26, 0xdd, 0x22, 0xfe, 0x9f,
-  0xd5, 0x61, 0xc2, 0xae, 0xcc, 0x2d, 0x1d, 0x72, 0x6b, 0xfc, 0x11, 0x92,
-  0x99, 0x08, 0x19, 0x51, 0xff, 0x96, 0x37, 0x02, 0x60, 0x93, 0x8e, 0x3f,
-  0x19, 0x2b, 0xb6, 0xaa, 0x18, 0xf8, 0xca, 0xc9, 0xa4, 0x5a, 0x1e, 0x8e,
-  0xa7, 0x0b, 0x79, 0x05, 0x10, 0xe6, 0xc9, 0xeb, 0x32, 0x28, 0x9f, 0x51,
-  0x5e, 0x50, 0x9c, 0x0f, 0xe1, 0xd7, 0x21, 0x0f, 0x89, 0xd7, 0xc7, 0x08,
-  0xe9, 0x97, 0x22, 0x8b, 0xb9, 0x46, 0x59, 0x74, 0x95, 0xbb, 0xd2, 0xf0,
-  0x00, 0xf2, 0x5c, 0xf4, 0x22, 0x38, 0xba, 0x75, 0xd8, 0xdd, 0xb1, 0xeb,
-  0xc0, 0x15, 0xcc, 0x09, 0x64, 0x11, 0xab, 0xf0, 0x3d, 0x95, 0x55, 0xb8,
-  0x49, 0x89, 0xb7, 0x58, 0xe4, 0x22, 0x67, 0x85, 0xb3, 0xb1, 0x1e, 0x90,
-  0x79, 0xc2, 0x5c, 0x4e, 0x42, 0x43, 0x44, 0x48, 0x31, 0x84, 0x05, 0x4e,
-  0xeb, 0xe2, 0xcc, 0x73, 0xb9, 0xcb, 0x86, 0x64, 0x5c, 0xb6, 0xcc, 0x93,
-  0x83, 0xad, 0x88, 0x31, 0x5f, 0x67, 0x55, 0x8f, 0x9b, 0x01, 0xb8, 0xdb,
-  0x9e, 0x50, 0xed, 0x80, 0x37, 0xbd, 0xf9, 0xec, 0xda, 0xf9, 0xdc, 0x10,
-  0xa1, 0x9c, 0xbe, 0x98, 0x4c, 0x94, 0x4c, 0x0e, 0x43, 0x8a, 0x50, 0x5d,
-  0x1d, 0x11, 0xf7, 0x02, 0x34, 0x16, 0xd1, 0xd4, 0xa4, 0x91, 0x4e, 0xa4,
-  0xe1, 0x2e, 0xf3, 0xba, 0x97, 0x0c, 0x99, 0x87, 0xf9, 0xe8, 0x7c, 0x99,
-  0xae, 0x74, 0xc6, 0x37, 0xeb, 0x57, 0x32, 0xae, 0x35, 0x70, 0xd0, 0x12,
-  0xd6, 0x99, 0x00, 0xbd, 0x1a, 0xf1, 0x3a, 0xc3, 0xde, 0x61, 0xf8, 0x11,
-  0x18, 0x99, 0x37, 0x90, 0xfd, 0x70, 0xd2, 0xdf, 0xf1, 0xac, 0x86, 0xff,
-  0xd4, 0xa4, 0xbf, 0x8b, 0x4c, 0xfa, 0x91, 0x3b, 0x38, 0xdc, 0x59, 0xb2,
-  0xb7, 0xf7, 0x54, 0x93, 0xd6, 0xd9, 0xf7, 0x04, 0x58, 0x45, 0xcb, 0x9b,
-  0x5c, 0x8f, 0xe6, 0xb9, 0x91, 0xd4, 0x7b, 0x0a, 0x0c, 0x1e, 0xee, 0xf0,
-  0x7a, 0x5d, 0x3d, 0xb6, 0x5d, 0x19, 0xa5, 0x08, 0x76, 0x55, 0xa3, 0x9d,
-  0x30, 0xf7, 0x09, 0x98, 0x92, 0x9a, 0x27, 0x61, 0x59, 0xba, 0x41, 0x30,
-  0x7a, 0x6f, 0x10, 0xa9, 0x8e, 0xc2, 0xeb, 0xe7, 0x89, 0xf5, 0x0d, 0x6c,
-  0xef, 0x69, 0x1c, 0xdd, 0x0b, 0xe2, 0xd1, 0xf3, 0x6c, 0x41, 0x94, 0x39,
-  0xcb, 0x80, 0x78, 0xeb, 0xdc, 0x5a, 0x8c, 0x01, 0x74, 0x51, 0xa5, 0x54,
-  0x2e, 0x6a, 0x9e, 0xde, 0x45, 0x30, 0xb9, 0xc5, 0xfd, 0xc9, 0x26, 0xb8,
-  0x14, 0xa3, 0x2f, 0x60, 0x6c, 0x22, 0x29, 0x41, 0xac, 0x1a, 0x30, 0x8d,
-  0x50, 0xe8, 0xdc, 0x85, 0xf5, 0x3f, 0x4a, 0xaf, 0x01, 0xa4, 0x1e, 0x3c,
-  0x51, 0x4d, 0x37, 0x0f, 0x38, 0x0e, 0x6e, 0xbf, 0xfb, 0xd4, 0x6d, 0x91,
-  0xdd, 0x07, 0x68, 0x76, 0x0c, 0xb3, 0xe9, 0xad, 0x9e, 0xf2, 0x12, 0x0d,
-  0x0b, 0x90, 0x74, 0x29, 0x84, 0x1b, 0xe4, 0xa1, 0x25, 0xb8, 0xf2, 0xa4,
-  0xc7, 0x5d, 0xe6, 0xc6, 0xa7, 0x60, 0x76, 0x52, 0x31, 0x68, 0x9c, 0x9c,
-  0x90, 0x6b, 0xa9, 0x55, 0x25, 0x8d, 0x35, 0xbb, 0xd4, 0x79, 0xbd, 0xdb,
-  0x84, 0xfb, 0xcc, 0xed, 0xb0, 0x8e, 0x49, 0x23, 0x60, 0xb7, 0x95, 0xc9,
-  0xda, 0x8b, 0x46, 0xfd, 0xa7, 0x59, 0xf2, 0xf6, 0xe8, 0xec, 0x2d, 0x05,
-  0x7b, 0x11, 0x03, 0x08, 0xf4, 0xb1, 0xb4, 0xda, 0xb2, 0x40, 0xbb, 0xc2,
-  0xce, 0x9c, 0x7c, 0xe2, 0x18, 0x04, 0xc3, 0x9c, 0xdb, 0xfd, 0xe6, 0x3f,
-  0xf5, 0x3d, 0x9b, 0x4c, 0xc3, 0x0b, 0xee, 0xe2, 0x3a, 0xda, 0x00, 0xec,
-  0x7b, 0x7b, 0x2e, 0x14, 0xd9, 0x4c, 0xfc, 0x32, 0xa3, 0xbb, 0xcf, 0xa6,
-  0x8d, 0x8e, 0x25, 0x05, 0x46, 0x13, 0xc4, 0xd5, 0xf6, 0x81, 0x87, 0x38,
-  0x16, 0xbe, 0xac, 0x22, 0x97, 0xa4, 0x74, 0xad, 0x72, 0x01, 0x0f, 0xc1,
-  0x81, 0xad, 0x73, 0x6f, 0x92, 0xd7, 0xc3, 0xd1, 0xf7, 0x52, 0xf2, 0xe6,
-  0xd1, 0xce, 0x4e, 0x24, 0xbd, 0x2f, 0x3d, 0x37, 0x4c, 0x55, 0xa4, 0x3c,
-  0x41, 0x1e, 0xe0, 0xec, 0x6f, 0xda, 0x2f, 0x92, 0x3d, 0x6b, 0x28, 0x22,
-  0xa3, 0x0b, 0xf8, 0xe6, 0xb0, 0x62, 0xa1, 0xc6, 0xb1, 0xc7, 0x3c, 0xe6,
-  0x7b, 0x42, 0x42, 0xb0, 0xc1, 0xa6, 0x6d, 0xe6, 0xc2, 0x30, 0x09, 0x74,
-  0xf9, 0xd2, 0xf5, 0xe4, 0xaa, 0x49, 0x89, 0x4f, 0x37, 0x18, 0x59, 0xc0,
-  0xbf, 0xf7, 0x1e, 0x87, 0x14, 0x31, 0x39, 0x3b, 0x79, 0x2b, 0x14, 0x16,
-  0x5e, 0xcd, 0xbc, 0x22, 0xf4, 0x88, 0x43, 0x2c, 0x1d, 0x86, 0xb0, 0xb5,
-  0x5c, 0x65, 0x0f, 0xed, 0xda, 0x3a, 0x2c, 0x5e, 0xaf, 0xcc, 0x01, 0xde,
-  0x02, 0x2e, 0x43, 0xa6, 0xf6, 0x9d, 0xc0, 0xe8, 0x68, 0xcd, 0x21, 0x3d,
-  0x97, 0xde, 0x4b, 0x7c, 0xcc, 0x4e, 0xf8, 0xfc, 0x32, 0x6c, 0x0c, 0xe8,
-  0x48, 0x00, 0x64, 0x50, 0xb2, 0x48, 0x72, 0x8b, 0x34, 0x02, 0x3e, 0xa0,
-  0x45, 0x3e, 0x44, 0x27, 0xae, 0xa6, 0x14, 0x73, 0x78, 0x99, 0xa7, 0x55,
-  0x9b, 0xf1, 0x31, 0x85, 0xd8, 0x72, 0xcd, 0x25, 0x89, 0x6e, 0x4e, 0xd9,
-  0xbf, 0x33, 0x0d, 0xea, 0xd2, 0x95, 0x95, 0x56, 0x99, 0x91, 0x8b, 0x53,
-  0x15, 0x09, 0x27, 0x7f, 0xbb, 0x5b, 0xff, 0xf4, 0xe4, 0xed, 0x99, 0xbd,
-  0xf3, 0xd1, 0x2d, 0x7d, 0xd0, 0x39, 0x3d, 0x48, 0xd9, 0x13, 0x0c, 0x47,
-  0xb9, 0xd9, 0xb0, 0x05, 0x81, 0x93, 0x4d, 0x74, 0x05, 0xde, 0x12, 0x6a,
-  0x47, 0x1b, 0x32, 0xc7, 0x16, 0xb0, 0x74, 0x25, 0x43, 0xe2, 0x5a, 0x7e,
-  0xc3, 0x16, 0x1a, 0xba, 0x68, 0x7a, 0xd0, 0xb5, 0x9d, 0xd0, 0xbb, 0xbf,
-  0x1b, 0x52, 0x06, 0x34, 0xec, 0xb7, 0x47, 0x93, 0x33, 0x1e, 0x39, 0x7e,
-  0x0b, 0x46, 0xce, 0x40, 0x57, 0xf2, 0x61, 0xe8, 0x18, 0xb4, 0x94, 0x81,
-  0x28, 0x74, 0xd8, 0xf6, 0xd0, 0x7e, 0xa4, 0xb0, 0xec, 0xfe, 0xbe, 0x97,
-  0x72, 0x40, 0x4c, 0x53, 0xe8, 0x84, 0xce, 0x37, 0x7d, 0x30, 0x90, 0x5e,
-  0x06, 0x46, 0x2c, 0x9b, 0x69, 0xa9, 0x73, 0xaf, 0x85, 0x47, 0xae, 0x85,
-  0x25, 0x6e, 0x2a, 0x69, 0xe0, 0x15, 0x83, 0xac, 0xcd, 0xe9, 0xc3, 0x91,
-  0x92, 0x0a, 0x5d, 0x16, 0x4c, 0x14, 0xfc, 0x9c, 0x6b, 0xe7, 0xb1, 0x35,
-  0x12, 0xab, 0xa8, 0xe0, 0x0d, 0x05, 0x1f, 0x6b, 0xd8, 0x2f, 0x49, 0x1b,
-  0x1d, 0x92, 0xdb, 0x67, 0x4a, 0xff, 0x12, 0x29, 0x03, 0x36, 0x77, 0x81,
-  0xe7, 0xee, 0xdf, 0x0b, 0x46, 0xd8, 0xca, 0x8b, 0x15, 0xd7, 0x5f, 0x48,
-  0xab, 0x39, 0x8a, 0x55, 0x1a, 0x26, 0x52, 0x31, 0xc6, 0xc5, 0x4d, 0x11,
-  0xab, 0xab, 0xe5, 0xf5, 0x21, 0xf7, 0x0f, 0x2c, 0x8e, 0x53, 0x77, 0x51,
-  0xa3, 0xd0, 0x25, 0x1d, 0x62, 0x27, 0xeb, 0xc3, 0x04, 0x6d, 0xaf, 0x89,
-  0x71, 0x72, 0x9a, 0x55, 0x54, 0x4a, 0xc7, 0xd0, 0xea, 0xff, 0x70, 0xad,
-  0xf1, 0x21, 0x81, 0x5b, 0x19, 0xd7, 0x26, 0xa9, 0x2f, 0x79, 0x61, 0x76,
-  0x96, 0x3e, 0x21, 0x8c, 0x30, 0x57, 0x94, 0x2d, 0x98, 0xee, 0x33, 0xf7,
-  0x72, 0x6d, 0x66, 0x62, 0xb4, 0xf7, 0xee, 0x23, 0x8f, 0x84, 0xae, 0x8c,
-  0x6a, 0x4f, 0x4d, 0x58, 0xd6, 0x8c, 0xb3, 0x2c, 0xb5, 0x6e, 0x67, 0xdc,
-  0xc2, 0x85, 0x3e, 0xd3, 0x62, 0xe1, 0x5e, 0x53, 0x7c, 0x19, 0xbc, 0x38,
-  0xb7, 0x25, 0x86, 0x91, 0x2c, 0x04, 0x41, 0xce, 0xb4, 0x55, 0x80, 0xd3,
-  0xce, 0x6d, 0xe2, 0xa2, 0x8d, 0x6d, 0x02, 0xa7, 0xc4, 0x0b, 0x16, 0x73,
-  0xb9, 0xbb, 0xb8, 0x69, 0x3b, 0x48, 0xe2, 0x11, 0x53, 0xa2, 0x25, 0x1b,
-  0x7b, 0x7f, 0xb5, 0x46, 0x27, 0x59, 0x4a, 0x82, 0x1d, 0x7f, 0x9e, 0x12,
-  0xdc, 0x6b, 0x6a, 0xee, 0x77, 0x5f, 0xf8, 0x7f, 0xf4, 0xd8, 0x35, 0x75,
-  0x41, 0x00, 0xb8, 0xca, 0xd7, 0x5f, 0xb4, 0x02, 0x01, 0x6c, 0x29, 0xcc,
-  0xdc, 0x3e, 0xe9, 0xeb, 0x92, 0x91, 0x23, 0xe5, 0xf5, 0xf1, 0x54, 0x54,
-  0x62, 0xe8, 0xc4, 0xc5, 0x9d, 0xcb, 0x64, 0x1c, 0x73, 0xa8, 0x14, 0x1b,
-  0xd5, 0xb8, 0xd2, 0xae, 0x7c, 0x23, 0x85, 0x0c, 0xae, 0xc4, 0x68, 0x83,
-  0xe2, 0xd9, 0x41, 0xd5, 0x82, 0xd5, 0x42, 0x12, 0x79, 0xbc, 0x9e, 0x3e,
-  0x15, 0x0b, 0x07, 0xe7, 0x87, 0x59, 0xa0, 0x5f, 0x6f, 0x22, 0x10, 0x74,
-  0x45, 0x9b, 0xb6, 0x21, 0x92, 0x33, 0x4a, 0x31, 0xa9, 0x6d, 0x31, 0xc1,
-  0x48, 0x69, 0x09, 0xb0, 0x59, 0x11, 0x76, 0xd5, 0xd6, 0x50, 0x2a, 0x50,
-  0x91, 0xd8, 0x1c, 0xe4, 0x31, 0xfe, 0x4a, 0x21, 0x2c, 0x23, 0x6e, 0xde,
-  0x2a, 0xfb, 0x3b, 0x09, 0x92, 0x63, 0xbe, 0x6c, 0x18, 0x30, 0x83, 0x67,
-  0x59, 0xac, 0x52, 0x4f, 0xc7, 0x7f, 0xf4, 0x4c, 0xcc, 0x57, 0x62, 0x1e,
-  0x41, 0xac, 0x58, 0x91, 0x35, 0x41, 0xcc, 0xcc, 0xe3, 0x5d, 0x6b, 0xc8,
-  0x44, 0xda, 0x8c, 0x24, 0xd5, 0xfa, 0xc9, 0x33, 0x86, 0xb9, 0x4d, 0x26,
-  0xdf, 0x24, 0xaf, 0x5f, 0x3e, 0x46, 0x4c, 0xef, 0x65, 0x56, 0x2d, 0x2b,
-  0xe4, 0x71, 0x28, 0x0d, 0x9f, 0x7c, 0xeb, 0x35, 0xb6, 0xe7, 0xfc, 0xba,
-  0x5a, 0x60, 0x40, 0x98, 0x99, 0xe8, 0x0b, 0x66, 0x0b, 0x01, 0xce, 0x74,
-  0x39, 0x94, 0x00, 0x02, 0xc5, 0xc2, 0x57, 0xc4, 0x67, 0x92, 0x5a, 0x62,
-  0x68, 0x36, 0x5e, 0x27, 0xfb, 0x8e, 0x81, 0x55, 0x77, 0x4b, 0xb2, 0xed,
-  0x5f, 0x42, 0x2d, 0x88, 0x9c, 0xa8, 0xc7, 0xcc, 0x34, 0x0f, 0xf9, 0xdc,
-  0x43, 0x86, 0x0d, 0x5f, 0x23, 0xf1, 0xbc, 0xe3, 0x49, 0x7b, 0xfc, 0xd8,
-  0xb7, 0x2a, 0xd4, 0x52, 0xcb, 0x5d, 0x4b, 0x1b, 0x41, 0x42, 0xf1, 0x9e,
-  0x7d, 0x62, 0x9f, 0x85, 0x41, 0x89, 0x5c, 0x08, 0x5a, 0x83, 0xb9, 0xe7,
-  0x0d, 0x11, 0x7e, 0x55, 0x41, 0x50, 0xc1, 0x8c, 0xe5, 0x1d, 0x6f, 0xed,
-  0xbd, 0x57, 0x9e, 0xb5, 0x8d, 0x29, 0x54, 0x00, 0xd1, 0x12, 0x26, 0x4d,
-  0x2a, 0x5f, 0x5e, 0xf9, 0x87, 0xf3, 0x09, 0xdf, 0xd1, 0xa7, 0xdd, 0x5c,
-  0x28, 0xe5, 0x81, 0x99, 0x8f, 0x8c, 0xa7, 0x47, 0x9d, 0x49, 0xff, 0xf0,
-  0x45, 0xd2, 0x97, 0x51, 0x4d, 0xb4, 0xee, 0x75, 0xb2, 0x2b, 0x67, 0xc6,
-  0x4c, 0xb9, 0xbc, 0x2c, 0xf2, 0x5f, 0x14, 0x62, 0x0d, 0xb7, 0xb3, 0xd6,
-  0xcf, 0xf6, 0x1e, 0xdf, 0x13, 0x86, 0x71, 0x9d, 0xce, 0x73, 0x61, 0x8a,
-  0x88, 0x08, 0x72, 0x0f, 0xec, 0x0b, 0xd5, 0x72, 0xbd, 0x7b, 0x92, 0xfe,
-  0x91, 0x89, 0x47, 0xf1, 0x68, 0x59, 0x2b, 0xb7, 0xee, 0xc9, 0x23, 0x91,
-  0xb9, 0x54, 0x36, 0xc6, 0xcd, 0x8b, 0x85, 0x98, 0x53, 0x51, 0x83, 0x2e,
-  0x9b, 0x7e, 0x22, 0xd7, 0x9e, 0x6c, 0x25, 0xe5, 0x27, 0x42, 0xd0, 0xb4,
-  0xd5, 0xc8, 0xf1, 0xeb, 0x4d, 0x5e, 0x48, 0xbe, 0x5b, 0xf0, 0xfa, 0x93,
-  0x1e, 0xb3, 0x64, 0xcd, 0x77, 0xe6, 0x11, 0xd1, 0x92, 0xf7, 0xfc, 0x53,
-  0x77, 0x12, 0x5c, 0x15, 0x97, 0xa1, 0xab, 0x1d, 0x33, 0xf4, 0xeb, 0x7e,
-  0xe8, 0x59, 0x62, 0x13, 0x0a, 0x9d, 0x81, 0x59, 0xac, 0x34, 0xde, 0x85,
-  0xed, 0x7e, 0x5e, 0x82, 0x9b, 0x7a, 0xfd, 0x31, 0x49, 0x7d, 0x45, 0xce,
-  0x35, 0xa7, 0x1c, 0x14, 0xc9, 0x99, 0x07, 0x89, 0xe3, 0x9e, 0x7e, 0x26,
-  0xb4, 0xa1, 0xf7, 0xa5, 0x55, 0x56, 0xfb, 0xde, 0x78, 0xba, 0xe3, 0x0b,
-  0xab, 0x33, 0x44, 0x1a, 0x31, 0xd4, 0x58, 0xef, 0x0b, 0x4c, 0x19, 0xaf,
-  0xe6, 0x00, 0xe5, 0x9c, 0xf3, 0x33, 0xae, 0x22, 0x80, 0x7b, 0x6c, 0xaf,
-  0xc5, 0x74, 0xcf, 0x7c, 0xf1, 0x29, 0x79, 0xf5, 0xd2, 0x7b, 0x70, 0xdf,
-  0x4d, 0x30, 0x9d, 0x43, 0x1a, 0xb8, 0x63, 0x3b, 0x55, 0x9d, 0x6c, 0xe2,
-  0x2d, 0x0f, 0xc3, 0xf9, 0x29, 0x53, 0xc6, 0x9b, 0x92, 0x7d, 0x72, 0xb4,
-  0xfc, 0xc1, 0x33, 0x4c, 0x0e, 0x87, 0x16, 0xa9, 0xd9, 0xa1, 0x34, 0x07,
-  0x7b, 0xff, 0xf4, 0xc9, 0x9a, 0x67, 0xe5, 0xd2, 0xac, 0xed, 0x55, 0xef,
-  0xbd, 0xf7, 0xb4, 0x75, 0xcc, 0x55, 0x13, 0xd0, 0x2c, 0x45, 0x73, 0xca,
-  0x70, 0xc8, 0x92, 0x4d, 0xa0, 0x20, 0xfd, 0x0f, 0xb5, 0x09, 0x56, 0x80,
-  0xe3, 0xaf, 0xff, 0x87, 0x3f, 0xd4, 0x4f, 0x7d, 0x2c, 0x04, 0x36, 0x08,
-  0x72, 0x0a, 0x7c, 0x31, 0x6d, 0x95, 0xba, 0x74, 0x11, 0xaf, 0xb4, 0x30,
-  0x5e, 0x0b, 0xbc, 0xdd, 0x46, 0x84, 0x58, 0x15, 0x8e, 0x69, 0xb0, 0xfe,
-  0x27, 0x60, 0x69, 0x33, 0xbf, 0x72, 0x03, 0xd8, 0xbd, 0x18, 0x9f, 0x3c,
-  0xf3, 0xe9, 0x4e, 0xe7, 0x04, 0xd4, 0x57, 0x2b, 0xd6, 0xb6, 0xed, 0x8c,
-  0xbc, 0xf4, 0x6f, 0xf7, 0xda, 0x9e, 0x63, 0x5c, 0x34, 0x36, 0x92, 0x18,
-  0x0f, 0xcd, 0x68, 0x59, 0x1d, 0xb7, 0xc5, 0x0f, 0xc9, 0x89, 0x77, 0x53,
-  0x95, 0xf8, 0x55, 0x11, 0x0c, 0x37, 0xd3, 0x9e, 0x5c, 0x44, 0x49, 0x22,
-  0xf3, 0xba, 0x11, 0xa9, 0x06, 0x21, 0xbb, 0x00, 0xe0, 0xce, 0xa6, 0x1f,
-  0xf4, 0xb4, 0x48, 0x23, 0x2e, 0xf5, 0xcc, 0x7b, 0xeb, 0x91, 0x5d, 0x5a,
-  0xd2, 0x65, 0xde, 0x1e, 0x9d, 0xf5, 0x2a, 0xfe, 0x9f, 0x32, 0xc5, 0xbc,
-  0xce, 0x6b, 0xf6, 0x24, 0x9a, 0x63, 0xf0, 0xf6, 0x6c, 0x72, 0x9a, 0x1c,
-  0x4e, 0xb2, 0x7f, 0x48, 0xe8, 0xbc, 0xc7, 0x18, 0x3f, 0x7d, 0x12, 0x7f,
-  0x7a, 0x22, 0x36, 0xbd, 0x57, 0x54, 0xe8, 0xc8, 0xec, 0x43, 0xeb, 0xa5,
-  0xa7, 0x72, 0x18, 0xd4, 0xe6, 0xcf, 0xb6, 0x2f, 0x0c, 0x8d, 0x38, 0xe1,
-  0xbc, 0xb5, 0xab, 0x9f, 0x7e, 0xea, 0x14, 0x9a, 0xab, 0x55, 0xf1, 0xc1,
-  0x0a, 0x8b, 0x02, 0x44, 0xaf, 0x5b, 0xec, 0xbd, 0xf1, 0x4c, 0x0f, 0x86,
-  0x67, 0x05, 0xb5, 0xa1, 0xbc, 0x43, 0xb1, 0x4f, 0x88, 0xd1, 0x51, 0x5c,
-  0xa1, 0x86, 0xbb, 0xae, 0xfc, 0x65, 0x78, 0xb6, 0x63, 0x6f, 0x5f, 0x81,
-  0xac, 0xfd, 0x40, 0x71, 0x45, 0x42, 0x79, 0x1a, 0x36, 0xb8, 0xcc, 0x0b,
-  0x58, 0x20, 0xdc, 0x23, 0x5e, 0x0b, 0xbb, 0xad, 0x4b, 0xa0, 0x2b, 0x6e,
-  0x30, 0x9a, 0x8b, 0xf7, 0x38, 0x13, 0xd0, 0x04, 0x2e, 0xc9, 0x85, 0x10,
-  0x6d, 0x5e, 0xa8, 0xb5, 0xad, 0x63, 0x42, 0xb3, 0x2f, 0xed, 0x2b, 0xc5,
-  0x03, 0xbd, 0x3b, 0x26, 0xd9, 0x72, 0x3c, 0x01, 0x09, 0x1d, 0x04, 0xac,
-  0x28, 0x72, 0xb6, 0x6b, 0xe1, 0x91, 0xb6, 0xd0, 0x01, 0x90, 0xb5, 0x8d,
-  0x59, 0x0b, 0x4f, 0x1a, 0xe8, 0x58, 0xcf, 0x1e, 0x8b, 0x97, 0xc9, 0xf2,
-  0x55, 0xc6, 0x96, 0xb2, 0x66, 0x40, 0xdf, 0x0e, 0xb8, 0xbd, 0x2f, 0xa3,
-  0x0f, 0x4c, 0x7e, 0x5d, 0x14, 0xf5, 0x8f, 0x33, 0x00, 0xb2, 0xcd, 0x8f,
-  0x95, 0x69, 0x1a, 0x5f, 0x80, 0x79, 0xb4, 0xc6, 0x06, 0xf8, 0x8c, 0xe9,
-  0x97, 0xa2, 0x42, 0x5a, 0x81, 0x28, 0x2a, 0xe1, 0x33, 0xc6, 0x3c, 0x1b,
-  0x13, 0x39, 0x26, 0x80, 0xe0, 0xd7, 0x49, 0x6b, 0x41, 0x71, 0x5a, 0x5c,
-  0xc4, 0x81, 0xf4, 0x80, 0x52, 0x11, 0x77, 0xda, 0x04, 0xb5, 0x9d, 0xdb,
-  0xc8, 0x68, 0xf6, 0x99, 0x5b, 0x7d, 0x5a, 0x56, 0x26, 0xa2, 0x4a, 0xff,
-  0xf0, 0x03, 0x1f, 0x2d, 0x0b, 0x61, 0x2f, 0xee, 0x4a, 0x5b, 0x99, 0xdc,
-  0x5c, 0xa8, 0x2c, 0x56, 0x62, 0xb3, 0xc8, 0xc9, 0x57, 0x65, 0xf3, 0x0c,
-  0xa5, 0x58, 0x58, 0xc7, 0x25, 0xee, 0x18, 0x8b, 0xf6, 0x33, 0xab, 0xc9,
-  0xce, 0x7a, 0xc4, 0xac, 0x35, 0x5c, 0xcc, 0xf2, 0x9a, 0xd8, 0x09, 0x14,
-  0x74, 0x33, 0x82, 0x17, 0xef, 0xce, 0xbe, 0x39, 0x79, 0x3b, 0x49, 0xb6,
-  0x01, 0x51, 0x76, 0xf6, 0xf6, 0xd5, 0x97, 0xef, 0xce, 0xcc, 0x9f, 0xda,
-  0xd2, 0xcb, 0xb4, 0xc8, 0x8d, 0xe4, 0x61, 0x48, 0x35, 0x2b, 0x0c, 0x37,
-  0xb8, 0xd4, 0xc9, 0x51, 0xd0, 0x2c, 0xa8, 0xa8, 0xac, 0x14, 0x53, 0x13,
-  0xd1, 0x2a, 0xa5, 0x9c, 0x68, 0x46, 0xee, 0x2e, 0x38, 0x25, 0xa1, 0x74,
-  0x56, 0x91, 0xbc, 0x03, 0xae, 0xa6, 0x61, 0xc6, 0xc9, 0xd9, 0x37, 0x2f,
-  0xde, 0x7c, 0x3b, 0xd1, 0xf2, 0xb2, 0xdf, 0x7f, 0xff, 0x7d, 0xd7, 0xab,
-  0x4f, 0xfa, 0x49, 0x9d, 0x7d, 0xf2, 0xc9, 0xe4, 0xe8, 0x28, 0x79, 0x71,
-  0x3c, 0x39, 0xd1, 0x07, 0x2e, 0x9a, 0xe5, 0xe6, 0xee, 0x96, 0x91, 0xbd,
-  0x2f, 0xb3, 0xc6, 0xfc, 0xf2, 0xc9, 0x27, 0xff, 0x1f, 0xf9, 0xd8, 0xca,
-  0x25, 0x1a, 0xe0, 0x02, 0x00,
+  0x79, 0x7b, 0xdb, 0x46, 0x96, 0x2f, 0xfc, 0x7f, 0x3e, 0x05, 0x86, 0xfd,
+  0xf4, 0x95, 0x34, 0x4d, 0x50, 0xbb, 0x17, 0x45, 0xc9, 0x44, 0x91, 0xe5,
+  0x58, 0x13, 0xd9, 0x52, 0x9b, 0x72, 0x92, 0x9e, 0x24, 0x8f, 0x1f, 0x90,
+  0x84, 0x24, 0x44, 0x24, 0xc0, 0x06, 0x40, 0x2d, 0xe9, 0xe9, 0xf7, 0xb3,
+  0xbf, 0x67, 0xad, 0x2a, 0xa0, 0x8a, 0x94, 0xa8, 0x6c, 0x3d, 0xf7, 0xce,
+  0xdc, 0xdb, 0x8e, 0x2d, 0x01, 0x85, 0xaa, 0x53, 0xa7, 0x4e, 0x9d, 0xf5,
+  0x77, 0xa2, 0xe8, 0xa1, 0xff, 0xfb, 0x48, 0xff, 0xfb, 0x08, 0xff, 0x07,
+  0xff, 0xfd, 0x24, 0x8a, 0xce, 0xca, 0xe2, 0xa7, 0x74, 0x58, 0x87, 0x9f,
+  0xfd, 0xf8, 0xf1, 0xbf, 0x23, 0xfe, 0x7f, 0xf0, 0xce, 0x0f, 0xf0, 0xdf,
+  0x4f, 0x16, 0x8e, 0xbd, 0x1e, 0xd9, 0x17, 0xfe, 0xfb, 0xe3, 0x5a, 0xf4,
+  0xd0, 0x0b, 0xff, 0x1d, 0xad, 0xd2, 0x0b, 0x1f, 0xe5, 0x0b, 0xfb, 0xf8,
+  0xf7, 0x8f, 0x1f, 0x17, 0x7f, 0xe4, 0x07, 0x9c, 0x15, 0xfe, 0xb1, 0x8e,
+  0xef, 0xfd, 0xf0, 0x11, 0xff, 0x0a, 0x3f, 0xf9, 0xe4, 0x93, 0x77, 0x07,
+  0x6f, 0x8f, 0xf4, 0xd5, 0xe1, 0xac, 0x1c, 0x47, 0x71, 0x54, 0x97, 0x49,
+  0x5e, 0x5d, 0xa4, 0x65, 0x94, 0x44, 0x1f, 0xde, 0x9f, 0x7c, 0xf2, 0x49,
+  0xff, 0x6f, 0xef, 0x4e, 0xcf, 0xfa, 0xc7, 0xfd, 0xc6, 0x63, 0xdf, 0x17,
+  0xd3, 0x3a, 0x2b, 0xf2, 0x0a, 0xa6, 0x0f, 0x0f, 0x55, 0x3f, 0x7e, 0xf2,
+  0xc9, 0xab, 0xa3, 0xfe, 0xe1, 0xfb, 0xe3, 0xb3, 0xf3, 0xe3, 0xd3, 0x77,
+  0x8d, 0x27, 0xa3, 0xac, 0x8a, 0x60, 0xa8, 0xba, 0x28, 0xc6, 0xd1, 0x45,
+  0x51, 0x9a, 0xe1, 0xcb, 0x2c, 0xbf, 0x8c, 0x46, 0x49, 0x9d, 0x44, 0x17,
+  0x65, 0x31, 0x89, 0xf0, 0x37, 0x05, 0x3c, 0x57, 0xa5, 0xe5, 0x4d, 0x5a,
+  0xf6, 0xa2, 0xe3, 0x3a, 0xaa, 0x66, 0xd3, 0x69, 0x51, 0xd6, 0x95, 0x0e,
+  0x57, 0x5f, 0xa5, 0x55, 0x1a, 0x4d, 0xcb, 0xa2, 0x2e, 0x86, 0xc5, 0xb8,
+  0xda, 0x8b, 0x5e, 0x1d, 0x1f, 0x9e, 0x77, 0xa3, 0xd7, 0xc7, 0x27, 0x47,
+  0xf0, 0xe7, 0xf9, 0x19, 0xfd, 0xd1, 0xef, 0x46, 0x5f, 0x9d, 0x9e, 0xbd,
+  0x39, 0x7a, 0xaf, 0xff, 0x85, 0x1f, 0x44, 0x6f, 0xce, 0xf1, 0xb7, 0xf4,
+  0x9f, 0x7e, 0x57, 0x87, 0x3b, 0x7e, 0x7b, 0x80, 0x3f, 0xc4, 0xff, 0xe0,
+  0x33, 0x27, 0xaf, 0xe8, 0x9f, 0xf8, 0x1f, 0xf8, 0xe7, 0xdb, 0xbf, 0x9e,
+  0xc3, 0xd0, 0x67, 0xa7, 0x67, 0xdb, 0xfc, 0x27, 0xfc, 0xe8, 0xfd, 0xf9,
+  0xdb, 0x33, 0xfe, 0x93, 0xfe, 0xd1, 0x87, 0x7f, 0xf4, 0x0f, 0xcf, 0xcc,
+  0x70, 0x7d, 0x9a, 0x41, 0xff, 0xed, 0x97, 0xf4, 0x47, 0x1f, 0xff, 0xe4,
+  0x1f, 0xd0, 0x9c, 0xce, 0x8f, 0x4e, 0xde, 0x1d, 0x9d, 0xe3, 0x2a, 0xcf,
+  0xe1, 0xb9, 0x5e, 0x74, 0x7e, 0x95, 0x46, 0xc3, 0x62, 0x32, 0x49, 0xf2,
+  0x11, 0x53, 0x68, 0x94, 0x56, 0xd9, 0x65, 0x9e, 0x8e, 0xcc, 0x62, 0x8b,
+  0xe8, 0xb6, 0x28, 0xaf, 0xa3, 0xdb, 0xac, 0xbe, 0x2a, 0x66, 0x75, 0x34,
+  0x03, 0xc2, 0x44, 0x59, 0x5e, 0xa7, 0x65, 0x32, 0x44, 0xca, 0xf7, 0x3e,
+  0x69, 0x50, 0xb9, 0xb8, 0x00, 0x92, 0x56, 0x40, 0xbf, 0xc1, 0xac, 0x1a,
+  0x17, 0xc9, 0x08, 0x7e, 0x80, 0xaf, 0x5c, 0xcc, 0xc6, 0x40, 0xf0, 0x6c,
+  0x78, 0x5d, 0x45, 0xe3, 0xec, 0x9a, 0x88, 0x77, 0x77, 0xaf, 0x84, 0xed,
+  0xf2, 0xa0, 0xc9, 0x0c, 0x08, 0x9b, 0xc7, 0xe6, 0xc3, 0xd9, 0x30, 0xc1,
+  0x0f, 0x10, 0x35, 0xa3, 0xd9, 0x14, 0x47, 0xeb, 0x12, 0xe9, 0xa2, 0x69,
+  0x51, 0xc1, 0x4b, 0xfd, 0xfe, 0x09, 0x4c, 0x3d, 0xcf, 0x53, 0x9a, 0x47,
+  0xd5, 0x85, 0x7f, 0x14, 0xd7, 0x59, 0x0a, 0x7f, 0xb9, 0xc8, 0xc6, 0x69,
+  0xc4, 0x1b, 0x6c, 0x86, 0x43, 0x46, 0x2a, 0xd3, 0x6a, 0x36, 0x49, 0x23,
+  0x5c, 0xeb, 0xa4, 0x28, 0xd3, 0x5e, 0x74, 0x50, 0x45, 0xf7, 0xc5, 0x0c,
+  0xd6, 0x36, 0x1e, 0xc3, 0x86, 0xa7, 0xd1, 0x20, 0x1d, 0x17, 0xb7, 0x5d,
+  0xdc, 0xe0, 0x28, 0x9f, 0x4d, 0x06, 0xf0, 0x0a, 0x4c, 0xff, 0x22, 0x4d,
+  0xea, 0x19, 0xbc, 0x4a, 0x8f, 0xe9, 0x70, 0x93, 0x04, 0x56, 0x01, 0xef,
+  0x96, 0xd1, 0x55, 0x0a, 0xab, 0xac, 0xa6, 0x59, 0xfe, 0x6f, 0x4d, 0x4a,
+  0x00, 0x31, 0xa7, 0xc5, 0x6d, 0x5a, 0xa6, 0xa3, 0x68, 0x70, 0x1f, 0xc1,
+  0xb2, 0x07, 0xcc, 0x86, 0xc8, 0x7b, 0x51, 0x02, 0x1f, 0x34, 0x1c, 0x18,
+  0x97, 0xe9, 0x38, 0xa9, 0xe1, 0x39, 0xf3, 0xa9, 0x1e, 0x6c, 0x63, 0x9a,
+  0xea, 0x70, 0xf2, 0xea, 0xea, 0xf6, 0x1a, 0xbd, 0x3c, 0x4a, 0xeb, 0x24,
+  0x1b, 0x57, 0x40, 0x78, 0x3c, 0x16, 0xf2, 0x0c, 0xee, 0x23, 0x9e, 0x80,
+  0x28, 0xaa, 0xee, 0xf3, 0x3a, 0xb9, 0xa3, 0xcf, 0x0b, 0x87, 0xc6, 0xa3,
+  0x74, 0x9a, 0xe6, 0xa3, 0x34, 0xaf, 0x7b, 0xd1, 0xdf, 0x60, 0xb9, 0x17,
+  0x19, 0x10, 0x20, 0x91, 0x71, 0xe0, 0xb3, 0xb0, 0xe5, 0xc3, 0x32, 0xa3,
+  0x73, 0xa4, 0xc3, 0x65, 0x79, 0xf4, 0xfe, 0xf5, 0x61, 0xb4, 0xfd, 0xf2,
+  0xc5, 0x33, 0xbb, 0xc1, 0xf8, 0xee, 0x30, 0xc9, 0x61, 0xb1, 0xe9, 0x30,
+  0xbb, 0xb8, 0x8f, 0x26, 0xb3, 0x71, 0x9d, 0x4d, 0x81, 0xd4, 0x78, 0xf2,
+  0x90, 0xa5, 0xa6, 0x09, 0x9c, 0x12, 0x24, 0x19, 0xfd, 0x80, 0x96, 0x7d,
+  0x5b, 0x66, 0x35, 0x1e, 0x30, 0xfa, 0x1d, 0x4c, 0x2e, 0xb5, 0xc7, 0x08,
+  0x39, 0x0a, 0xbe, 0x33, 0x00, 0x46, 0x02, 0xe2, 0xe2, 0xa6, 0xfc, 0x7d,
+  0x56, 0xd0, 0xc3, 0x48, 0x7f, 0x5c, 0x4b, 0x52, 0xc1, 0x44, 0xf6, 0x3e,
+  0xb1, 0x22, 0xa5, 0x73, 0x55, 0xd7, 0xd3, 0xbd, 0xf5, 0xf5, 0x2a, 0xab,
+  0xd3, 0xde, 0x3f, 0x8a, 0x3c, 0xed, 0xd6, 0xb7, 0x45, 0xb7, 0xbe, 0x2a,
+  0xd3, 0xf4, 0x9f, 0x3d, 0x60, 0xe3, 0x8e, 0x79, 0x16, 0x66, 0x73, 0x2f,
+  0xd3, 0xbd, 0x4c, 0xe1, 0x08, 0xa7, 0x7f, 0x9f, 0xa5, 0x39, 0x7e, 0x07,
+  0x66, 0x97, 0x8c, 0xa7, 0x57, 0x09, 0xec, 0x6f, 0x0a, 0x0c, 0x89, 0xe7,
+  0x1c, 0x78, 0x06, 0xe7, 0x3a, 0xab, 0xf0, 0xdb, 0xdf, 0xff, 0x18, 0xf8,
+  0xec, 0x05, 0x7d, 0x15, 0xfe, 0xec, 0xa5, 0x77, 0xc9, 0x04, 0x96, 0x8c,
+  0x1f, 0x5b, 0x47, 0x36, 0xfb, 0x7e, 0x33, 0xde, 0xdc, 0xd8, 0xf8, 0xb1,
+  0x57, 0xdf, 0xd5, 0x9d, 0x47, 0xbe, 0xb1, 0xb1, 0xe1, 0xbc, 0x83, 0x0f,
+  0xaf, 0x22, 0x25, 0xa2, 0x31, 0xf0, 0x11, 0x4e, 0xe0, 0xe7, 0xb4, 0x2c,
+  0xaa, 0xb5, 0x47, 0x8e, 0x95, 0xc4, 0x3f, 0xb7, 0xbe, 0xfd, 0x2e, 0xad,
+  0x88, 0x95, 0xec, 0x8a, 0xa3, 0xa4, 0x04, 0x76, 0x2e, 0x8c, 0x1c, 0x4b,
+  0xe1, 0x18, 0x0d, 0xe0, 0x24, 0x2b, 0x7d, 0xe0, 0xf0, 0xc1, 0xd3, 0x20,
+  0xec, 0x12, 0x38, 0xbe, 0x39, 0xbc, 0x90, 0xa7, 0x77, 0xb5, 0x73, 0xfc,
+  0xd3, 0x64, 0x78, 0x15, 0x15, 0xb0, 0x27, 0x65, 0x68, 0x2b, 0xdc, 0x29,
+  0x25, 0xe5, 0xf0, 0x2a, 0xbb, 0x01, 0x9a, 0xbc, 0x7c, 0xf9, 0x2c, 0x86,
+  0x3f, 0x5e, 0xfe, 0xb8, 0x7e, 0x53, 0x8c, 0x81, 0x44, 0x3b, 0x3f, 0xae,
+  0xe3, 0xfe, 0xff, 0x23, 0xe9, 0x0e, 0xba, 0xc3, 0x7f, 0xf6, 0xae, 0xea,
+  0xc9, 0xb8, 0x33, 0x97, 0xad, 0x92, 0x1c, 0xfe, 0x37, 0x29, 0x66, 0x79,
+  0x6d, 0x58, 0xa9, 0xc8, 0x89, 0x27, 0x54, 0x50, 0x8d, 0xb3, 0x1c, 0x0e,
+  0x2f, 0xf2, 0x3c, 0x72, 0x18, 0x1e, 0x5e, 0x38, 0xb9, 0xf6, 0xa0, 0xd7,
+  0xc3, 0x2b, 0xa4, 0x00, 0xf0, 0x56, 0x22, 0x64, 0xa8, 0x33, 0x58, 0x1b,
+  0xbc, 0x9a, 0x93, 0xec, 0xa2, 0xb1, 0xf8, 0x6b, 0x19, 0x3c, 0x58, 0x94,
+  0x23, 0x14, 0xf4, 0xad, 0x69, 0x98, 0xb3, 0xec, 0x7c, 0x33, 0xd2, 0xcb,
+  0x06, 0x7f, 0x40, 0x13, 0x9b, 0x64, 0x77, 0x30, 0x02, 0xfe, 0x13, 0xbf,
+  0x06, 0x13, 0xe7, 0xd1, 0x22, 0x9c, 0x31, 0x7d, 0x46, 0xdf, 0xb7, 0x67,
+  0x19, 0xa6, 0xde, 0x58, 0x3a, 0x7d, 0xd4, 0x2e, 0x3e, 0x82, 0xed, 0x9b,
+  0xc2, 0x5b, 0x33, 0x14, 0xb1, 0x7c, 0x51, 0xc1, 0x30, 0x20, 0x29, 0x2e,
+  0x61, 0x67, 0x60, 0x37, 0x90, 0x9b, 0x71, 0xb3, 0xee, 0xa3, 0x77, 0xc0,
+  0x34, 0x2c, 0xa5, 0x1c, 0xa6, 0x1f, 0xa7, 0x75, 0xfd, 0xf0, 0x46, 0x59,
+  0xce, 0xdd, 0xdb, 0x0c, 0x30, 0xef, 0xbc, 0x37, 0x80, 0xdb, 0xf6, 0xb6,
+  0x5a, 0x8f, 0x7f, 0x0b, 0x32, 0xdb, 0x1e, 0x1d, 0x98, 0xc1, 0x3f, 0xfe,
+  0xe9, 0xf0, 0xde, 0x2d, 0xfe, 0x36, 0xcb, 0x6f, 0x8a, 0x6b, 0x20, 0x13,
+  0xdd, 0xaf, 0x49, 0x93, 0xa2, 0x28, 0xa4, 0x26, 0xd3, 0xda, 0xdc, 0x5e,
+  0xc8, 0x94, 0xf0, 0xa3, 0x41, 0x32, 0x18, 0xdf, 0x47, 0x57, 0xc9, 0x4d,
+  0x8a, 0x6b, 0x9e, 0x02, 0xb7, 0x22, 0x15, 0xe0, 0x16, 0x19, 0x93, 0x60,
+  0x10, 0xd1, 0x31, 0x2a, 0x66, 0x03, 0x10, 0x3f, 0x28, 0x36, 0x98, 0x38,
+  0xc9, 0x4d, 0x91, 0x8d, 0xf0, 0x51, 0x1d, 0xae, 0xba, 0x4a, 0xe1, 0x15,
+  0xfa, 0x30, 0xdd, 0x59, 0x20, 0x6d, 0x71, 0xa6, 0x74, 0xe0, 0xb2, 0x1a,
+  0xaf, 0x3f, 0x90, 0x93, 0xc9, 0xb8, 0x2a, 0xa2, 0xe8, 0xb2, 0xc0, 0xb3,
+  0x42, 0xd2, 0x99, 0x98, 0x1d, 0x36, 0xe6, 0x2a, 0xc1, 0x4b, 0x0e, 0xee,
+  0x33, 0x73, 0x1a, 0xca, 0x94, 0x04, 0x35, 0xed, 0x56, 0x32, 0xee, 0xf2,
+  0x65, 0x86, 0xef, 0x08, 0xad, 0xa2, 0x95, 0xff, 0xb3, 0xd2, 0x8d, 0x56,
+  0xfe, 0x63, 0x85, 0x78, 0x62, 0xe5, 0xdf, 0x57, 0xec, 0x5e, 0x83, 0xae,
+  0x76, 0x93, 0x8d, 0x52, 0x66, 0x8b, 0xe3, 0xb3, 0x9b, 0x67, 0xd1, 0xcf,
+  0x70, 0xda, 0x60, 0x5a, 0xa3, 0xf4, 0x4e, 0x99, 0x52, 0xd7, 0x06, 0x6f,
+  0x47, 0x20, 0x94, 0x93, 0x29, 0x7c, 0x6b, 0x9a, 0x96, 0x43, 0xe0, 0xe0,
+  0xe4, 0x12, 0x78, 0x16, 0x6e, 0x66, 0x1d, 0x0e, 0xc7, 0xc7, 0x57, 0x78,
+  0x59, 0x20, 0x42, 0xa3, 0x3c, 0x99, 0xc0, 0xa9, 0x38, 0xc1, 0x19, 0x65,
+  0x79, 0x60, 0x3b, 0xbf, 0xbf, 0x48, 0x5f, 0x6c, 0xec, 0xed, 0x6d, 0xff,
+  0x79, 0x6b, 0x37, 0xad, 0xaf, 0x36, 0x7e, 0x5c, 0xb7, 0x9b, 0x78, 0x7c,
+  0x41, 0x84, 0x57, 0x26, 0xd4, 0x69, 0xe0, 0x7d, 0xaf, 0x97, 0x08, 0x0c,
+  0x00, 0x7f, 0x4f, 0x2f, 0xb2, 0xbb, 0xae, 0x2a, 0x54, 0x7c, 0xf2, 0x12,
+  0x60, 0x38, 0xd8, 0x41, 0x14, 0x15, 0x3a, 0xdc, 0xe5, 0x2c, 0xad, 0x80,
+  0x96, 0xb7, 0x57, 0x49, 0x1d, 0x99, 0x01, 0x78, 0x6f, 0x27, 0xd9, 0xe5,
+  0x55, 0x1d, 0xdd, 0x26, 0x78, 0x17, 0x81, 0x6a, 0x45, 0x43, 0xe0, 0xb5,
+  0x0f, 0x97, 0xd0, 0x45, 0x02, 0xf7, 0x09, 0xee, 0x22, 0xdd, 0xf1, 0x20,
+  0xa1, 0x2c, 0xd5, 0xef, 0x65, 0x4b, 0x8c, 0xce, 0x15, 0x0d, 0x92, 0x0a,
+  0x8f, 0x6e, 0x0e, 0x22, 0xa2, 0x06, 0xa5, 0x61, 0x86, 0xff, 0xba, 0x02,
+  0xb5, 0x80, 0xa8, 0x20, 0x13, 0xa5, 0x7b, 0xf4, 0x35, 0x6e, 0x28, 0xee,
+  0x8e, 0xd1, 0x04, 0x60, 0x9b, 0xba, 0xb2, 0xd1, 0xe6, 0x8d, 0x0a, 0x8e,
+  0x1d, 0x08, 0x28, 0xc3, 0x1b, 0x28, 0x73, 0x7b, 0x1d, 0x5e, 0x27, 0xcd,
+  0x31, 0xa9, 0x48, 0x75, 0x20, 0x6d, 0x01, 0x26, 0xef, 0x2c, 0x16, 0x88,
+  0x96, 0x5c, 0xa3, 0x8e, 0xd2, 0xd2, 0x84, 0xe8, 0xb5, 0x51, 0x01, 0x6c,
+  0x06, 0xb3, 0x05, 0xa1, 0x8c, 0x2b, 0x43, 0x51, 0x4b, 0x54, 0x21, 0x36,
+  0x87, 0x31, 0xf1, 0x87, 0x59, 0x8d, 0x37, 0x0e, 0x29, 0xb9, 0x30, 0x5f,
+  0x20, 0x0a, 0xe9, 0x61, 0x20, 0xb0, 0x9d, 0xf5, 0xd3, 0x15, 0x0a, 0xcf,
+  0x46, 0x37, 0xc9, 0x38, 0x03, 0x65, 0x35, 0x35, 0x6f, 0xd1, 0x75, 0x3f,
+  0x44, 0x65, 0x69, 0x0c, 0x27, 0x66, 0x58, 0x94, 0x25, 0x1a, 0x04, 0xb8,
+  0x83, 0x03, 0x16, 0xa5, 0x93, 0x14, 0xb4, 0x0c, 0x97, 0x9c, 0x19, 0x5e,
+  0x6f, 0x20, 0x65, 0x40, 0x6d, 0x21, 0x39, 0x02, 0xea, 0x05, 0xc9, 0x7e,
+  0x5a, 0x38, 0xcd, 0x0e, 0xc7, 0x1e, 0x0e, 0xd3, 0x69, 0x5d, 0x85, 0xd6,
+  0xa4, 0x1b, 0x0e, 0xd3, 0x29, 0x53, 0xa4, 0xbc, 0xab, 0x85, 0x11, 0x5d,
+  0x8d, 0x62, 0x40, 0x8a, 0x98, 0xaa, 0x39, 0xa0, 0x98, 0x55, 0x85, 0xd5,
+  0xa1, 0x91, 0x37, 0x40, 0x98, 0x11, 0xcd, 0x27, 0x38, 0x51, 0x7c, 0xb8,
+  0xe2, 0xb3, 0x4a, 0x02, 0x1a, 0x37, 0x92, 0xb5, 0x70, 0xfe, 0x2e, 0x5e,
+  0x61, 0x40, 0x4f, 0x33, 0x38, 0x7c, 0xd5, 0xec, 0x29, 0x7e, 0x1e, 0x6d,
+  0x00, 0xb8, 0xd7, 0x47, 0xd5, 0x15, 0xe8, 0x66, 0x95, 0x9c, 0xed, 0x6c,
+  0x02, 0x3c, 0x73, 0x83, 0xfb, 0x3b, 0x4d, 0xd3, 0x51, 0x2f, 0x3a, 0xbd,
+  0x40, 0xd9, 0x5a, 0xc2, 0xa4, 0x6b, 0xfa, 0x35, 0xde, 0x2d, 0x40, 0xb7,
+  0x11, 0x1e, 0x45, 0xab, 0xfe, 0xf0, 0x54, 0x9c, 0x3b, 0x82, 0xe4, 0x79,
+  0x02, 0x3f, 0x81, 0xd9, 0x8e, 0x9b, 0x17, 0x11, 0x9d, 0x44, 0x90, 0xe1,
+  0x38, 0xbd, 0x41, 0x1a, 0x11, 0x27, 0x0e, 0xd2, 0xfa, 0x36, 0x4d, 0xcd,
+  0x70, 0x55, 0x0a, 0xb7, 0x1f, 0x6e, 0x1a, 0x2b, 0x86, 0x20, 0x0e, 0x59,
+  0xb5, 0x45, 0xf2, 0x9e, 0x7e, 0x38, 0x3f, 0xfb, 0x70, 0xee, 0x1c, 0x44,
+  0x1c, 0xa7, 0x2e, 0xc6, 0x23, 0x66, 0xf9, 0xdb, 0xac, 0x02, 0x6e, 0x65,
+  0xe2, 0x83, 0x2a, 0x85, 0x62, 0x0e, 0xaf, 0x83, 0x74, 0x98, 0xc2, 0x45,
+  0x3b, 0x62, 0xbb, 0x05, 0x36, 0xa2, 0xaa, 0x41, 0x16, 0xf2, 0x91, 0xc2,
+  0xb9, 0xe8, 0x70, 0x30, 0x1f, 0xda, 0xeb, 0x72, 0x36, 0x24, 0xa5, 0x00,
+  0x39, 0x48, 0xf7, 0xbe, 0x22, 0xe1, 0x8a, 0xdb, 0x40, 0x83, 0x80, 0x1c,
+  0x41, 0xb3, 0x67, 0x0c, 0x53, 0x1b, 0xd3, 0xfa, 0xbb, 0x22, 0xd5, 0x1d,
+  0x69, 0x1a, 0x17, 0xdd, 0x28, 0x8e, 0xe1, 0x43, 0x28, 0x90, 0x61, 0x9f,
+  0xe3, 0x53, 0xfc, 0x77, 0x99, 0x4e, 0x40, 0xfe, 0xc6, 0x74, 0xf0, 0xe4,
+  0x82, 0xec, 0xe1, 0x42, 0xac, 0xd5, 0x75, 0x09, 0x73, 0x05, 0xfa, 0xe9,
+  0xce, 0xe9, 0x70, 0xac, 0x25, 0xe2, 0x9c, 0x8c, 0xa9, 0x17, 0xb8, 0xe8,
+  0xbb, 0xc8, 0x8e, 0x55, 0x36, 0xc9, 0xc6, 0x49, 0x09, 0x3b, 0x95, 0xc3,
+  0x36, 0x56, 0x96, 0x09, 0x8a, 0xa9, 0x63, 0x30, 0x28, 0xff, 0xc1, 0xad,
+  0x53, 0xd2, 0xc5, 0x21, 0x6b, 0x4c, 0x27, 0x2d, 0x3e, 0x1e, 0xa1, 0xac,
+  0x47, 0x42, 0xc3, 0xbe, 0x00, 0x2b, 0xc0, 0x2b, 0x86, 0xd8, 0x51, 0x67,
+  0x06, 0x12, 0xb9, 0x04, 0x71, 0x90, 0x8f, 0x3a, 0x32, 0x19, 0x10, 0xb1,
+  0x39, 0x1e, 0x4b, 0xe6, 0xd8, 0x0a, 0x2f, 0x5a, 0xa3, 0xc4, 0xf2, 0xa6,
+  0xe0, 0x59, 0x8c, 0x98, 0x30, 0x7c, 0x86, 0xe5, 0x0b, 0x11, 0x5c, 0x83,
+  0x05, 0xa9, 0x75, 0xa4, 0xb8, 0xf3, 0xdf, 0x81, 0xb2, 0xf9, 0x18, 0x25,
+  0x64, 0x7a, 0x37, 0x1d, 0x67, 0xc3, 0xac, 0x1e, 0x1b, 0x6d, 0x23, 0xa9,
+  0xf0, 0xa2, 0x44, 0x9b, 0x0b, 0x0f, 0xe3, 0x28, 0x1d, 0xa1, 0x11, 0x04,
+  0x3f, 0x09, 0x69, 0x21, 0xb0, 0xa6, 0xb3, 0xf7, 0xa7, 0xe7, 0xa7, 0x87,
+  0xa7, 0x27, 0x4d, 0x9b, 0x58, 0xed, 0xd5, 0x88, 0x74, 0xdc, 0x62, 0x66,
+  0x2d, 0x01, 0x38, 0x82, 0xa8, 0xa6, 0xc3, 0xee, 0xc1, 0x85, 0x43, 0xd6,
+  0x02, 0x5c, 0x1e, 0x13, 0xb0, 0x60, 0xa3, 0x0a, 0x74, 0xa6, 0x09, 0x09,
+  0x4c, 0xd0, 0x49, 0xcc, 0xea, 0x50, 0x69, 0xcb, 0x86, 0x33, 0xa0, 0x3c,
+  0x08, 0x90, 0x0c, 0x78, 0x72, 0x92, 0xdc, 0xbb, 0xaa, 0x24, 0xd1, 0x16,
+  0x8d, 0x19, 0x4b, 0x5f, 0xb4, 0x85, 0xe1, 0x3f, 0x27, 0x48, 0x27, 0x94,
+  0x72, 0x63, 0x30, 0xca, 0x66, 0x53, 0xb4, 0x21, 0x61, 0xdb, 0x98, 0xa3,
+  0xe0, 0xc4, 0xe1, 0x32, 0x60, 0x6d, 0xb8, 0x8e, 0x04, 0xf5, 0x6f, 0xfb,
+  0x3e, 0x5a, 0xd1, 0xf0, 0x9f, 0xf7, 0xc8, 0xa2, 0x38, 0x59, 0xa6, 0x70,
+  0x24, 0x8c, 0xc9, 0x27, 0xb3, 0xa7, 0x37, 0x90, 0xd9, 0x47, 0x9d, 0x0f,
+  0x8a, 0xad, 0x0a, 0x3f, 0xd2, 0x72, 0x43, 0xe0, 0x6b, 0x78, 0x83, 0xe1,
+  0x9a, 0x99, 0x5f, 0xc7, 0xf7, 0xac, 0x05, 0x93, 0x86, 0x52, 0xce, 0xf2,
+  0x9c, 0x67, 0x16, 0xbd, 0xcd, 0x86, 0xa0, 0x7f, 0xc3, 0xad, 0x12, 0x7d,
+  0x0b, 0x57, 0x73, 0x71, 0x0b, 0xfb, 0x3a, 0xb3, 0x56, 0xa4, 0x31, 0x8f,
+  0xd8, 0x48, 0xc9, 0xe1, 0x18, 0x03, 0x87, 0x7d, 0x78, 0x77, 0x18, 0x25,
+  0x53, 0x20, 0x32, 0x6a, 0xca, 0x24, 0xab, 0xd0, 0x64, 0x76, 0xd6, 0x74,
+  0x7e, 0xb6, 0xda, 0x5f, 0x93, 0x39, 0x9b, 0xdd, 0x61, 0xfd, 0xf0, 0x35,
+  0x8a, 0xc8, 0x73, 0xe5, 0xff, 0x33, 0xbd, 0x2c, 0x59, 0x0b, 0x80, 0x55,
+  0x93, 0x12, 0x0c, 0xd2, 0x24, 0xb9, 0xae, 0x5a, 0x93, 0x20, 0x7e, 0x40,
+  0x55, 0x10, 0xe8, 0xf1, 0x2d, 0x3e, 0x8e, 0x9c, 0x6f, 0xac, 0x74, 0x9c,
+  0xe2, 0xf9, 0x49, 0xdf, 0x4e, 0x82, 0xbd, 0x10, 0x30, 0x8f, 0xd6, 0x30,
+  0xef, 0x53, 0x30, 0xcc, 0x61, 0x18, 0x21, 0xad, 0x79, 0x1e, 0x6f, 0x61,
+  0xff, 0xe9, 0x26, 0x83, 0xd1, 0x4d, 0x4d, 0x53, 0x35, 0xac, 0xe6, 0xaa,
+  0xc8, 0x37, 0xb0, 0xb7, 0x89, 0x0a, 0x84, 0xa6, 0x64, 0x6a, 0x5c, 0x9e,
+  0x34, 0x0c, 0x2e, 0x04, 0x1e, 0x8d, 0x36, 0x7a, 0x2f, 0xbb, 0xd1, 0x66,
+  0x6f, 0x03, 0xff, 0xd8, 0xec, 0x46, 0x5b, 0x34, 0xd2, 0x76, 0xc4, 0x36,
+  0xac, 0x6c, 0x12, 0x33, 0xa3, 0x73, 0xf6, 0x1b, 0x22, 0x40, 0x55, 0x23,
+  0xbd, 0x0c, 0xe7, 0x1c, 0x1e, 0xc7, 0xfd, 0xe2, 0xaf, 0xf3, 0x83, 0xca,
+  0x3e, 0x60, 0xf9, 0x6c, 0x0c, 0x3c, 0xc3, 0xc6, 0x99, 0x1e, 0x24, 0x11,
+  0xc9, 0xa8, 0xba, 0x77, 0x80, 0x49, 0x72, 0x74, 0x4e, 0x74, 0xa2, 0x14,
+  0x9f, 0x65, 0x25, 0xb2, 0x35, 0x1c, 0x9c, 0x84, 0x47, 0x6d, 0x12, 0x7a,
+  0x7d, 0xe6, 0x10, 0x1d, 0xbf, 0x05, 0xd7, 0xdf, 0x28, 0xc3, 0x35, 0x15,
+  0x78, 0x6f, 0xd3, 0xc9, 0x62, 0x89, 0x07, 0xe3, 0x77, 0x79, 0x23, 0x9c,
+  0xf1, 0x1b, 0x23, 0xa3, 0x23, 0xc9, 0xdb, 0x3f, 0xfa, 0xa1, 0x12, 0x7e,
+  0xbb, 0x17, 0xbd, 0x92, 0xa5, 0x10, 0x99, 0xf1, 0xe2, 0xa5, 0x07, 0x40,
+  0x9b, 0x07, 0x15, 0x39, 0xea, 0x54, 0xb3, 0x41, 0x9b, 0xe0, 0xe8, 0x38,
+  0x18, 0xa4, 0x1d, 0x76, 0x99, 0xd5, 0xc5, 0x14, 0x0c, 0xea, 0xdb, 0x2b,
+  0xe4, 0x68, 0xf6, 0xd7, 0xc0, 0x38, 0xeb, 0xe8, 0xac, 0xc1, 0xf1, 0x74,
+  0x94, 0x29, 0xe8, 0xec, 0x59, 0x75, 0xd5, 0xc1, 0x7d, 0x4c, 0xda, 0xfb,
+  0x87, 0x23, 0xf4, 0xf8, 0xab, 0xf4, 0x7d, 0x58, 0x02, 0xde, 0x20, 0x0d,
+  0xeb, 0x35, 0x5a, 0xbd, 0x4f, 0xeb, 0x35, 0x47, 0xb1, 0x3e, 0x3d, 0xdb,
+  0xf6, 0x69, 0xe6, 0x2e, 0x85, 0x95, 0x0a, 0xbc, 0xbf, 0xa7, 0xc5, 0x74,
+  0x3b, 0x52, 0xad, 0x82, 0x35, 0x23, 0xd5, 0x41, 0x12, 0xda, 0x69, 0xb3,
+  0x4b, 0xad, 0xe1, 0x16, 0xec, 0x19, 0x7a, 0xe2, 0xfc, 0xef, 0xa3, 0x43,
+  0x06, 0x84, 0x18, 0x5c, 0x53, 0x70, 0x2d, 0xbe, 0x05, 0xa1, 0x94, 0x5c,
+  0xe2, 0x9b, 0xe6, 0x80, 0xd3, 0xc5, 0x38, 0x2d, 0xb3, 0x09, 0x9c, 0x11,
+  0xb8, 0xd6, 0x58, 0x6f, 0xa0, 0xcb, 0x90, 0x67, 0xd7, 0x26, 0x34, 0x9a,
+  0x1e, 0x13, 0xd2, 0x95, 0xe0, 0x52, 0x48, 0x58, 0xe9, 0xb0, 0x6c, 0xc1,
+  0x6b, 0x45, 0x93, 0xc6, 0x99, 0x56, 0xff, 0xcc, 0xdb, 0x70, 0xfa, 0x21,
+  0x1c, 0x2e, 0xf3, 0x8a, 0x73, 0x10, 0xfa, 0x87, 0x67, 0xfe, 0x09, 0xef,
+  0xf7, 0xdf, 0x18, 0x06, 0xd9, 0x82, 0xed, 0x9e, 0x5a, 0x75, 0xce, 0x79,
+  0x13, 0x3d, 0x74, 0xde, 0x9b, 0xf8, 0xc3, 0xd5, 0x51, 0x99, 0x80, 0x28,
+  0xdd, 0x5d, 0x13, 0x0d, 0x0b, 0xc9, 0xde, 0x18, 0xd2, 0x19, 0xe4, 0xed,
+  0x97, 0x46, 0x48, 0xda, 0x41, 0xde, 0x7e, 0x69, 0x9e, 0xdd, 0x24, 0x4e,
+  0x67, 0xc6, 0xa2, 0xf5, 0xeb, 0x1a, 0xdc, 0x31, 0x42, 0x32, 0xeb, 0xc3,
+  0xd4, 0x30, 0x82, 0xdc, 0xe5, 0xa2, 0x76, 0xa0, 0xe1, 0x8d, 0xaf, 0x34,
+  0x19, 0xa2, 0x12, 0x39, 0x83, 0x36, 0x18, 0xb1, 0x44, 0x6b, 0xb8, 0x6f,
+  0x17, 0x1d, 0x33, 0xf1, 0xaf, 0x9e, 0x83, 0xd9, 0x89, 0x63, 0xd0, 0x6a,
+  0xe0, 0x53, 0xe4, 0x94, 0xc0, 0x23, 0x92, 0x8e, 0xf3, 0x94, 0xd5, 0x73,
+  0x32, 0x38, 0x50, 0x58, 0x59, 0x6f, 0xea, 0x0d, 0x2a, 0xbc, 0x55, 0xe5,
+  0xf8, 0xe1, 0x94, 0xfb, 0x48, 0xa1, 0x21, 0x05, 0x04, 0x67, 0x67, 0x6c,
+  0x2b, 0xfc, 0x01, 0x8a, 0xa6, 0x8a, 0x14, 0x54, 0x50, 0x02, 0xc9, 0x0b,
+  0x31, 0x12, 0x4d, 0xa4, 0xe2, 0xa7, 0x1c, 0x05, 0xce, 0xe8, 0xa3, 0xb4,
+  0x5c, 0x1e, 0xca, 0xe5, 0x99, 0x73, 0x67, 0x23, 0x45, 0xde, 0xd0, 0x8f,
+  0x0c, 0xb7, 0xd0, 0xe8, 0xbc, 0x05, 0xa2, 0x7f, 0x7c, 0xf5, 0xfe, 0xa8,
+  0xdf, 0x8f, 0xde, 0x1e, 0x9d, 0x1f, 0xbd, 0x6f, 0x28, 0x21, 0x79, 0x51,
+  0x4e, 0xc8, 0x24, 0x19, 0x65, 0xd5, 0x74, 0x9c, 0xdc, 0xa3, 0xad, 0x02,
+  0xd2, 0xf3, 0xb2, 0x44, 0xc5, 0x67, 0x92, 0xa2, 0x73, 0x63, 0x34, 0x23,
+  0x63, 0x1c, 0x44, 0x32, 0x2c, 0x5f, 0x7c, 0xb8, 0x68, 0x0f, 0x93, 0xe3,
+  0xd7, 0x5e, 0xe1, 0x74, 0x4d, 0x8a, 0x43, 0x08, 0x2f, 0x43, 0xeb, 0xb9,
+  0xc7, 0x13, 0x83, 0xca, 0x6b, 0xd7, 0xd1, 0x20, 0x49, 0xcf, 0xe7, 0x79,
+  0x82, 0xd1, 0x05, 0xc7, 0x0b, 0x25, 0x06, 0x1e, 0x42, 0xe3, 0x81, 0x49,
+  0x2f, 0xea, 0x6e, 0x04, 0xfb, 0xc1, 0xce, 0xef, 0xf6, 0x9c, 0x74, 0xb6,
+  0xd6, 0xff, 0x3b, 0xb8, 0xaf, 0xc5, 0x3f, 0xc9, 0x53, 0xe1, 0x2f, 0x18,
+  0x8d, 0x8d, 0x36, 0x26, 0x8f, 0xe4, 0xb1, 0x29, 0xd1, 0x15, 0xd8, 0x6c,
+  0xc4, 0xc3, 0x57, 0xb3, 0x0b, 0xb2, 0x44, 0xa3, 0xd5, 0xeb, 0x6e, 0xf4,
+  0xb6, 0x1b, 0x7d, 0xd5, 0x8d, 0xd0, 0x9f, 0xbf, 0x46, 0xef, 0x6d, 0x6e,
+  0x6c, 0xed, 0xb0, 0x25, 0x6b, 0x78, 0xec, 0xb5, 0xe3, 0x4b, 0xd8, 0xbc,
+  0x46, 0x21, 0xc1, 0x0f, 0xe1, 0xe0, 0xbd, 0x68, 0xf3, 0x2d, 0xff, 0x64,
+  0xe7, 0xc5, 0xee, 0xf3, 0x67, 0xf2, 0xc3, 0x96, 0x66, 0xab, 0xf3, 0x27,
+  0xf3, 0x46, 0xcd, 0x03, 0x9c, 0x37, 0x6a, 0x7a, 0x59, 0x0e, 0x3a, 0x14,
+  0xd8, 0x85, 0x62, 0x6c, 0xa3, 0x41, 0x06, 0x93, 0xbf, 0x60, 0xd3, 0x5c,
+  0xfc, 0x34, 0xcd, 0xa0, 0x09, 0xbc, 0x0c, 0x4c, 0x00, 0xac, 0x60, 0x36,
+  0x89, 0xbd, 0x5d, 0x35, 0x4e, 0x24, 0x19, 0x20, 0xff, 0xa3, 0xb6, 0x4a,
+  0x3a, 0x5a, 0xe8, 0x6b, 0xc6, 0xb1, 0x03, 0x6f, 0xc0, 0xdc, 0x92, 0xc1,
+  0x58, 0x4c, 0x98, 0x16, 0xdd, 0x41, 0x7f, 0xb6, 0x2a, 0x38, 0x3c, 0x7b,
+  0x5b, 0xcc, 0x50, 0xdd, 0xc4, 0x07, 0x40, 0x7b, 0xc4, 0x17, 0x98, 0xa7,
+  0x8d, 0xff, 0x3d, 0xbb, 0x93, 0xfb, 0xb8, 0x31, 0x0a, 0x4c, 0x0d, 0xfe,
+  0x39, 0x05, 0x56, 0xe2, 0xe9, 0xf4, 0xda, 0x2e, 0x0e, 0x32, 0xde, 0x3d,
+  0x4e, 0x44, 0xc1, 0x42, 0x4a, 0xc8, 0xd9, 0x69, 0x9f, 0x82, 0x23, 0x60,
+  0x92, 0xc1, 0x40, 0x7f, 0x9f, 0x01, 0x0b, 0x01, 0x53, 0xe2, 0x8b, 0x68,
+  0x77, 0x38, 0x56, 0x3f, 0xf0, 0x1e, 0x5d, 0xc4, 0x62, 0x8e, 0xc9, 0x27,
+  0xc5, 0x34, 0xa2, 0xdb, 0xd0, 0xb5, 0xa1, 0xd8, 0x0d, 0x65, 0xde, 0x89,
+  0x56, 0x3f, 0x5f, 0xeb, 0x92, 0x39, 0x65, 0x2c, 0x2b, 0xc7, 0xaa, 0x12,
+  0x5b, 0xc7, 0x39, 0x95, 0x57, 0x14, 0x98, 0x21, 0xff, 0x14, 0xde, 0x84,
+  0xa0, 0x6a, 0xc2, 0xb9, 0x82, 0x8f, 0xd8, 0xc0, 0x08, 0xd2, 0x8f, 0x6c,
+  0x39, 0xbb, 0x4d, 0x56, 0x37, 0x9e, 0x02, 0x3d, 0x0b, 0x4b, 0x3a, 0xb4,
+  0xb5, 0x1b, 0x44, 0x6a, 0xef, 0x99, 0x47, 0x34, 0x74, 0xa7, 0x50, 0x1c,
+  0xce, 0x90, 0x2d, 0xea, 0x0c, 0x92, 0xb2, 0x63, 0x8d, 0x49, 0x3e, 0x97,
+  0x78, 0x3a, 0xca, 0xf4, 0x92, 0xec, 0x05, 0xa6, 0x2c, 0xae, 0xf2, 0x4f,
+  0xce, 0x2a, 0x75, 0x80, 0x78, 0x80, 0x8f, 0x64, 0x15, 0x87, 0x50, 0x2e,
+  0x40, 0x01, 0xc5, 0x03, 0xa3, 0x2e, 0x58, 0x72, 0xc8, 0x09, 0xb7, 0x04,
+  0x98, 0xc5, 0x71, 0xcd, 0xc2, 0x31, 0x41, 0x55, 0x9e, 0x55, 0x1f, 0x7c,
+  0x32, 0xae, 0xd0, 0x24, 0xad, 0x80, 0xf6, 0xe8, 0x3e, 0x9e, 0x4a, 0x84,
+  0xea, 0x94, 0xc2, 0x81, 0xc6, 0x4a, 0x3a, 0x15, 0x1d, 0x95, 0x44, 0xb0,
+  0xa8, 0x4d, 0x39, 0x99, 0x81, 0xf5, 0x2d, 0x7c, 0x38, 0x81, 0xed, 0x82,
+  0xc3, 0xf6, 0x16, 0x09, 0x85, 0xca, 0x37, 0x2e, 0x4b, 0xd5, 0x5a, 0xe2,
+  0x8a, 0x0c, 0xcf, 0xbc, 0xd5, 0x65, 0x93, 0xd1, 0x28, 0x23, 0x4b, 0x66,
+  0x8c, 0xee, 0x99, 0x59, 0x4a, 0x0e, 0x74, 0x21, 0xea, 0xc4, 0xdd, 0x46,
+  0x14, 0x1e, 0x57, 0x68, 0xa6, 0x80, 0x2e, 0x45, 0x8e, 0x84, 0x18, 0xbf,
+  0xd5, 0x21, 0x85, 0x71, 0x12, 0xe9, 0xb7, 0xe4, 0x53, 0xb0, 0x8e, 0x91,
+  0xeb, 0x5a, 0xec, 0x92, 0xf1, 0x65, 0xfd, 0xdc, 0xa4, 0x30, 0xb4, 0x55,
+  0xbe, 0x04, 0x76, 0x1b, 0x7d, 0x81, 0xe2, 0x80, 0x20, 0x4f, 0x0e, 0x1d,
+  0xd7, 0x8a, 0xa7, 0xd6, 0x05, 0xda, 0xe2, 0x93, 0x97, 0x57, 0xfa, 0xa8,
+  0xe3, 0x15, 0x4a, 0xd0, 0xaf, 0x00, 0xba, 0x32, 0xc6, 0x8a, 0x46, 0xea,
+  0xb4, 0x28, 0x4a, 0x16, 0x64, 0xe3, 0x02, 0xf8, 0xb8, 0xc3, 0x1e, 0x57,
+  0x99, 0x36, 0xce, 0x1a, 0x67, 0x89, 0x14, 0xe7, 0x00, 0xaa, 0x55, 0x9b,
+  0xcc, 0xa4, 0x85, 0x5e, 0xd5, 0x83, 0x53, 0x73, 0x6e, 0x71, 0xa2, 0x91,
+  0x5e, 0xfb, 0x4a, 0x79, 0x76, 0x55, 0x14, 0xc4, 0xd2, 0x74, 0x18, 0xc9,
+  0xdd, 0xee, 0xd0, 0x9e, 0x87, 0xa9, 0xc4, 0xa1, 0xde, 0x22, 0x54, 0x94,
+  0x4d, 0x48, 0x71, 0x22, 0x6e, 0x31, 0x1b, 0x64, 0x43, 0x1b, 0x01, 0x57,
+  0xee, 0x7d, 0x38, 0x20, 0x90, 0xb0, 0xc7, 0xd2, 0xcc, 0x8b, 0x9c, 0x20,
+  0x27, 0xb4, 0x96, 0xf8, 0x26, 0xc2, 0x23, 0x98, 0xc3, 0x2a, 0x13, 0xfc,
+  0xc5, 0xc9, 0x8d, 0x73, 0x94, 0x30, 0x10, 0x95, 0xa3, 0xa3, 0xad, 0x4b,
+  0x43, 0x0c, 0x8a, 0x62, 0x9c, 0x26, 0x76, 0x79, 0x78, 0x1f, 0xa4, 0x39,
+  0x72, 0xbc, 0xec, 0x2a, 0x88, 0x84, 0xa9, 0x91, 0xb7, 0xa0, 0xf1, 0x46,
+  0xc9, 0x65, 0x92, 0x19, 0x9e, 0x93, 0xd3, 0x31, 0x8a, 0xf4, 0xe1, 0xbc,
+  0x90, 0xe7, 0x71, 0xbb, 0xd0, 0x87, 0x27, 0x72, 0x6b, 0x56, 0xf1, 0x11,
+  0x82, 0x55, 0x81, 0xe4, 0xa9, 0xac, 0x93, 0x86, 0xfc, 0x9e, 0xc6, 0x51,
+  0x44, 0x9e, 0x5e, 0x74, 0x9a, 0x92, 0xf0, 0x25, 0x17, 0x28, 0x8c, 0xd8,
+  0xe9, 0x45, 0x6f, 0x8a, 0x5b, 0xb4, 0x31, 0xbb, 0xec, 0xa2, 0xce, 0x30,
+  0x7e, 0x5b, 0xc1, 0x13, 0x60, 0x17, 0x81, 0x5e, 0x0f, 0xb4, 0x24, 0xf7,
+  0x19, 0xfd, 0xcc, 0x89, 0x72, 0x00, 0x97, 0xdf, 0xf2, 0x71, 0xd4, 0x45,
+  0x98, 0xdd, 0xbc, 0x68, 0x9d, 0x8a, 0x38, 0x4e, 0x06, 0xa0, 0xdc, 0xc2,
+  0xe4, 0xe2, 0x59, 0x9e, 0xdd, 0xc5, 0x55, 0x31, 0xbc, 0x86, 0xc5, 0xee,
+  0x4f, 0x93, 0xfa, 0xea, 0xf3, 0x96, 0xde, 0xb2, 0x8a, 0x32, 0x7a, 0x2d,
+  0x8a, 0x0e, 0xd9, 0xdf, 0x88, 0x12, 0xa7, 0x64, 0x5e, 0x06, 0x2a, 0xc9,
+  0x28, 0xd1, 0x07, 0x18, 0x05, 0xf8, 0x04, 0x34, 0x37, 0xd8, 0x3a, 0x1a,
+  0xac, 0xab, 0x62, 0xaa, 0x35, 0x1c, 0x85, 0xa6, 0x8d, 0x29, 0x0f, 0x6c,
+  0x89, 0x46, 0x7b, 0x14, 0xbd, 0x2b, 0xea, 0x74, 0x0f, 0xff, 0x0d, 0xe2,
+  0xa1, 0xa6, 0xa5, 0xc8, 0x8d, 0x05, 0x33, 0x62, 0x41, 0x87, 0xfc, 0x95,
+  0xf8, 0xb6, 0x10, 0x7f, 0x5f, 0x3e, 0x1a, 0xa9, 0x13, 0x5a, 0xb7, 0x28,
+  0x5a, 0xf9, 0x62, 0xa5, 0x1b, 0x5d, 0x31, 0x39, 0x69, 0x40, 0x5e, 0x23,
+  0xec, 0xfc, 0x25, 0x18, 0xcf, 0x79, 0xdd, 0x1e, 0xee, 0x8a, 0xae, 0x40,
+  0x64, 0x77, 0x8e, 0x83, 0x10, 0xf1, 0xc5, 0x0e, 0x35, 0xa1, 0x89, 0xde,
+  0x27, 0xad, 0xd7, 0x8e, 0x98, 0x7b, 0xf7, 0xda, 0x79, 0x18, 0x9c, 0x54,
+  0x11, 0x26, 0x36, 0xff, 0x87, 0xd6, 0x87, 0xb1, 0x82, 0xaa, 0x19, 0xfb,
+  0x69, 0x7f, 0xe1, 0x60, 0x84, 0xe2, 0x01, 0xa8, 0xfb, 0xbc, 0xb7, 0xbb,
+  0xdd, 0xdb, 0x68, 0x6c, 0xe5, 0xb8, 0x8e, 0xab, 0x9b, 0x61, 0xb4, 0x4f,
+  0x8e, 0x5f, 0x64, 0xb0, 0xe0, 0x16, 0x82, 0x9a, 0x4f, 0x77, 0x9a, 0xf0,
+  0x06, 0xb3, 0x3d, 0x13, 0x59, 0x47, 0x20, 0xc7, 0x1c, 0x05, 0xeb, 0x70,
+  0xe2, 0x3d, 0xba, 0x8a, 0x02, 0x9a, 0xac, 0xf9, 0x0e, 0x58, 0x76, 0x19,
+  0xea, 0xf5, 0x35, 0x29, 0x2b, 0xe9, 0x5d, 0xc6, 0x46, 0xa7, 0x0e, 0x37,
+  0x84, 0x83, 0x9e, 0xca, 0x95, 0x4c, 0x82, 0x84, 0xbc, 0x34, 0x83, 0xf6,
+  0x70, 0x28, 0x2a, 0x7a, 0xd1, 0xc1, 0x05, 0xe9, 0x12, 0xe6, 0x7e, 0x19,
+  0x19, 0xed, 0x92, 0x53, 0x03, 0x78, 0x30, 0x19, 0x81, 0x7c, 0x8c, 0x23,
+  0x91, 0xf6, 0x73, 0x67, 0x47, 0x67, 0x17, 0x35, 0xad, 0x0c, 0x77, 0x13,
+  0x03, 0x02, 0x20, 0x01, 0x27, 0xc5, 0x88, 0xbc, 0xcb, 0xde, 0x1e, 0xf6,
+  0x4d, 0x30, 0xb0, 0xd3, 0x71, 0x06, 0x59, 0xc5, 0xd0, 0x30, 0xb0, 0x40,
+  0x7e, 0x59, 0x5f, 0xad, 0xd9, 0x70, 0x97, 0x1a, 0xda, 0x30, 0x11, 0x36,
+  0x5b, 0xda, 0x7c, 0x4e, 0xb9, 0x0a, 0xb4, 0xff, 0x3f, 0xcd, 0xaa, 0x9a,
+  0x7c, 0xe4, 0x72, 0xaf, 0xf2, 0x4a, 0x60, 0x66, 0x93, 0x74, 0x52, 0x94,
+  0xf7, 0xde, 0x44, 0x8e, 0x2f, 0x98, 0xed, 0x64, 0xa3, 0xb2, 0x8a, 0x85,
+  0xa9, 0x46, 0x8b, 0x51, 0xad, 0xae, 0xba, 0x8d, 0x68, 0x10, 0x29, 0x23,
+  0xc6, 0xcc, 0x6a, 0xd3, 0x83, 0x02, 0x80, 0x22, 0x3f, 0xd9, 0xc7, 0x3e,
+  0x90, 0xd0, 0xde, 0x38, 0xa9, 0x6a, 0xba, 0x84, 0x95, 0xac, 0xf4, 0x21,
+  0x14, 0xc7, 0xbc, 0xac, 0xa5, 0xf9, 0x5c, 0x36, 0x1e, 0xfe, 0x87, 0xf1,
+  0xca, 0x25, 0xf9, 0xfa, 0xd9, 0x4e, 0x6f, 0xb3, 0xc1, 0xd7, 0xf9, 0x3d,
+  0x66, 0xa7, 0x84, 0xc5, 0x11, 0xda, 0x7a, 0x95, 0xb5, 0xf4, 0xb2, 0xcb,
+  0x59, 0x49, 0x9a, 0xa0, 0x24, 0xb4, 0x68, 0x1e, 0x0b, 0xea, 0x2e, 0x57,
+  0x05, 0x25, 0x83, 0xc0, 0x9d, 0x97, 0x8e, 0x2f, 0xba, 0x01, 0x7f, 0x9e,
+  0x4a, 0x6b, 0x14, 0xae, 0x68, 0x47, 0xd0, 0x50, 0x79, 0x2a, 0x5a, 0x26,
+  0xfa, 0x2d, 0x23, 0xcc, 0x7d, 0x88, 0x86, 0xe3, 0x24, 0x9b, 0x88, 0x15,
+  0x2b, 0xc6, 0x72, 0xcf, 0x73, 0x40, 0x70, 0x7c, 0x83, 0x0c, 0xef, 0x01,
+  0x86, 0x57, 0xca, 0x0a, 0x2f, 0x50, 0xf6, 0x75, 0x88, 0x72, 0xcb, 0x7e,
+  0x84, 0xab, 0x74, 0x78, 0xad, 0x72, 0x50, 0x35, 0xc3, 0xb6, 0x74, 0xc3,
+  0x34, 0x17, 0x8a, 0xe1, 0xd4, 0x57, 0xe8, 0x50, 0x2e, 0xc0, 0x4c, 0xc5,
+  0x10, 0x2d, 0x98, 0x6b, 0xb3, 0x21, 0x59, 0x71, 0x28, 0x14, 0xe1, 0x5a,
+  0x2d, 0x93, 0x48, 0x65, 0x29, 0x28, 0x4b, 0x60, 0xb4, 0x8d, 0xe2, 0xba,
+  0xcc, 0xa6, 0xc1, 0xd9, 0x91, 0x0f, 0x44, 0xae, 0x67, 0x57, 0x91, 0xac,
+  0xc4, 0x25, 0x43, 0x11, 0x17, 0x8e, 0xc1, 0x0c, 0x5b, 0xd4, 0x6c, 0xb3,
+  0x38, 0xd1, 0xb6, 0x8b, 0xce, 0x27, 0xb8, 0xd1, 0xf5, 0xe6, 0x1e, 0x89,
+  0x1f, 0x1d, 0x76, 0x10, 0xac, 0xac, 0x6c, 0x88, 0xda, 0x68, 0x3c, 0xca,
+  0x2e, 0x53, 0x4c, 0x1f, 0xc2, 0x3b, 0xb3, 0x1e, 0x83, 0x02, 0x13, 0x38,
+  0x31, 0xf0, 0xab, 0xf4, 0xb2, 0xa8, 0x51, 0x5d, 0xf0, 0x18, 0x8f, 0x3d,
+  0x83, 0x86, 0x27, 0xd4, 0x3d, 0xe5, 0xaa, 0x4e, 0x19, 0xab, 0xcd, 0xf0,
+  0x79, 0x31, 0x95, 0x99, 0xf3, 0xc9, 0x3e, 0x6f, 0xef, 0x3a, 0x8c, 0x36,
+  0x24, 0x8b, 0x07, 0xb5, 0x3b, 0x55, 0x2e, 0x55, 0x2b, 0x47, 0xf1, 0x82,
+  0x8a, 0x6c, 0x7d, 0x9b, 0x0d, 0x53, 0xf5, 0x6b, 0x9a, 0xcc, 0x82, 0x71,
+  0xe6, 0xdf, 0x1a, 0x13, 0x3c, 0xe1, 0xf8, 0x1e, 0xeb, 0xce, 0x18, 0xa2,
+  0xbb, 0xcd, 0x50, 0xb7, 0x3e, 0xbe, 0x90, 0x6b, 0x0e, 0xcf, 0x2f, 0x5f,
+  0x2d, 0x49, 0x99, 0x51, 0x3c, 0x12, 0x03, 0xf8, 0xea, 0x22, 0x09, 0x9d,
+  0x58, 0x9e, 0x37, 0xbd, 0x2e, 0xd6, 0x86, 0xb5, 0x32, 0xe8, 0xb8, 0x5e,
+  0x90, 0x97, 0xc4, 0xa3, 0x13, 0x89, 0xc5, 0xcb, 0x94, 0x22, 0xb7, 0xac,
+  0xa5, 0xcc, 0x50, 0x55, 0xc4, 0x64, 0xaf, 0xa5, 0x8f, 0xb3, 0x10, 0x9b,
+  0xdf, 0x86, 0xed, 0xde, 0x9b, 0xde, 0x8e, 0x1e, 0x73, 0xa8, 0xfb, 0x69,
+  0xca, 0xe6, 0x04, 0xd9, 0x1e, 0x77, 0xf7, 0x3a, 0x52, 0x57, 0x79, 0x82,
+  0x15, 0x37, 0xe1, 0x0a, 0xe7, 0xcc, 0x27, 0xf8, 0x04, 0x58, 0x5a, 0xa9,
+  0xc7, 0x1c, 0xab, 0x68, 0x76, 0xa1, 0x77, 0x6b, 0x4d, 0x93, 0x1f, 0x52,
+  0x49, 0xff, 0x30, 0x59, 0x6a, 0x24, 0x34, 0x51, 0xec, 0x8a, 0x5c, 0xe0,
+  0x71, 0xc2, 0x97, 0x04, 0xd8, 0x20, 0x98, 0xd3, 0x21, 0x49, 0x6b, 0x7a,
+  0x0e, 0xe0, 0x18, 0xa0, 0xb3, 0x4c, 0xd3, 0xa7, 0x30, 0x57, 0x41, 0x76,
+  0x50, 0xc4, 0x00, 0x3d, 0x8e, 0x36, 0x5e, 0x6b, 0x38, 0xe4, 0x45, 0xba,
+  0xfe, 0xba, 0xac, 0xc9, 0xb1, 0x34, 0x1d, 0x72, 0xe2, 0x82, 0x68, 0x37,
+  0x7c, 0x05, 0xd2, 0x24, 0x2f, 0xc6, 0xc9, 0x25, 0x9f, 0xc3, 0xec, 0x32,
+  0x2f, 0xca, 0xb4, 0xbd, 0x58, 0x10, 0x1c, 0x55, 0x01, 0x77, 0x0f, 0x79,
+  0xf3, 0xd8, 0x6f, 0x54, 0x45, 0xab, 0xc0, 0xb3, 0xe3, 0x19, 0x29, 0x22,
+  0xa7, 0xb0, 0xb0, 0x7e, 0xff, 0xcd, 0xda, 0xb2, 0x1b, 0xca, 0x94, 0x8a,
+  0x69, 0x15, 0x1c, 0xda, 0x51, 0x6a, 0x47, 0x17, 0x5e, 0xf2, 0x89, 0x2b,
+  0x89, 0x6f, 0x2b, 0xb0, 0xee, 0x2e, 0x6f, 0x76, 0x40, 0x7b, 0xe2, 0x84,
+  0x8a, 0x72, 0xf3, 0xfb, 0x3d, 0xfd, 0xeb, 0xd6, 0xf7, 0x7b, 0x60, 0x7f,
+  0x02, 0x5f, 0x7e, 0xbf, 0x87, 0x73, 0x85, 0x43, 0xf3, 0xe3, 0x8f, 0x3f,
+  0x7e, 0xee, 0x33, 0x66, 0x74, 0xf0, 0x6d, 0x3f, 0xfa, 0x66, 0x87, 0x12,
+  0x2a, 0x28, 0xe3, 0xae, 0x2d, 0xab, 0x25, 0x1f, 0x43, 0xef, 0x7d, 0x6f,
+  0x75, 0x64, 0xcb, 0xe9, 0x57, 0x8d, 0x06, 0xc7, 0x46, 0x14, 0x28, 0x58,
+  0x2c, 0x4c, 0x49, 0x0b, 0x97, 0x80, 0xf0, 0xbd, 0x68, 0x37, 0x97, 0x05,
+  0xec, 0xe8, 0xd5, 0xc4, 0xf7, 0xef, 0xe5, 0xbc, 0x47, 0xe4, 0x79, 0x9f,
+  0xd5, 0x97, 0x2c, 0xa6, 0x9b, 0x93, 0x12, 0x11, 0x1c, 0x9c, 0x0c, 0x2f,
+  0x7b, 0xc1, 0x4c, 0x1c, 0xfd, 0x08, 0x0c, 0x11, 0x30, 0xa7, 0x93, 0xe9,
+  0x15, 0x72, 0x3f, 0x7c, 0xd4, 0x57, 0x8b, 0xe9, 0x82, 0xa8, 0xc0, 0x34,
+  0xc7, 0x1c, 0x9e, 0x61, 0x31, 0x1e, 0x73, 0x74, 0x3f, 0x5a, 0xe5, 0xcf,
+  0xc4, 0xc3, 0x62, 0x94, 0xae, 0xf1, 0xac, 0x6b, 0xfb, 0x71, 0x52, 0x52,
+  0xb2, 0x36, 0x43, 0x16, 0x93, 0xac, 0xae, 0x35, 0xfb, 0x87, 0x2c, 0x91,
+  0x7c, 0x44, 0x93, 0x09, 0xae, 0x43, 0xb6, 0xed, 0x91, 0x0b, 0xb9, 0x98,
+  0xe5, 0x3c, 0x31, 0xdc, 0x8b, 0xf6, 0x8d, 0x85, 0x7b, 0x43, 0x94, 0x07,
+  0x4d, 0x6e, 0x5c, 0xcc, 0x46, 0xd1, 0xaa, 0x0c, 0xde, 0x9e, 0xbe, 0x7e,
+  0x53, 0xe6, 0xaf, 0x33, 0x0e, 0x89, 0xc2, 0x85, 0xf3, 0x7f, 0x48, 0x86,
+  0x19, 0xd6, 0xed, 0xc0, 0x5f, 0xf7, 0x92, 0xc9, 0xcf, 0x7b, 0x29, 0x68,
+  0x3d, 0xf1, 0xd6, 0x5e, 0x5a, 0x75, 0x54, 0xb2, 0x75, 0xae, 0xd3, 0x7b,
+  0xe0, 0x5d, 0xe0, 0x85, 0xba, 0xb3, 0xa4, 0xd2, 0xf2, 0x7c, 0xb7, 0xa9,
+  0x8c, 0x93, 0x78, 0x7b, 0x8c, 0xca, 0x82, 0x4a, 0x07, 0x79, 0xbf, 0xbe,
+  0x64, 0x81, 0xd8, 0xe4, 0x3a, 0xe3, 0x5a, 0xc1, 0x6c, 0x8f, 0xf6, 0x6d,
+  0x83, 0xc2, 0x04, 0x93, 0x68, 0x7a, 0x46, 0xdd, 0xc0, 0x27, 0x35, 0x97,
+  0x87, 0x2f, 0xac, 0x96, 0xfe, 0x38, 0x23, 0xaf, 0x30, 0x51, 0xb0, 0x3d,
+  0x1c, 0x06, 0xc5, 0x4d, 0x70, 0x5c, 0x8d, 0xd7, 0x8c, 0x2c, 0x75, 0x14,
+  0x86, 0x25, 0xa6, 0x4f, 0xa1, 0x13, 0x2a, 0xbd, 0xc9, 0x8a, 0x59, 0x05,
+  0xa3, 0x80, 0xa2, 0xa0, 0x63, 0x23, 0x6f, 0x78, 0x6e, 0xee, 0x9a, 0x52,
+  0xbe, 0xc1, 0x58, 0xc6, 0xac, 0x64, 0x8a, 0xe1, 0x87, 0x75, 0xb2, 0xd5,
+  0x6a, 0x86, 0xee, 0xf9, 0xca, 0xe8, 0x04, 0x78, 0x21, 0xb4, 0x67, 0xc7,
+  0x6a, 0x03, 0xa6, 0x3d, 0x58, 0xed, 0x60, 0xed, 0x37, 0xbd, 0xf6, 0x66,
+  0xc4, 0x92, 0x7b, 0x98, 0x28, 0x84, 0xf1, 0x73, 0x73, 0x65, 0x3d, 0xe5,
+  0xde, 0xa3, 0x37, 0x5d, 0xf6, 0x00, 0xdd, 0x3f, 0x2d, 0x6b, 0x36, 0xd5,
+  0x3c, 0x2b, 0xed, 0xfc, 0xa4, 0x1f, 0xe2, 0x92, 0x66, 0xe2, 0x24, 0xbe,
+  0x8f, 0xaa, 0x59, 0xa2, 0xd7, 0x11, 0x3c, 0x05, 0xdb, 0xe4, 0xf8, 0x4a,
+  0x5c, 0x0f, 0xfe, 0x34, 0xc5, 0x2c, 0x4b, 0x96, 0x9c, 0x7c, 0xd7, 0xa1,
+  0xc6, 0x83, 0x96, 0x02, 0x9a, 0x46, 0x26, 0xa1, 0xe3, 0xf0, 0xc0, 0x1d,
+  0x97, 0xd2, 0x78, 0xda, 0x37, 0xa6, 0xf3, 0xfb, 0xd5, 0x6a, 0x8d, 0x55,
+  0x9e, 0x01, 0x99, 0x31, 0x67, 0x47, 0x6f, 0xc9, 0x2b, 0x95, 0x00, 0x43,
+  0xbe, 0xd3, 0x00, 0x84, 0x66, 0x63, 0x63, 0xd0, 0xb8, 0x91, 0xa6, 0x66,
+  0x8d, 0x3e, 0xca, 0x86, 0x66, 0x9e, 0xa5, 0xa9, 0x71, 0xda, 0x65, 0x46,
+  0x19, 0x4b, 0x6d, 0x0e, 0xae, 0xef, 0xa7, 0x92, 0x6c, 0x35, 0xab, 0x1a,
+  0x2e, 0x61, 0xe3, 0x1f, 0xaa, 0xc9, 0xbe, 0x47, 0x6f, 0x95, 0x33, 0xa6,
+  0xb7, 0xf5, 0x34, 0x2d, 0xd4, 0x1a, 0x2f, 0xf3, 0xec, 0x67, 0xb1, 0x7e,
+  0xd3, 0xfc, 0x26, 0x2b, 0x8b, 0x9c, 0x04, 0x1f, 0x05, 0xcf, 0x07, 0x62,
+  0xfb, 0x81, 0x62, 0xbc, 0x72, 0xf8, 0xe1, 0xfd, 0xc9, 0xc7, 0xc3, 0x83,
+  0x8f, 0x5f, 0x7e, 0x78, 0xf7, 0xea, 0xe4, 0x68, 0xa5, 0x9d, 0x92, 0x70,
+  0xc1, 0xe1, 0x20, 0xbc, 0xca, 0x2b, 0xf4, 0x79, 0xa8, 0x3d, 0xc1, 0x23,
+  0x73, 0x0a, 0x0e, 0x99, 0xf8, 0x94, 0x36, 0x46, 0x7f, 0x23, 0x19, 0x2a,
+  0x04, 0x6f, 0xdf, 0xfb, 0x33, 0x34, 0x12, 0x7b, 0x0d, 0x3b, 0x5d, 0xcf,
+  0xa0, 0xf8, 0xe2, 0x74, 0x82, 0x41, 0x39, 0x7e, 0x2b, 0xc9, 0x13, 0x8e,
+  0xdf, 0xc7, 0xc9, 0x20, 0x9b, 0xd5, 0x05, 0xec, 0x91, 0x90, 0x91, 0x02,
+  0xd9, 0x9a, 0x17, 0x1f, 0xc1, 0x7c, 0x02, 0xdb, 0x5d, 0x59, 0x33, 0x78,
+  0x14, 0xad, 0xe0, 0x48, 0xc0, 0xbf, 0xb1, 0x4c, 0x72, 0x58, 0xd6, 0x2b,
+  0xdd, 0x28, 0xcd, 0xe8, 0xc4, 0x69, 0x7a, 0x2f, 0xca, 0x72, 0x72, 0xb7,
+  0x7b, 0x39, 0x02, 0x18, 0x3b, 0x4f, 0x98, 0xaf, 0x7b, 0xe9, 0x5d, 0x4a,
+  0x47, 0x5a, 0xde, 0x3a, 0x9c, 0x95, 0x24, 0x26, 0xbe, 0x05, 0xeb, 0x05,
+  0x2f, 0x9c, 0x57, 0x1a, 0x6c, 0xd7, 0x87, 0x40, 0x7b, 0x6c, 0x5f, 0x0b,
+  0xc5, 0x98, 0x54, 0x00, 0xf2, 0x8f, 0x92, 0x37, 0xfb, 0xec, 0xe0, 0xfc,
+  0x4d, 0xc8, 0x92, 0x76, 0x12, 0xa2, 0x84, 0x15, 0xc9, 0x2b, 0x50, 0xd5,
+  0x72, 0x40, 0xde, 0xf5, 0xfb, 0x11, 0x15, 0x35, 0x8c, 0xb3, 0x41, 0x99,
+  0xe0, 0x37, 0xf1, 0xc7, 0xf8, 0x53, 0x60, 0xeb, 0xd6, 0x70, 0x67, 0x5f,
+  0x1f, 0xf6, 0xff, 0xb4, 0xb9, 0x89, 0x2e, 0x84, 0x19, 0xd0, 0x65, 0x15,
+  0x5e, 0xc9, 0x2b, 0x38, 0x99, 0x93, 0x5e, 0x55, 0xac, 0x49, 0x8e, 0x14,
+  0xdb, 0x0f, 0xc9, 0x0d, 0x28, 0xe7, 0xc4, 0x47, 0xca, 0xd4, 0x73, 0xf2,
+  0x26, 0x4c, 0xa5, 0x07, 0xc8, 0x0b, 0x50, 0xef, 0xc7, 0xbe, 0x37, 0x60,
+  0x35, 0x3b, 0xed, 0x33, 0x5b, 0x4d, 0x92, 0x21, 0xfc, 0x15, 0x5d, 0x7f,
+  0x6b, 0x26, 0xd3, 0xcb, 0x9c, 0x30, 0x5d, 0x55, 0x9f, 0xcd, 0x57, 0xca,
+  0x6d, 0xa1, 0x32, 0x0f, 0x5f, 0x2a, 0xe4, 0xed, 0xc3, 0x65, 0x83, 0xfc,
+  0xc4, 0x0e, 0x83, 0x64, 0x78, 0x7d, 0x9b, 0x94, 0x23, 0xf6, 0xf5, 0x03,
+  0xc7, 0x0c, 0xb2, 0x71, 0x56, 0xdf, 0xb3, 0x47, 0xad, 0xad, 0x67, 0x70,
+  0xd2, 0x2e, 0x12, 0x10, 0xce, 0xd1, 0x65, 0x96, 0xa3, 0x6b, 0x82, 0xfc,
+  0x0b, 0x59, 0xed, 0x3a, 0xd3, 0xc8, 0xa6, 0xb2, 0xea, 0xb4, 0xf9, 0x76,
+  0x40, 0x8f, 0xa6, 0x73, 0x44, 0xd3, 0xb4, 0xbc, 0xab, 0x62, 0xd0, 0x15,
+  0x52, 0xca, 0x3e, 0x51, 0x75, 0x0f, 0xda, 0xfb, 0x24, 0x64, 0x51, 0xd2,
+  0xe5, 0x1e, 0x7d, 0x9d, 0xde, 0x0f, 0xaf, 0x50, 0xdc, 0x19, 0x49, 0xc9,
+  0x9e, 0xc5, 0x14, 0x5d, 0x4b, 0x6c, 0xbb, 0x66, 0x1a, 0x1e, 0x4b, 0x25,
+  0xc2, 0xc9, 0x57, 0x94, 0xaf, 0xa3, 0xf1, 0xfb, 0x6a, 0xb6, 0xe3, 0x10,
+  0x2b, 0x55, 0x43, 0x24, 0xd3, 0x97, 0xfc, 0x4d, 0xec, 0xc3, 0xcf, 0xf3,
+  0x3c, 0x1d, 0xcb, 0xf6, 0x9d, 0x2f, 0xda, 0x00, 0xf3, 0x2c, 0x4c, 0x59,
+  0xd2, 0xa1, 0x5a, 0xc3, 0x3d, 0xe7, 0xac, 0xf3, 0xa4, 0xd6, 0xcb, 0x4e,
+  0xeb, 0x5c, 0x9e, 0xf7, 0x9e, 0x6d, 0x98, 0x5f, 0xf5, 0xe6, 0x7e, 0xc6,
+  0x3b, 0x4d, 0xa5, 0xdd, 0xf4, 0xe6, 0x9e, 0x73, 0xa8, 0x83, 0x36, 0x19,
+  0xf7, 0x58, 0xb6, 0xf8, 0x53, 0x63, 0x31, 0x51, 0x48, 0xb2, 0x35, 0x9c,
+  0x6b, 0x94, 0xeb, 0x1d, 0x26, 0xeb, 0x58, 0x01, 0xa5, 0xb2, 0x40, 0xef,
+  0xca, 0x45, 0x54, 0x16, 0xb0, 0xd7, 0x8d, 0xfd, 0x5c, 0x65, 0x2d, 0xa6,
+  0x7d, 0x4c, 0x44, 0x9a, 0x3b, 0x84, 0x59, 0x7b, 0xa2, 0xcb, 0x6c, 0xae,
+  0xcb, 0x6b, 0x59, 0xa5, 0x52, 0x6e, 0xf1, 0xc3, 0x03, 0x32, 0xa5, 0x1e,
+  0x74, 0x75, 0xe1, 0x0b, 0x24, 0xfa, 0xf7, 0x41, 0x36, 0xfe, 0xf2, 0x5b,
+  0xdf, 0xc9, 0x46, 0xf2, 0x2f, 0x42, 0x61, 0xf0, 0xc6, 0xed, 0xff, 0x56,
+  0xaf, 0x79, 0x9c, 0x44, 0x45, 0x4e, 0x9a, 0x41, 0xaa, 0x86, 0x14, 0x29,
+  0xeb, 0x12, 0x76, 0xf2, 0x5d, 0x11, 0x94, 0x6a, 0xc8, 0x91, 0x89, 0xbd,
+  0x4e, 0xb4, 0x9a, 0xf6, 0x2e, 0x61, 0xbc, 0x0e, 0x8e, 0xb3, 0xb9, 0x87,
+  0x7f, 0x6e, 0xd1, 0x9f, 0xdb, 0x9d, 0x35, 0x29, 0x6a, 0x73, 0xf7, 0x13,
+  0x55, 0x84, 0xf6, 0x05, 0xc7, 0x61, 0x7b, 0xab, 0x31, 0x74, 0x39, 0x1c,
+  0x35, 0x4f, 0x9a, 0xb1, 0xa1, 0x7b, 0xc2, 0x5b, 0xe7, 0x2b, 0x87, 0x4a,
+  0x86, 0x09, 0x7b, 0x58, 0x6f, 0x52, 0x76, 0xf1, 0xc2, 0xca, 0x30, 0x21,
+  0x31, 0x1d, 0x39, 0x91, 0x86, 0xe1, 0xc7, 0x32, 0xbd, 0x4a, 0xaa, 0xab,
+  0x68, 0x56, 0x33, 0x67, 0xc3, 0x61, 0x68, 0x0f, 0x37, 0x1d, 0x67, 0x36,
+  0x70, 0x20, 0x9f, 0xee, 0xa9, 0xef, 0xc9, 0xee, 0x22, 0x07, 0x4b, 0xc7,
+  0xc5, 0xad, 0x3e, 0x13, 0x4b, 0xc9, 0x59, 0x48, 0xd7, 0x80, 0xdd, 0x24,
+  0x4f, 0x30, 0x3e, 0xe6, 0x66, 0x6c, 0x4f, 0x50, 0xf7, 0xc5, 0x7a, 0x38,
+  0x90, 0x9b, 0x17, 0x40, 0x31, 0xf4, 0x2a, 0x8d, 0x69, 0xdf, 0xd0, 0xa5,
+  0x37, 0x0b, 0x64, 0x53, 0x1a, 0xb6, 0xcb, 0x2e, 0x24, 0xca, 0x23, 0xff,
+  0xa6, 0x4b, 0x5a, 0x54, 0xba, 0x8a, 0xb3, 0xba, 0xdb, 0xfa, 0xdc, 0xc3,
+  0xe7, 0x45, 0xa5, 0xae, 0x51, 0x9f, 0x64, 0xb1, 0x1c, 0x5b, 0xd5, 0xc3,
+  0x22, 0xee, 0x8a, 0x90, 0x13, 0x95, 0xdd, 0xec, 0xbf, 0xfd, 0xc9, 0xa3,
+  0x59, 0xad, 0x93, 0xf7, 0x62, 0xdd, 0x1e, 0x84, 0x07, 0x8e, 0x1f, 0xd0,
+  0x22, 0xc6, 0xc0, 0xd2, 0xac, 0x7a, 0xc4, 0xe9, 0x73, 0xee, 0x08, 0x7e,
+  0x47, 0x63, 0xc4, 0x92, 0xc1, 0xe3, 0x92, 0xd6, 0x77, 0xdc, 0x58, 0x96,
+  0x3b, 0x74, 0xce, 0x6c, 0x9f, 0x07, 0x7a, 0x2f, 0x0e, 0xe0, 0xd5, 0xe4,
+  0x3a, 0xe9, 0x45, 0xa7, 0x87, 0xfd, 0x33, 0xfc, 0xc4, 0x14, 0xb3, 0x96,
+  0xd6, 0x30, 0xa5, 0xa9, 0x35, 0x5c, 0x7a, 0x57, 0xa7, 0x79, 0xd5, 0xa8,
+  0xf7, 0x9c, 0xbb, 0x81, 0x1a, 0xc6, 0xd4, 0x3c, 0xcc, 0x46, 0xba, 0x11,
+  0xe5, 0x3b, 0x51, 0x15, 0x43, 0xc4, 0x87, 0xd8, 0xfb, 0xd0, 0x14, 0x48,
+  0x39, 0x5a, 0x33, 0x8e, 0xe8, 0xae, 0x72, 0x99, 0xc9, 0x59, 0xa8, 0x66,
+  0x97, 0x68, 0x8b, 0x55, 0xea, 0xc6, 0x32, 0x5f, 0x00, 0x6a, 0xf8, 0x9a,
+  0x8d, 0x2c, 0xdb, 0x44, 0x5d, 0xc0, 0x7a, 0xc4, 0x6a, 0x24, 0xd2, 0xe8,
+  0xf2, 0xc2, 0x8e, 0x8a, 0xf9, 0x54, 0x54, 0x96, 0x99, 0x51, 0x94, 0x9f,
+  0x13, 0xec, 0x03, 0x3a, 0x0b, 0x6f, 0x8a, 0x1a, 0x90, 0x17, 0x52, 0x8a,
+  0x39, 0xcf, 0xbb, 0x3d, 0x64, 0x8d, 0x12, 0xcf, 0x13, 0x45, 0x4a, 0x33,
+  0xe4, 0x09, 0xd4, 0xef, 0xd9, 0x6a, 0xc7, 0xf1, 0x8c, 0x64, 0xf9, 0x2a,
+  0x9f, 0x61, 0xbe, 0xa3, 0xaf, 0x3c, 0xa0, 0x0e, 0x88, 0xb7, 0x22, 0x12,
+  0x70, 0x69, 0x36, 0xb5, 0x0c, 0xb7, 0xa4, 0x3f, 0x61, 0x67, 0xb3, 0xe9,
+  0x4f, 0xa0, 0x91, 0xc0, 0xfa, 0x49, 0xa3, 0x7d, 0xfc, 0xf3, 0xc1, 0xdb,
+  0x83, 0x93, 0xcf, 0xf0, 0x79, 0x49, 0xe1, 0x60, 0x19, 0x2f, 0x7e, 0xeb,
+  0xa8, 0x79, 0x91, 0x78, 0x57, 0x37, 0x31, 0x6f, 0x0f, 0xe5, 0x73, 0x37,
+  0x7a, 0x85, 0x55, 0xd4, 0x47, 0xef, 0xbe, 0x22, 0x8e, 0x3a, 0xdb, 0xdc,
+  0xa2, 0x60, 0xb9, 0x31, 0x9d, 0x46, 0xf4, 0x91, 0xaa, 0x67, 0xaa, 0x27,
+  0xf0, 0xae, 0xf2, 0x32, 0xb6, 0xf1, 0xee, 0xea, 0x92, 0xb8, 0x47, 0x8f,
+  0x12, 0x55, 0xf3, 0x8c, 0xfe, 0xf0, 0xcb, 0xdb, 0x50, 0x14, 0xe7, 0xc5,
+  0xff, 0x66, 0x19, 0xba, 0x94, 0x85, 0x7f, 0xd4, 0x95, 0x77, 0xf1, 0xbf,
+  0xd7, 0xe9, 0xbd, 0xb8, 0xb4, 0xe1, 0x6f, 0x34, 0xb8, 0xb3, 0x87, 0xe6,
+  0xc9, 0x68, 0xdf, 0xa1, 0xfe, 0xf7, 0xc6, 0xc3, 0xf0, 0xe3, 0xd3, 0x54,
+  0x82, 0xf0, 0x96, 0xe2, 0x42, 0x42, 0x7e, 0x4e, 0x9b, 0x70, 0x4b, 0x4b,
+  0xa5, 0x3b, 0x8e, 0x2b, 0xe2, 0xa9, 0x6e, 0x1e, 0xcf, 0x65, 0x92, 0x1b,
+  0x45, 0x2f, 0xe6, 0x4a, 0x2f, 0x4a, 0xbc, 0x6e, 0x6f, 0xea, 0xb0, 0x18,
+  0x7b, 0x97, 0x7d, 0xc3, 0x1d, 0x40, 0x56, 0xd2, 0x96, 0x5c, 0xf0, 0x64,
+  0x22, 0xb3, 0x4c, 0x14, 0xdb, 0xa4, 0x7d, 0x6a, 0x8d, 0xa5, 0x42, 0x4a,
+  0xad, 0x55, 0x0d, 0xf0, 0x4d, 0x7e, 0x91, 0x52, 0x82, 0x68, 0x6a, 0xac,
+  0x7f, 0xf6, 0x22, 0x6b, 0x47, 0x84, 0x8c, 0x2a, 0x60, 0x1a, 0xe3, 0xbd,
+  0xd1, 0x3c, 0x66, 0x25, 0x5b, 0xc3, 0x41, 0x0f, 0xc2, 0xb8, 0xcc, 0x44,
+  0xeb, 0x96, 0xda, 0xd1, 0xf6, 0x70, 0x9a, 0x9d, 0x25, 0x3e, 0x7c, 0x29,
+  0xa1, 0x22, 0x7e, 0x55, 0x86, 0x65, 0xbe, 0x46, 0xfb, 0xbe, 0xe3, 0x90,
+  0xa4, 0x13, 0xda, 0x0a, 0x75, 0x4f, 0xf3, 0xd9, 0xcc, 0x6e, 0x90, 0x74,
+  0xca, 0x3b, 0xa4, 0xa5, 0xf0, 0x96, 0x36, 0x0c, 0x8a, 0x22, 0xc7, 0xff,
+  0xe6, 0x18, 0x49, 0xf8, 0xb7, 0x00, 0x37, 0x3a, 0xec, 0x65, 0x38, 0x90,
+  0xaa, 0x70, 0x24, 0x9c, 0x4d, 0x1a, 0x1c, 0xd6, 0x3b, 0x4a, 0x35, 0xfa,
+  0xf8, 0xfe, 0x51, 0x66, 0xb2, 0x6a, 0x60, 0x6a, 0x0d, 0x3b, 0x26, 0xb2,
+  0x67, 0x43, 0xb6, 0x19, 0x04, 0x6e, 0x9b, 0x1a, 0x53, 0xef, 0x98, 0x77,
+  0x31, 0xfe, 0x95, 0x0d, 0xaf, 0xb9, 0x52, 0xe9, 0xa2, 0x6d, 0xc6, 0x99,
+  0x02, 0x3d, 0x2e, 0x2e, 0x0d, 0x6c, 0x01, 0x59, 0xe8, 0x18, 0x9b, 0x43,
+  0x9e, 0x44, 0xf5, 0x04, 0x38, 0xc0, 0xf8, 0xf6, 0x83, 0xbe, 0x1b, 0x98,
+  0xeb, 0xc7, 0x57, 0xc7, 0xef, 0xa3, 0x55, 0xb4, 0x6b, 0xda, 0xae, 0x03,
+  0xd5, 0x6f, 0xd6, 0xd3, 0x7a, 0xb8, 0x3e, 0xbd, 0xce, 0xd6, 0xc1, 0x84,
+  0x1f, 0x0d, 0xd6, 0x8c, 0x69, 0x4a, 0x9f, 0x43, 0x2e, 0x34, 0xe6, 0xbe,
+  0xda, 0xfb, 0x64, 0xf0, 0xb7, 0xf9, 0xcd, 0x71, 0x00, 0x30, 0xd6, 0x85,
+  0xb1, 0xfc, 0x25, 0x6a, 0x48, 0x0c, 0x4d, 0x51, 0x77, 0xce, 0x24, 0xa3,
+  0x60, 0x7d, 0xca, 0xb1, 0xc1, 0xfb, 0x62, 0xd6, 0x3e, 0xab, 0x5c, 0xe6,
+  0x28, 0xee, 0x31, 0x76, 0x8b, 0xa9, 0x0b, 0x5c, 0x6e, 0x35, 0xab, 0xfe,
+  0x77, 0xb1, 0xaa, 0x32, 0x21, 0x54, 0x0c, 0xb8, 0x39, 0x47, 0xe8, 0xb5,
+  0x0d, 0x24, 0xd0, 0x83, 0xbe, 0xde, 0x5b, 0xef, 0x44, 0xa6, 0x8e, 0x14,
+  0xa8, 0xcc, 0xe5, 0xd2, 0x26, 0x97, 0x01, 0x58, 0xec, 0x62, 0x56, 0x19,
+  0xb7, 0x73, 0x62, 0xf6, 0xab, 0x17, 0x92, 0xd4, 0xce, 0x76, 0x1a, 0xa5,
+  0x13, 0x8c, 0x03, 0x3a, 0x58, 0xae, 0x0f, 0x44, 0x26, 0x45, 0x5b, 0xd5,
+  0xf9, 0xa1, 0x13, 0x39, 0x75, 0x88, 0x8d, 0x72, 0x44, 0xf1, 0x9f, 0x69,
+  0x38, 0x57, 0x6e, 0x17, 0x50, 0x1c, 0xcc, 0x19, 0x1e, 0xa5, 0xe3, 0x6c,
+  0x92, 0x91, 0x45, 0xeb, 0x4e, 0xc1, 0xdb, 0x8a, 0xe6, 0x94, 0x7e, 0xf0,
+  0xa7, 0xa4, 0xd5, 0xbd, 0x09, 0xfe, 0x1a, 0xa6, 0x44, 0x7e, 0x46, 0x2e,
+  0xbd, 0x0c, 0xfb, 0x22, 0x9a, 0x13, 0x32, 0xf5, 0xc1, 0x0b, 0x32, 0x81,
+  0xcc, 0x59, 0x9a, 0x67, 0xcb, 0x58, 0x47, 0x93, 0x1e, 0x7a, 0x16, 0x6a,
+  0xd1, 0xf4, 0x7a, 0x58, 0x6d, 0x6e, 0xb6, 0x6f, 0xd0, 0xca, 0x72, 0x94,
+  0x78, 0x45, 0x12, 0xc3, 0x98, 0x1f, 0xde, 0x1f, 0x47, 0xab, 0x88, 0x18,
+  0xf1, 0x7c, 0x77, 0x73, 0x6b, 0x4d, 0xed, 0x3a, 0x71, 0x90, 0xce, 0xb9,
+  0x90, 0xef, 0xc9, 0xdd, 0xe7, 0x1e, 0x40, 0x54, 0xa5, 0x45, 0x31, 0xb2,
+  0x43, 0x8f, 0x52, 0x0c, 0xce, 0xf4, 0xa2, 0x03, 0x8d, 0x02, 0x0d, 0x52,
+  0x98, 0xa4, 0x47, 0x71, 0x5b, 0xba, 0xcb, 0xb3, 0x07, 0x1b, 0xd1, 0x98,
+  0x0a, 0x98, 0x5f, 0x0f, 0x3c, 0x50, 0x0b, 0xed, 0xdc, 0x59, 0x4b, 0x66,
+  0x51, 0x32, 0xc7, 0xbf, 0x86, 0xeb, 0x62, 0x24, 0x0d, 0x52, 0x5e, 0xba,
+  0x2a, 0x70, 0xd0, 0xe6, 0x11, 0x62, 0x89, 0xe8, 0x35, 0xe9, 0x40, 0x98,
+  0xa9, 0xd7, 0xde, 0x40, 0x99, 0x53, 0x07, 0x2f, 0x92, 0x9c, 0xb4, 0x86,
+  0xc4, 0x0e, 0x6a, 0xa8, 0xef, 0x2a, 0x04, 0xcd, 0x51, 0xfd, 0xc0, 0x06,
+  0x31, 0x0e, 0xa8, 0x44, 0xe1, 0x21, 0x7f, 0x27, 0xd7, 0x5d, 0x53, 0x7c,
+  0xca, 0xf6, 0xe0, 0xde, 0x8b, 0x2f, 0x76, 0x90, 0x4a, 0x95, 0x1c, 0xcb,
+  0xdb, 0x44, 0x1f, 0xf7, 0xee, 0x71, 0x78, 0x7d, 0x5d, 0x2f, 0x21, 0xba,
+  0x85, 0xd4, 0x8b, 0xcb, 0xfe, 0x34, 0x2c, 0xfb, 0x40, 0xff, 0xd9, 0xb5,
+  0xb8, 0xcf, 0x48, 0x77, 0x37, 0x29, 0x79, 0xbe, 0x07, 0x5e, 0x2f, 0xfe,
+  0x98, 0xaa, 0x2f, 0x5b, 0x3e, 0x0b, 0x24, 0x82, 0x73, 0xe1, 0x91, 0xf4,
+  0xe3, 0xfc, 0x77, 0x92, 0x78, 0xe1, 0xf8, 0x00, 0x72, 0x2a, 0x07, 0x2d,
+  0x96, 0x92, 0x81, 0x21, 0x3f, 0x25, 0x89, 0xc0, 0x27, 0x49, 0xc0, 0x07,
+  0x3c, 0x79, 0x87, 0xde, 0x8d, 0x5d, 0x19, 0x65, 0xc8, 0xea, 0x6a, 0x14,
+  0x0f, 0x25, 0xc2, 0xf9, 0x86, 0x57, 0xc9, 0xc5, 0x27, 0x52, 0x1c, 0xd3,
+  0x52, 0xe7, 0xc8, 0x5d, 0x06, 0xc7, 0x65, 0xf5, 0x44, 0x8a, 0x69, 0xce,
+  0x5e, 0x7f, 0xe7, 0xd4, 0x66, 0x79, 0x1e, 0x0c, 0x72, 0xef, 0x7d, 0x6a,
+  0x72, 0x71, 0xc0, 0xf0, 0xc1, 0xac, 0xde, 0x4c, 0xb2, 0xe3, 0xd9, 0xf9,
+  0x46, 0x39, 0x49, 0x6b, 0x36, 0xf1, 0x1b, 0x49, 0xdd, 0xd9, 0xa7, 0xdf,
+  0xb5, 0x43, 0x83, 0x52, 0x32, 0xfd, 0xf9, 0x0f, 0xfc, 0x6b, 0x96, 0xb1,
+  0xf0, 0xaf, 0xfa, 0x6a, 0x36, 0x19, 0xc0, 0x7e, 0xe6, 0xf5, 0xe7, 0x9d,
+  0x88, 0x13, 0x5e, 0x2e, 0x84, 0x9e, 0x0b, 0xac, 0xe3, 0x4c, 0x93, 0x68,
+  0xd4, 0x63, 0xdb, 0xa0, 0x1a, 0xcf, 0x4e, 0x41, 0x02, 0x6c, 0x2e, 0x33,
+  0x6c, 0x1e, 0x47, 0x08, 0x3c, 0x55, 0xef, 0x03, 0xb0, 0xe7, 0x0f, 0x6f,
+  0xff, 0xf6, 0xc3, 0xcb, 0xed, 0x9d, 0xe4, 0x79, 0x32, 0x7c, 0x76, 0xf1,
+  0x22, 0xd9, 0x1d, 0xed, 0x3e, 0x7f, 0xb9, 0xf5, 0x62, 0x37, 0x79, 0xbe,
+  0x73, 0x91, 0x3c, 0xdb, 0x4c, 0x37, 0x5f, 0x5e, 0x6c, 0x6d, 0x8f, 0x46,
+  0x17, 0xe9, 0x8b, 0xd1, 0xf3, 0xa4, 0xd3, 0x23, 0x2b, 0x51, 0xa7, 0xee,
+  0x8b, 0x5a, 0x8d, 0x93, 0x26, 0x51, 0xff, 0xcd, 0x41, 0xbc, 0x19, 0x5d,
+  0xa5, 0x77, 0x7a, 0xc0, 0x9a, 0x39, 0x4e, 0x08, 0x5b, 0x44, 0xcb, 0x99,
+  0xbf, 0x58, 0x05, 0x0c, 0xc2, 0xea, 0x12, 0x74, 0x16, 0x91, 0x06, 0xcc,
+  0x54, 0x54, 0xb2, 0x72, 0xfe, 0xb1, 0xf1, 0xca, 0xee, 0x69, 0x24, 0x04,
+  0xd7, 0xd5, 0x3e, 0xfc, 0x27, 0xe8, 0xf0, 0x78, 0x9b, 0x0c, 0xaf, 0xa8,
+  0x38, 0x5b, 0x1e, 0xec, 0x73, 0x0c, 0xbd, 0x1b, 0xc9, 0x5f, 0xd0, 0xf7,
+  0xee, 0x8c, 0xf1, 0x55, 0x59, 0xcc, 0xa6, 0x67, 0xc5, 0x38, 0x1b, 0xde,
+  0x2f, 0x1a, 0xce, 0x7d, 0xac, 0xf1, 0x8b, 0x23, 0x16, 0xe1, 0x59, 0x95,
+  0xfe, 0x2b, 0xd8, 0x6c, 0x44, 0x6b, 0x12, 0x07, 0xac, 0xe3, 0xc2, 0xff,
+  0x96, 0xb7, 0xda, 0xac, 0xb0, 0x7f, 0xd0, 0x6c, 0x8b, 0x87, 0xd9, 0xf4,
+  0x0a, 0x13, 0x6f, 0xf6, 0x29, 0xd1, 0x1a, 0x63, 0x69, 0xfc, 0x83, 0xb0,
+  0xb9, 0xd6, 0x97, 0xc3, 0x5e, 0x09, 0xab, 0xe8, 0xdb, 0xa2, 0xcc, 0x65,
+  0x5a, 0x63, 0xaf, 0x2e, 0x40, 0x49, 0xf0, 0xcf, 0x3c, 0x1f, 0xa9, 0xfd,
+  0x10, 0x0b, 0x12, 0x55, 0xe4, 0xd9, 0x7d, 0x23, 0xbf, 0xea, 0x49, 0xad,
+  0xf6, 0x6c, 0xca, 0x28, 0x09, 0x14, 0x80, 0xe1, 0xdf, 0xb5, 0xcf, 0x30,
+  0x4e, 0x5e, 0x98, 0x91, 0x2b, 0xfd, 0x61, 0xb3, 0x3e, 0xbc, 0x3f, 0xd9,
+  0x6b, 0x13, 0xc9, 0x10, 0x92, 0x62, 0x74, 0x55, 0xba, 0x3e, 0x2a, 0x86,
+  0xd5, 0x7a, 0x55, 0x8d, 0x95, 0x10, 0x84, 0x20, 0xf4, 0x47, 0x33, 0x82,
+  0x50, 0xe6, 0xe8, 0xf0, 0xd5, 0x9b, 0xa3, 0x18, 0xfe, 0xec, 0x1f, 0xc4,
+  0x07, 0x47, 0xfd, 0xad, 0xdd, 0x67, 0xf1, 0xe1, 0xe1, 0xdb, 0x17, 0x0f,
+  0xf9, 0x01, 0x8b, 0x09, 0x89, 0xdb, 0x74, 0x14, 0x57, 0x95, 0x97, 0x58,
+  0x8a, 0xa5, 0x98, 0x9c, 0x61, 0x76, 0x24, 0xb9, 0xd1, 0x74, 0x3f, 0xc7,
+  0xb0, 0x75, 0x58, 0x3d, 0xa9, 0x2f, 0xd3, 0xde, 0x99, 0xcc, 0x0b, 0x93,
+  0xd4, 0xd9, 0x0d, 0xa8, 0x8f, 0x89, 0x5c, 0x34, 0x9f, 0xba, 0xfe, 0x32,
+  0x34, 0x03, 0x8a, 0xd2, 0x14, 0xf5, 0x13, 0x58, 0xc9, 0xd2, 0x64, 0x68,
+  0x2c, 0x24, 0xaa, 0x16, 0x64, 0x6f, 0x05, 0xf2, 0xc7, 0x9f, 0xb5, 0x5c,
+  0x4c, 0x66, 0xb0, 0x70, 0xde, 0x8a, 0x3a, 0x2d, 0x93, 0xc8, 0x3e, 0x69,
+  0x3d, 0x78, 0x8a, 0x2e, 0x60, 0x8c, 0x3b, 0x93, 0x6e, 0x55, 0x2d, 0xaa,
+  0x62, 0x67, 0xf5, 0xb7, 0x19, 0x93, 0x46, 0xa8, 0x06, 0xfe, 0x80, 0x0b,
+  0x01, 0xd1, 0x8b, 0xde, 0x70, 0x0a, 0x56, 0x5b, 0xe1, 0x10, 0x80, 0xad,
+  0xb9, 0x09, 0xdd, 0x73, 0x58, 0x73, 0x9e, 0x83, 0x34, 0x9a, 0xe5, 0x36,
+  0x0e, 0x17, 0xf9, 0xd7, 0x8d, 0xc2, 0x48, 0xd8, 0xa8, 0x64, 0x99, 0x32,
+  0xfc, 0x01, 0xa8, 0x5e, 0x65, 0x59, 0x94, 0xbd, 0x00, 0x53, 0x58, 0x36,
+  0x88, 0xbd, 0xfb, 0x61, 0x31, 0x5b, 0x80, 0xcd, 0x83, 0x3f, 0xa6, 0xa4,
+  0x54, 0x4b, 0xf7, 0xa7, 0x33, 0xca, 0xe2, 0xa3, 0xf1, 0x35, 0x39, 0x11,
+  0x40, 0x0b, 0xca, 0x2e, 0xc3, 0xc9, 0x29, 0x36, 0x3b, 0xbe, 0xc6, 0x32,
+  0x1e, 0xcd, 0x3c, 0xc1, 0x3a, 0x58, 0xf1, 0x1d, 0x68, 0xf2, 0x58, 0xc5,
+  0xea, 0x9a, 0x66, 0x9d, 0xb4, 0xa0, 0xb8, 0x1c, 0x44, 0xae, 0xe6, 0x2b,
+  0x98, 0xb4, 0x1c, 0x99, 0x14, 0x40, 0xf3, 0x8d, 0x46, 0x66, 0x3a, 0x62,
+  0xc4, 0x11, 0x93, 0xb5, 0x8d, 0x7a, 0x0c, 0xbf, 0x58, 0xd5, 0x3e, 0x04,
+  0x5c, 0xd6, 0xa6, 0xdb, 0xe9, 0xb4, 0x01, 0x5b, 0x90, 0x11, 0x8e, 0x5e,
+  0x42, 0x95, 0x6e, 0x21, 0x05, 0xae, 0x70, 0x12, 0x1c, 0x68, 0x40, 0x5f,
+  0xb5, 0xa9, 0x4d, 0xad, 0x83, 0x22, 0xcf, 0x90, 0xde, 0x07, 0xb7, 0x01,
+  0x68, 0x37, 0x58, 0x84, 0x85, 0x58, 0x89, 0xe3, 0xc2, 0xea, 0xd1, 0x52,
+  0x9b, 0x8f, 0xe9, 0x90, 0x3d, 0xef, 0x7a, 0xc6, 0x33, 0x65, 0x2b, 0x86,
+  0x38, 0x68, 0xc7, 0x3f, 0xa0, 0xa3, 0x32, 0xd0, 0xe4, 0x12, 0xab, 0x54,
+  0xc9, 0xee, 0x05, 0x3d, 0x80, 0x52, 0xa8, 0xc6, 0xd0, 0x55, 0x19, 0x01,
+  0xb3, 0x09, 0x8c, 0x17, 0xd7, 0xdd, 0x69, 0x04, 0xa7, 0x2a, 0xa4, 0xd8,
+  0x02, 0x27, 0x8a, 0xf3, 0xe4, 0x39, 0xb6, 0x4f, 0x82, 0x81, 0xe8, 0x6a,
+  0xd8, 0x9c, 0x49, 0x65, 0xcb, 0xd7, 0x2a, 0x3f, 0xd4, 0x6f, 0xa9, 0x19,
+  0x74, 0x52, 0x78, 0xb5, 0x80, 0x34, 0x93, 0x32, 0xd5, 0x4f, 0xe4, 0x45,
+  0x7b, 0x56, 0x32, 0x8f, 0xd8, 0x77, 0xd9, 0x99, 0x72, 0x37, 0x67, 0x02,
+  0x5a, 0xf6, 0x66, 0xb6, 0x39, 0x2c, 0x2f, 0x52, 0xfb, 0x80, 0xf5, 0x25,
+  0xd8, 0x3d, 0x24, 0x9f, 0x92, 0x14, 0x91, 0xf3, 0xbc, 0xf7, 0x18, 0x30,
+  0xe5, 0xb3, 0xb5, 0x6e, 0x30, 0xff, 0xca, 0x0c, 0x66, 0x93, 0xc4, 0x11,
+  0x9e, 0x66, 0x5c, 0x54, 0x1a, 0x6a, 0x84, 0x0d, 0x64, 0x2c, 0x35, 0x46,
+  0x41, 0x30, 0x08, 0x6b, 0xad, 0xe1, 0xf8, 0x19, 0xde, 0x9e, 0x0b, 0xa3,
+  0x51, 0x8a, 0x3f, 0xc2, 0x62, 0xbf, 0x51, 0x65, 0xb4, 0x71, 0x19, 0xc0,
+  0xe4, 0x7e, 0xf8, 0x01, 0x94, 0xc2, 0x1f, 0x3a, 0xed, 0xd9, 0xfd, 0x00,
+  0xb2, 0xe9, 0x07, 0xe0, 0xc5, 0x1f, 0xb8, 0x7e, 0xf7, 0x87, 0x1b, 0xb4,
+  0xf5, 0x31, 0xdc, 0x51, 0x8d, 0x31, 0x4a, 0xca, 0xd6, 0x54, 0xd3, 0xf9,
+  0xca, 0x28, 0x77, 0x84, 0x64, 0x75, 0xe9, 0x79, 0x02, 0x30, 0x2c, 0x38,
+  0x8f, 0xa2, 0x5c, 0x04, 0x01, 0xbb, 0x37, 0x9b, 0xe4, 0x62, 0x92, 0x32,
+  0xaf, 0x92, 0x14, 0x60, 0x84, 0xd8, 0x68, 0xe5, 0x4f, 0x2b, 0x0e, 0x67,
+  0x75, 0x43, 0x9e, 0xc0, 0x32, 0x65, 0x3d, 0x8c, 0xb4, 0x89, 0xcc, 0xd1,
+  0x24, 0x14, 0x21, 0x8e, 0xfc, 0x0c, 0x9c, 0x7c, 0xe0, 0x5f, 0xa9, 0xa7,
+  0x18, 0x09, 0xe2, 0x9a, 0xe9, 0xc2, 0x7a, 0x10, 0xb0, 0x74, 0x7c, 0x7a,
+  0x75, 0x5f, 0xe1, 0x15, 0x24, 0xf3, 0x31, 0x9a, 0x1a, 0x4e, 0x31, 0x98,
+  0x45, 0xa6, 0xc2, 0x90, 0xf7, 0x18, 0x1f, 0x21, 0x6b, 0x1b, 0x05, 0x62,
+  0x43, 0x92, 0xc2, 0x7c, 0x56, 0xe2, 0x15, 0x13, 0x03, 0x96, 0xe4, 0x33,
+  0xaf, 0x24, 0x4e, 0x25, 0x87, 0x93, 0xf8, 0xef, 0x7d, 0xd2, 0xc9, 0x20,
+  0x2f, 0xdc, 0x4a, 0x03, 0x0b, 0x61, 0x88, 0xf0, 0x06, 0x9a, 0x12, 0xe3,
+  0xca, 0x82, 0x6e, 0x14, 0xf0, 0x33, 0x52, 0x45, 0x02, 0x17, 0xb2, 0xe8,
+  0x5a, 0xd0, 0x09, 0x66, 0x83, 0x97, 0x71, 0x4c, 0xc0, 0xb2, 0x53, 0x06,
+  0x83, 0x45, 0x16, 0xa1, 0x34, 0x9e, 0x7b, 0x2c, 0x94, 0x9e, 0x8e, 0x3d,
+  0xf9, 0x2b, 0x19, 0xf3, 0x0a, 0xa7, 0x87, 0x07, 0x1e, 0x41, 0x49, 0x6f,
+  0x73, 0x81, 0x8d, 0xec, 0x17, 0xe4, 0x8c, 0x1b, 0x52, 0x42, 0x90, 0xe4,
+  0x9e, 0x49, 0xc9, 0x75, 0xc0, 0xf8, 0xc7, 0x6b, 0xdb, 0xd3, 0x4f, 0x71,
+  0x3e, 0x9f, 0x31, 0xae, 0x9e, 0xa7, 0xa5, 0x76, 0xda, 0x0f, 0x53, 0x8d,
+  0x80, 0x75, 0x6a, 0x0b, 0x18, 0x22, 0xcd, 0x61, 0x55, 0x52, 0x5d, 0xe3,
+  0xbf, 0x73, 0xc6, 0x29, 0x17, 0x3c, 0x8b, 0x76, 0xb0, 0xc6, 0x75, 0x39,
+  0x55, 0x20, 0x43, 0xc6, 0x66, 0x2b, 0x3a, 0xac, 0x61, 0xf3, 0xfd, 0x32,
+  0x0a, 0x58, 0xd0, 0x35, 0xd6, 0x45, 0xac, 0xc8, 0x5c, 0x02, 0x2f, 0xb4,
+  0x98, 0xb6, 0x8a, 0xcf, 0xbc, 0x67, 0x2a, 0x71, 0xe4, 0xae, 0x0c, 0x8d,
+  0x9f, 0x55, 0x3c, 0x23, 0x89, 0x52, 0xf0, 0x06, 0xfb, 0xd9, 0x70, 0x22,
+  0x0e, 0xa6, 0x63, 0x82, 0x75, 0xd5, 0xaa, 0x51, 0x52, 0x3e, 0x3d, 0x42,
+  0x6e, 0xae, 0x51, 0x36, 0x3e, 0x85, 0xa8, 0x31, 0xbb, 0xf1, 0xcd, 0xe9,
+  0xdb, 0xa3, 0xb0, 0x23, 0x1d, 0x6f, 0x84, 0xb4, 0x6e, 0xbf, 0xbf, 0x65,
+  0xdf, 0xff, 0xee, 0xd5, 0x57, 0x1f, 0x0f, 0x4f, 0xdf, 0xbd, 0x3e, 0xfe,
+  0xea, 0xc1, 0x51, 0xa2, 0x55, 0x55, 0x41, 0xdb, 0xc9, 0x4c, 0xbd, 0xe7,
+  0xdb, 0xbd, 0x8d, 0xb5, 0xf6, 0x57, 0xb6, 0xed, 0x57, 0x96, 0x9d, 0xe0,
+  0xce, 0x1a, 0x1c, 0x97, 0x3c, 0x96, 0x6c, 0xc8, 0x3d, 0xb2, 0xbf, 0x2e,
+  0xd3, 0x7a, 0x7a, 0x3b, 0xcb, 0x46, 0x5c, 0x2d, 0x26, 0x2a, 0xe0, 0x55,
+  0xa1, 0xf9, 0x8a, 0xe8, 0x4a, 0x6a, 0x0f, 0xb3, 0xbb, 0xa6, 0x69, 0x4b,
+  0x3c, 0xc4, 0xc1, 0xd9, 0xd9, 0xab, 0x83, 0xf3, 0x83, 0x39, 0x1f, 0x7d,
+  0xd6, 0x7a, 0xba, 0xf3, 0xa1, 0x7f, 0xf4, 0xfe, 0xec, 0xfd, 0x29, 0x42,
+  0x6b, 0xfd, 0x70, 0x30, 0x45, 0xcc, 0x31, 0x0e, 0x5e, 0xbf, 0x02, 0x8d,
+  0xae, 0x33, 0x67, 0x90, 0xe7, 0x6b, 0x28, 0xa7, 0x22, 0x4d, 0xe4, 0xd4,
+  0x28, 0x7c, 0x99, 0xb2, 0xcf, 0x27, 0xea, 0x21, 0x47, 0x97, 0x43, 0x61,
+  0x8d, 0xbc, 0xb1, 0x88, 0xae, 0xef, 0xfe, 0x67, 0x5e, 0x96, 0xf0, 0x56,
+  0xda, 0xce, 0xd2, 0x54, 0x87, 0xda, 0x38, 0x4a, 0xef, 0xd2, 0xe1, 0xac,
+  0xd6, 0x73, 0x40, 0x4c, 0x84, 0xa8, 0x7d, 0xed, 0x9d, 0xc2, 0x22, 0xdf,
+  0x98, 0x2a, 0xb6, 0xc5, 0x83, 0x43, 0xd0, 0x21, 0x12, 0x4e, 0x63, 0xb9,
+  0x40, 0xb0, 0x91, 0x40, 0x62, 0x2a, 0x58, 0x32, 0xb3, 0x15, 0xef, 0x9d,
+  0xef, 0x21, 0xa1, 0xe8, 0x1a, 0x81, 0x48, 0xf2, 0x94, 0x3c, 0xb1, 0xf7,
+  0x27, 0x38, 0xa2, 0xb1, 0x2a, 0xb9, 0x91, 0x58, 0xff, 0xb1, 0xf7, 0x50,
+  0x6d, 0x14, 0x6f, 0x91, 0xfe, 0x61, 0xd9, 0xe1, 0xa8, 0xbe, 0x9d, 0xf6,
+  0x91, 0x64, 0x24, 0x08, 0x78, 0x08, 0x27, 0x8d, 0x24, 0x17, 0xc0, 0x5c,
+  0x3f, 0xa3, 0x30, 0x4e, 0x2e, 0x91, 0x09, 0x3f, 0x43, 0x6c, 0x26, 0x2c,
+  0xc9, 0xc2, 0x7f, 0xad, 0x6f, 0xf6, 0x36, 0x3a, 0xfe, 0xe4, 0x51, 0x3a,
+  0x08, 0x0a, 0x8d, 0x04, 0x57, 0x51, 0x3a, 0xd6, 0x45, 0xf1, 0xe0, 0xfc,
+  0x58, 0xae, 0x81, 0xfe, 0x3a, 0x85, 0xf1, 0x83, 0x53, 0x89, 0x4f, 0xbd,
+  0xeb, 0x11, 0xf3, 0xed, 0x4b, 0x15, 0x92, 0x20, 0x23, 0xf3, 0x82, 0x30,
+  0x6c, 0x80, 0xe1, 0xc6, 0xe3, 0x06, 0x8c, 0x71, 0x27, 0x4c, 0xe6, 0x9c,
+  0x4a, 0xa0, 0xd2, 0x36, 0xb5, 0x43, 0x79, 0x16, 0x22, 0xc2, 0x5c, 0xfd,
+  0xcf, 0x64, 0x93, 0x93, 0xd1, 0x6f, 0xb8, 0xc0, 0xfe, 0x5c, 0x04, 0x5b,
+  0xa0, 0x5e, 0x77, 0xf9, 0x04, 0x0b, 0xe7, 0x76, 0x7e, 0x44, 0xfa, 0x1d,
+  0x7b, 0x5d, 0x62, 0x9c, 0x18, 0xea, 0xc1, 0xfb, 0x17, 0x82, 0xa3, 0x9e,
+  0x8c, 0x05, 0x37, 0xc6, 0x73, 0xea, 0xbc, 0x4d, 0xee, 0xb2, 0xc9, 0x6c,
+  0x12, 0xd1, 0x62, 0x58, 0xcb, 0x96, 0x27, 0x35, 0x6e, 0x85, 0xbe, 0x40,
+  0x4e, 0x03, 0xc3, 0x39, 0x61, 0x1a, 0xa8, 0xf1, 0xed, 0x04, 0x6e, 0x34,
+  0xb8, 0xff, 0xd5, 0x6b, 0x20, 0xc5, 0xfb, 0x93, 0xac, 0xae, 0x5a, 0x3e,
+  0x21, 0xd0, 0x44, 0x12, 0xcc, 0xbd, 0x51, 0x80, 0x18, 0xbe, 0xbf, 0x5c,
+  0xc8, 0xcd, 0x06, 0xf2, 0xa6, 0xaa, 0x8f, 0x4e, 0xaa, 0x79, 0x5a, 0x66,
+  0xc5, 0xc8, 0x9c, 0x49, 0x54, 0x60, 0xb3, 0x7c, 0x06, 0xbb, 0xc8, 0x01,
+  0x8b, 0x5a, 0x7f, 0xe3, 0x79, 0xa1, 0xb1, 0xd4, 0x2d, 0xea, 0x53, 0x55,
+  0xa4, 0x26, 0x8f, 0x3f, 0xef, 0x6d, 0x6f, 0x21, 0x20, 0x9c, 0x6b, 0x43,
+  0x0b, 0x40, 0x29, 0x5a, 0xea, 0xd9, 0x44, 0x91, 0x37, 0xaa, 0xde, 0xef,
+  0xe3, 0x13, 0xaa, 0x16, 0x30, 0x43, 0x63, 0x7b, 0xb7, 0x36, 0x82, 0xfc,
+  0xf0, 0xb8, 0x97, 0xb7, 0x7b, 0x9b, 0x3b, 0xcb, 0xf9, 0x14, 0xa9, 0x72,
+  0x65, 0x92, 0xdc, 0xd1, 0x10, 0xbd, 0x10, 0xdb, 0x15, 0xd1, 0xfe, 0x9b,
+  0xd3, 0xfe, 0xf9, 0xe6, 0xde, 0xd9, 0xe9, 0x7b, 0xf8, 0x13, 0xff, 0xbe,
+  0x45, 0x7f, 0xdf, 0xfa, 0xbc, 0x3d, 0xec, 0x6b, 0x49, 0xc8, 0xd7, 0x52,
+  0x61, 0x46, 0xea, 0x44, 0x9d, 0x4e, 0xec, 0x3d, 0x67, 0x20, 0x34, 0x2f,
+  0x50, 0xee, 0x2b, 0x07, 0x05, 0x34, 0x29, 0xe7, 0x53, 0x9a, 0xb3, 0xdb,
+  0x8b, 0xfc, 0xbc, 0xe0, 0xac, 0x56, 0x7d, 0x52, 0xc0, 0x72, 0x14, 0x86,
+  0xa7, 0xed, 0x73, 0x61, 0xb0, 0x13, 0x29, 0x0e, 0x66, 0xcf, 0x05, 0x68,
+  0x3b, 0x98, 0x15, 0xda, 0xfc, 0xd5, 0x70, 0x0c, 0xd6, 0x4e, 0x8a, 0xb9,
+  0x5e, 0xa3, 0x94, 0x23, 0x8b, 0xf8, 0x93, 0x90, 0xa9, 0x26, 0xb5, 0xc7,
+  0x25, 0x43, 0x2a, 0xb6, 0x66, 0x46, 0x47, 0x45, 0x03, 0x9a, 0x30, 0x9f,
+  0x84, 0x50, 0xec, 0x14, 0x3a, 0xa2, 0x3d, 0x1c, 0x25, 0xd2, 0xbb, 0x1e,
+  0x56, 0x85, 0x04, 0x7d, 0x77, 0x7a, 0x1e, 0x25, 0x17, 0x17, 0x8a, 0x1c,
+  0x44, 0xc5, 0x53, 0xa8, 0xb1, 0xaf, 0x93, 0xff, 0x46, 0xe3, 0xd0, 0x55,
+  0x00, 0x97, 0x80, 0xee, 0xce, 0xf3, 0x93, 0xfe, 0x3a, 0x3a, 0x58, 0x39,
+  0xfd, 0xb5, 0xff, 0xee, 0xb8, 0xdb, 0x08, 0xd2, 0xb8, 0xa9, 0x69, 0x6b,
+  0x68, 0x0c, 0x0a, 0x7e, 0x78, 0x9b, 0x76, 0x8e, 0x0e, 0x60, 0xa0, 0x41,
+  0x7b, 0x51, 0x87, 0x36, 0xb4, 0xc3, 0x50, 0x57, 0x1d, 0xda, 0xd7, 0x0e,
+  0x57, 0xe9, 0x90, 0xad, 0x48, 0xf3, 0x45, 0xe4, 0xdf, 0x7b, 0x1f, 0xf8,
+  0x82, 0xdc, 0x51, 0x08, 0x9f, 0x86, 0xaa, 0x5f, 0x07, 0x0d, 0x35, 0x5c,
+  0x18, 0x2d, 0xaa, 0x23, 0x03, 0x6f, 0xf1, 0xc0, 0x34, 0x2e, 0xfc, 0x1d,
+  0x87, 0x25, 0xa6, 0x1d, 0xa4, 0x21, 0x6b, 0x95, 0xbe, 0x63, 0x87, 0x36,
+  0x63, 0xc3, 0xc4, 0x28, 0x1e, 0xc7, 0x4f, 0x29, 0x73, 0x80, 0xc8, 0x43,
+  0xdb, 0x37, 0xbb, 0xc4, 0x04, 0x99, 0x76, 0xe1, 0xba, 0x9d, 0x88, 0xe7,
+  0x89, 0x84, 0xeb, 0x09, 0x7e, 0xdb, 0x71, 0xbc, 0x2b, 0xb5, 0x57, 0xef,
+  0x43, 0x59, 0xe8, 0xa5, 0x9a, 0x74, 0x3a, 0xa1, 0xaa, 0xf0, 0x75, 0x1c,
+  0x13, 0xdf, 0x9f, 0x24, 0x78, 0xcf, 0x9a, 0xd0, 0xa7, 0x16, 0x08, 0xeb,
+  0x41, 0x22, 0xa0, 0x67, 0xc1, 0xc3, 0x14, 0x33, 0x9c, 0xe2, 0xa5, 0xed,
+  0xe1, 0xb8, 0x43, 0x01, 0x5e, 0x0c, 0x52, 0x9d, 0xd6, 0xd9, 0xdc, 0x7a,
+  0xde, 0xdb, 0x80, 0xff, 0x07, 0xfb, 0x22, 0x9e, 0x1b, 0x82, 0x44, 0xb7,
+  0xc0, 0xd7, 0xe6, 0xc9, 0xf4, 0xae, 0xcd, 0x92, 0x2c, 0x3e, 0x8a, 0xf2,
+  0xb2, 0xd3, 0x7b, 0xf4, 0x35, 0x8a, 0x1b, 0x69, 0xae, 0xd0, 0x64, 0x24,
+  0x3f, 0xd1, 0x33, 0x5e, 0xce, 0x9e, 0x76, 0x5d, 0xaa, 0x24, 0x72, 0x44,
+  0xda, 0xde, 0xce, 0xce, 0xf6, 0x9e, 0xfe, 0x1b, 0xce, 0xd3, 0xde, 0x0b,
+  0xf8, 0xc1, 0x92, 0xf1, 0x14, 0xac, 0x58, 0x1d, 0xdf, 0xb0, 0x1d, 0x14,
+  0xbf, 0x41, 0x49, 0xc8, 0x05, 0xb3, 0xbd, 0x46, 0x52, 0xe3, 0xcb, 0x86,
+  0xc7, 0xf9, 0x50, 0x4c, 0x64, 0xba, 0x9b, 0x62, 0x38, 0x7b, 0xfb, 0xc5,
+  0xc5, 0x05, 0x68, 0xc3, 0xed, 0x3b, 0xf8, 0x50, 0x1e, 0x59, 0x7f, 0x2f,
+  0x2d, 0x44, 0x4c, 0x15, 0x62, 0x13, 0xe3, 0x3a, 0x4a, 0xea, 0xa6, 0x8c,
+  0xe4, 0xe1, 0x7a, 0xa1, 0xf2, 0xe1, 0xc6, 0x13, 0x6c, 0x81, 0x31, 0xeb,
+  0x13, 0x52, 0x8f, 0x07, 0x40, 0xb7, 0x00, 0xb6, 0xa4, 0xba, 0xce, 0xa6,
+  0x53, 0xb4, 0x29, 0xa9, 0x6d, 0x00, 0x1e, 0x13, 0x13, 0xa5, 0xa6, 0x64,
+  0x09, 0xc6, 0xb6, 0x95, 0xcc, 0x61, 0xaa, 0xea, 0xd5, 0x68, 0xf6, 0x20,
+  0xbd, 0xf0, 0x63, 0xad, 0x9c, 0x3c, 0xed, 0xa2, 0xec, 0x09, 0x40, 0xd8,
+  0x08, 0x11, 0xf5, 0xf2, 0x84, 0x25, 0x1a, 0xde, 0xad, 0x16, 0x83, 0x4a,
+  0x80, 0x0e, 0xba, 0x01, 0x69, 0x63, 0x2b, 0xc7, 0x8d, 0x1f, 0xb4, 0x7f,
+  0xfc, 0x5f, 0x47, 0x16, 0xd4, 0xdb, 0xa0, 0x66, 0x73, 0xad, 0x5e, 0xa8,
+  0xa4, 0x32, 0xea, 0xc4, 0x87, 0x51, 0x4c, 0x38, 0xa3, 0x4e, 0x3e, 0x57,
+  0xd1, 0xf2, 0xda, 0x93, 0x35, 0x85, 0x37, 0x27, 0x03, 0x26, 0xae, 0x23,
+  0x0a, 0x91, 0x7f, 0x11, 0x49, 0x17, 0x18, 0x26, 0xb6, 0xa9, 0xf0, 0xc6,
+  0x03, 0x59, 0x4b, 0x39, 0xbf, 0x5b, 0x32, 0xc7, 0xda, 0xf8, 0x7a, 0x96,
+  0xa3, 0x4e, 0x4e, 0x0a, 0xa2, 0x57, 0x4f, 0xa6, 0x98, 0x1f, 0x0c, 0xc0,
+  0x36, 0xab, 0x7f, 0xaf, 0x10, 0xe5, 0x3c, 0x2d, 0x04, 0x28, 0xf5, 0x78,
+  0xad, 0xe3, 0x30, 0xda, 0xd9, 0xd8, 0x58, 0xee, 0xa4, 0x95, 0x84, 0xfa,
+  0x8d, 0x1d, 0x29, 0x9c, 0x93, 0x34, 0xe4, 0x93, 0x84, 0x1d, 0x78, 0xe2,
+  0x9f, 0x92, 0x92, 0x5d, 0xf7, 0x73, 0x11, 0x80, 0xd6, 0x8c, 0xe3, 0x0a,
+  0xab, 0xce, 0x28, 0x4a, 0x49, 0x0c, 0x69, 0x20, 0xfa, 0x74, 0x83, 0xd9,
+  0x4b, 0x46, 0x79, 0xd9, 0xd2, 0xde, 0xa7, 0x2d, 0xd6, 0x08, 0xac, 0x87,
+  0xb2, 0x15, 0x0c, 0x5c, 0x8f, 0xc5, 0xa7, 0xe8, 0x61, 0x10, 0xda, 0x40,
+  0xa7, 0x27, 0xa4, 0x88, 0xd2, 0x28, 0xd2, 0x13, 0xc2, 0x53, 0x2b, 0xb2,
+  0x3c, 0x66, 0x2c, 0x1c, 0x79, 0x90, 0xe2, 0xe4, 0xd8, 0x7b, 0x41, 0x8e,
+  0x00, 0x33, 0x05, 0xfb, 0x5b, 0x6a, 0x2d, 0x07, 0x27, 0xc5, 0x81, 0xbe,
+  0x19, 0x04, 0x24, 0x96, 0x1c, 0x23, 0x30, 0x9a, 0xcd, 0xd7, 0xc9, 0x39,
+  0x7a, 0x0d, 0x46, 0x51, 0x8e, 0x71, 0x19, 0x0e, 0xad, 0xe8, 0x96, 0xe3,
+  0x64, 0xeb, 0x34, 0x0f, 0x55, 0xbe, 0x36, 0xe2, 0x10, 0xf2, 0x9c, 0xe3,
+  0x29, 0x7b, 0x97, 0xd6, 0x92, 0x14, 0xc6, 0x73, 0x97, 0x8c, 0x15, 0x29,
+  0x88, 0x85, 0x49, 0xf8, 0xa8, 0xc4, 0xe4, 0x0f, 0x31, 0x5e, 0x3f, 0xba,
+  0x43, 0x38, 0x3f, 0x83, 0x81, 0xee, 0xd1, 0xff, 0xdd, 0x85, 0xc3, 0xd7,
+  0x51, 0x67, 0x3c, 0x4f, 0x3f, 0x2c, 0x86, 0x74, 0x42, 0x16, 0x8f, 0x3e,
+  0x78, 0xd1, 0x04, 0xe0, 0x98, 0xa5, 0x2c, 0x14, 0x21, 0x50, 0x29, 0x11,
+  0x93, 0x1d, 0x87, 0xb4, 0x06, 0xcd, 0x49, 0x0b, 0x15, 0x78, 0x3b, 0x08,
+  0x1b, 0x98, 0x1e, 0x57, 0x8e, 0x0c, 0x86, 0x8e, 0x4c, 0x14, 0x44, 0xbf,
+  0x18, 0xbb, 0xb7, 0x09, 0xb1, 0x9a, 0xf9, 0x44, 0xa8, 0x5a, 0xcc, 0xc9,
+  0x6d, 0x8e, 0x07, 0x96, 0x9d, 0x2d, 0x8c, 0x60, 0xd0, 0xa5, 0x2c, 0x0f,
+  0x21, 0xcf, 0xdb, 0x2e, 0x00, 0x82, 0xb7, 0x61, 0x00, 0xcc, 0x6b, 0x72,
+  0xbf, 0x15, 0x5d, 0x91, 0x3a, 0xb7, 0x57, 0x85, 0xe7, 0x55, 0x67, 0x0b,
+  0xcb, 0x22, 0xab, 0x08, 0xa0, 0x12, 0x0e, 0x88, 0x45, 0x06, 0x14, 0x6c,
+  0xb8, 0xa1, 0xfa, 0x85, 0x46, 0xa8, 0x0f, 0xb4, 0xd9, 0x34, 0xa1, 0x6a,
+  0xcd, 0x20, 0x4c, 0xcd, 0x0d, 0xae, 0x03, 0xc4, 0xcc, 0xa0, 0xa8, 0x84,
+  0x73, 0x10, 0x6c, 0x04, 0x98, 0x2d, 0x29, 0xe9, 0x56, 0x10, 0xbc, 0x50,
+  0xbc, 0x3c, 0xa8, 0x56, 0x72, 0x9e, 0x06, 0xca, 0x20, 0x88, 0xa8, 0x03,
+  0x47, 0x37, 0x19, 0x42, 0xff, 0x20, 0x63, 0x81, 0xbe, 0x83, 0x7e, 0x7a,
+  0x66, 0x24, 0x1a, 0x97, 0x01, 0x41, 0xaf, 0x32, 0x07, 0x21, 0x08, 0x8e,
+  0xe4, 0x95, 0xa7, 0x94, 0x55, 0x59, 0x3d, 0x4b, 0xea, 0xc7, 0x95, 0x93,
+  0xcc, 0x93, 0x95, 0x2c, 0x2c, 0xdd, 0x34, 0xf4, 0x40, 0xbc, 0x89, 0x38,
+  0xfa, 0x97, 0x08, 0xd3, 0x21, 0x67, 0xca, 0xc4, 0xe4, 0x87, 0x99, 0x67,
+  0xdf, 0x3f, 0xee, 0xcd, 0x78, 0x40, 0x2e, 0xf7, 0x98, 0xfb, 0xc7, 0x2d,
+  0xf4, 0x13, 0xb8, 0xec, 0xb7, 0x8f, 0xd2, 0xe1, 0xbf, 0x1f, 0x10, 0xa7,
+  0x67, 0x89, 0x84, 0xaa, 0x5d, 0x40, 0x4f, 0x02, 0x75, 0x90, 0xab, 0x57,
+  0x2b, 0x9c, 0x79, 0x4c, 0xd5, 0x8c, 0x8e, 0x03, 0xa9, 0x47, 0x14, 0x7a,
+  0x06, 0x4a, 0x8d, 0xef, 0xed, 0x80, 0x0e, 0xe6, 0x82, 0xe9, 0x3d, 0x61,
+  0x3b, 0x75, 0x98, 0x2f, 0x78, 0x79, 0x94, 0x9d, 0x3e, 0xd8, 0x46, 0xfc,
+  0xcd, 0xbd, 0x8e, 0x04, 0x5b, 0x7b, 0x46, 0x03, 0xe2, 0xb1, 0xb5, 0x38,
+  0x57, 0x4b, 0xf2, 0x24, 0x94, 0x41, 0x52, 0xab, 0x3d, 0x1c, 0xb6, 0x09,
+  0xdc, 0xfc, 0xec, 0x9b, 0x83, 0x93, 0x0f, 0x47, 0x9b, 0x9f, 0x46, 0xf8,
+  0xaf, 0x2d, 0xfe, 0xd7, 0x56, 0x27, 0xc4, 0x49, 0x20, 0x5a, 0x57, 0x3e,
+  0x5b, 0x89, 0xaa, 0xfb, 0xc9, 0xa0, 0x18, 0x1b, 0x5e, 0x12, 0x52, 0x68,
+  0xc8, 0xb7, 0x2b, 0x0a, 0x8f, 0x81, 0xa0, 0x92, 0x18, 0x4e, 0xfb, 0xa2,
+  0xa9, 0x24, 0x0d, 0x5a, 0x85, 0x24, 0x05, 0x9c, 0x5d, 0x30, 0x0a, 0xdc,
+  0xed, 0x91, 0x91, 0xbd, 0x14, 0x78, 0x3e, 0x9f, 0x9b, 0x9a, 0x4e, 0x57,
+  0xa9, 0x8a, 0xa3, 0xca, 0x95, 0x24, 0x22, 0xf0, 0xf8, 0x56, 0x24, 0xd6,
+  0x75, 0x43, 0x36, 0x24, 0xe6, 0xb2, 0x40, 0x4a, 0x00, 0x81, 0x83, 0x9b,
+  0x16, 0x78, 0xfc, 0xb6, 0xe4, 0x79, 0x23, 0xe2, 0xdb, 0xbd, 0xa2, 0x52,
+  0xe1, 0xcd, 0xa3, 0x57, 0x06, 0xad, 0x1a, 0xdf, 0x6d, 0x0f, 0x37, 0x10,
+  0x35, 0xcf, 0x01, 0x56, 0x3d, 0x21, 0xc8, 0x2c, 0x4d, 0x18, 0xb3, 0x91,
+  0x03, 0x14, 0x71, 0xa3, 0xc2, 0xf5, 0xad, 0x39, 0x6d, 0xe9, 0x54, 0x7a,
+  0x28, 0x66, 0x78, 0xd4, 0x08, 0x5f, 0x73, 0x2c, 0xa4, 0x67, 0x83, 0x73,
+  0x63, 0x0b, 0xc2, 0x42, 0x5a, 0x30, 0x25, 0xc0, 0x4d, 0xbc, 0x7c, 0xd1,
+  0x1c, 0xd4, 0xee, 0x55, 0xb8, 0x94, 0xd6, 0xdc, 0x14, 0x08, 0xdd, 0x3e,
+  0xda, 0x16, 0x27, 0x69, 0xa3, 0x5a, 0x14, 0xcb, 0x3a, 0x37, 0xf1, 0x2e,
+  0x2e, 0xf4, 0x28, 0x9c, 0x99, 0x98, 0x9c, 0x02, 0x57, 0x63, 0x10, 0x5e,
+  0xc5, 0xa4, 0xf2, 0x71, 0xe2, 0x05, 0x10, 0xe8, 0xc0, 0x29, 0x4e, 0x0f,
+  0xe6, 0xf1, 0x18, 0xee, 0x87, 0xef, 0xdf, 0x8f, 0xd3, 0x35, 0x35, 0xdb,
+  0xf4, 0xa6, 0x5e, 0x7f, 0x5b, 0xfc, 0x0c, 0x93, 0x4f, 0xe4, 0x23, 0xa1,
+  0xeb, 0x5e, 0xae, 0xef, 0xb9, 0x33, 0xb7, 0xf2, 0x8f, 0xc1, 0x46, 0x5c,
+  0xd1, 0xd1, 0xf0, 0x5b, 0x60, 0x8b, 0x12, 0x52, 0x63, 0xa9, 0x82, 0xc4,
+  0xe3, 0x1f, 0x51, 0x4c, 0xb4, 0x9d, 0x9a, 0x7b, 0x9b, 0x2b, 0x49, 0x80,
+  0x9f, 0x0b, 0x49, 0x1c, 0x34, 0x8c, 0x26, 0x37, 0x66, 0xdb, 0x23, 0xdc,
+  0x56, 0x07, 0xe7, 0xdf, 0xa1, 0x2e, 0x48, 0xa9, 0x43, 0x2f, 0x77, 0x57,
+  0x18, 0xec, 0xdd, 0xa9, 0x9e, 0xe1, 0xd4, 0xf1, 0x91, 0x57, 0x10, 0x44,
+  0xa0, 0x9f, 0x0d, 0x8c, 0x34, 0x51, 0x22, 0x34, 0x4f, 0x15, 0xbd, 0xe5,
+  0x8c, 0xb8, 0x46, 0xa2, 0x8d, 0x51, 0x42, 0xd9, 0x10, 0x49, 0x7d, 0xd0,
+  0x7d, 0xb2, 0xe3, 0x69, 0xd1, 0x60, 0xfb, 0x4a, 0x32, 0x10, 0x81, 0x82,
+  0xd0, 0x15, 0x2a, 0x6f, 0x63, 0x4e, 0x96, 0x9d, 0xb6, 0xa4, 0x93, 0xac,
+  0x12, 0xce, 0x5e, 0xb0, 0xc8, 0x80, 0x09, 0xcc, 0x08, 0x5a, 0x68, 0xb0,
+  0x0f, 0x62, 0x1e, 0xa8, 0x22, 0xe6, 0xe0, 0xba, 0x7f, 0xec, 0x7e, 0xb6,
+  0x67, 0xa8, 0xa2, 0xcc, 0xe2, 0x47, 0x02, 0xc3, 0x8c, 0xf1, 0x18, 0x9f,
+  0x78, 0xc8, 0xc8, 0x2a, 0x2b, 0xee, 0xa6, 0x65, 0x4a, 0x3f, 0x06, 0xa0,
+  0x3b, 0x05, 0xce, 0x40, 0x62, 0xe3, 0x8d, 0xd2, 0x9c, 0xc5, 0x4f, 0xff,
+  0x1d, 0x49, 0xdb, 0x1a, 0x7e, 0x8d, 0xb4, 0x04, 0x07, 0x15, 0xbb, 0x2a,
+  0x44, 0x04, 0xd1, 0x17, 0x1a, 0x2c, 0x4b, 0xd6, 0xfb, 0xb0, 0xeb, 0x57,
+  0x1c, 0x5b, 0x5e, 0x72, 0x83, 0x47, 0x0d, 0x65, 0x52, 0x94, 0xcb, 0x00,
+  0x9f, 0x3d, 0x70, 0xc9, 0x0f, 0x64, 0xa6, 0x73, 0xb3, 0x38, 0x1f, 0x7e,
+  0x0b, 0xae, 0xfb, 0x07, 0xc6, 0x70, 0xbc, 0xb1, 0x74, 0xc1, 0xc4, 0xa3,
+  0xcc, 0xcb, 0x24, 0x6b, 0x00, 0xca, 0x81, 0x00, 0xfb, 0x49, 0x01, 0xae,
+  0xac, 0x1c, 0x6e, 0xf4, 0x60, 0x92, 0xa0, 0xb8, 0x91, 0x82, 0xed, 0x53,
+  0x4d, 0x1f, 0x92, 0xb3, 0x90, 0xa7, 0x58, 0x8a, 0x9e, 0x50, 0xe7, 0x10,
+  0xf4, 0x2a, 0x39, 0x25, 0xcb, 0x19, 0xb0, 0x5c, 0x39, 0xbc, 0x22, 0x5c,
+  0x14, 0xf4, 0x62, 0xa5, 0x23, 0xbe, 0xba, 0xc2, 0xc1, 0x62, 0x1e, 0x55,
+  0xd4, 0x0d, 0x19, 0x04, 0x77, 0x19, 0x2f, 0x53, 0xf8, 0xbd, 0x4a, 0x22,
+  0xfa, 0x28, 0x4e, 0xd7, 0xcc, 0x37, 0x38, 0x5c, 0x97, 0x74, 0xdc, 0x2b,
+  0x72, 0xee, 0xa5, 0xe3, 0xca, 0x5e, 0x07, 0x66, 0x95, 0xf6, 0x5e, 0x20,
+  0xdb, 0x3c, 0x2f, 0xe6, 0x03, 0xbb, 0x30, 0x4e, 0xcb, 0x85, 0x37, 0x35,
+  0xc4, 0x57, 0xe4, 0xd9, 0xa1, 0x15, 0x88, 0x2c, 0x7d, 0xaf, 0x28, 0x79,
+  0x0b, 0x86, 0x73, 0x4c, 0x1d, 0x83, 0xa0, 0xd7, 0xe6, 0xac, 0x43, 0xd1,
+  0xf4, 0x71, 0x33, 0xe9, 0x6e, 0x9d, 0x80, 0xf0, 0x67, 0x02, 0x4c, 0xd0,
+  0xe3, 0xbc, 0xf1, 0x7c, 0x77, 0x03, 0x2f, 0x3d, 0xc4, 0xdb, 0xe5, 0x4b,
+  0x40, 0xc4, 0x36, 0x87, 0x2d, 0x3d, 0xcf, 0x50, 0x61, 0x76, 0x4d, 0x80,
+  0xfe, 0xdc, 0x65, 0xdc, 0xda, 0x66, 0x8b, 0xe8, 0x55, 0x41, 0x20, 0x0a,
+  0xea, 0xf6, 0x8b, 0xa1, 0xce, 0x38, 0xbe, 0xa8, 0xbd, 0x63, 0xe8, 0x70,
+  0xda, 0xd2, 0x8e, 0x3a, 0xfb, 0xaa, 0xdd, 0x0a, 0x53, 0xec, 0xbe, 0xfe,
+  0x78, 0x36, 0xc7, 0x27, 0x63, 0xa2, 0xc5, 0x3e, 0xfe, 0xe9, 0x29, 0xb0,
+  0x04, 0x2d, 0x88, 0x19, 0xaf, 0x18, 0x9f, 0x16, 0x4c, 0x45, 0x2d, 0x4b,
+  0x51, 0x87, 0xbb, 0x90, 0x84, 0xab, 0xd7, 0xb4, 0x81, 0x53, 0x10, 0x9b,
+  0x00, 0x9d, 0x27, 0x06, 0x8d, 0xde, 0x66, 0x51, 0x3a, 0x1d, 0xb0, 0x1a,
+  0x51, 0x24, 0x8c, 0x9a, 0x31, 0x27, 0x53, 0x85, 0x89, 0xe7, 0x2c, 0x42,
+  0x51, 0xcf, 0xba, 0xd4, 0x0a, 0x4e, 0x9e, 0x32, 0x68, 0x08, 0x75, 0xcc,
+  0x66, 0xd9, 0xa1, 0x23, 0x80, 0xb1, 0xfb, 0xf0, 0x87, 0x20, 0x5c, 0xbb,
+  0x0e, 0x8a, 0x63, 0xc0, 0x8c, 0xd2, 0xdc, 0x8a, 0x8d, 0x67, 0x3b, 0x3b,
+  0x0b, 0xa5, 0x77, 0x4d, 0xe6, 0x2d, 0x66, 0xdb, 0x0d, 0x6b, 0x38, 0xaf,
+  0xe2, 0x10, 0x44, 0x3d, 0x54, 0x34, 0xd7, 0x3f, 0x3c, 0x17, 0xbe, 0xbd,
+  0xc1, 0x1b, 0xcf, 0x9f, 0x3f, 0x8f, 0xe2, 0x73, 0x66, 0x13, 0x66, 0x73,
+  0x3f, 0x1f, 0x38, 0x4f, 0x6f, 0x17, 0x78, 0x71, 0x91, 0x89, 0x5d, 0xae,
+  0x5d, 0x84, 0x70, 0x37, 0x2c, 0xc7, 0x17, 0x0c, 0xc7, 0x49, 0x6d, 0x5c,
+  0x18, 0x19, 0xfc, 0x06, 0x13, 0xf4, 0xa3, 0x93, 0xd7, 0x1c, 0xaf, 0x3a,
+  0x7c, 0x8f, 0x7f, 0x43, 0xad, 0x80, 0x3d, 0x94, 0x04, 0xa2, 0x41, 0xed,
+  0xa8, 0x29, 0x36, 0xf2, 0xf6, 0x9b, 0x36, 0xd0, 0xc1, 0xea, 0x69, 0x7f,
+  0x7d, 0xfb, 0xe5, 0xc6, 0x5a, 0xa0, 0xdc, 0x06, 0x3b, 0xc5, 0x24, 0x8e,
+  0x2b, 0x79, 0x23, 0x90, 0x2b, 0xf2, 0x20, 0xc5, 0x60, 0xc6, 0x40, 0x20,
+  0xd6, 0x6e, 0x16, 0x01, 0x5d, 0xe2, 0x93, 0xf8, 0xd0, 0x02, 0x7c, 0x36,
+  0xed, 0x28, 0x2a, 0xf7, 0x31, 0xcb, 0x05, 0xa7, 0x6a, 0x59, 0x0a, 0x88,
+  0x5c, 0xf0, 0x87, 0xf7, 0x29, 0xf6, 0x1e, 0x0c, 0xc2, 0x3f, 0x9d, 0x64,
+  0x54, 0x63, 0x9b, 0x30, 0x12, 0xad, 0xea, 0x59, 0x88, 0xdb, 0xd2, 0x2c,
+  0x8e, 0xa1, 0x47, 0x12, 0xee, 0xaf, 0x37, 0x48, 0x43, 0x21, 0xe1, 0x0a,
+  0x41, 0x31, 0x29, 0x31, 0x9b, 0x52, 0x9d, 0xfe, 0x78, 0x2e, 0x65, 0x4a,
+  0x96, 0xe9, 0x4f, 0x18, 0xab, 0x7e, 0x4c, 0x90, 0x7e, 0x56, 0x62, 0xcb,
+  0xc8, 0x7d, 0x93, 0x3f, 0x4e, 0xa5, 0x0b, 0x8f, 0xa9, 0x8d, 0xd7, 0x10,
+  0x8f, 0x8d, 0x3e, 0xf2, 0x50, 0xc8, 0x8a, 0x14, 0xb7, 0xd2, 0x9e, 0x37,
+  0xfd, 0xfe, 0x89, 0x27, 0x69, 0xa4, 0xf8, 0xca, 0x04, 0x17, 0x29, 0xc1,
+  0x28, 0x19, 0xa2, 0xc5, 0x47, 0xe6, 0x5a, 0x41, 0x3d, 0xb9, 0x5f, 0xec,
+  0x6c, 0x6d, 0x75, 0xa3, 0xdd, 0xde, 0xa6, 0x0b, 0xa7, 0x93, 0x8c, 0x3d,
+  0xb4, 0x42, 0xc9, 0x7c, 0xf7, 0x30, 0x76, 0xa8, 0x2d, 0xb7, 0x45, 0xd9,
+  0x11, 0x60, 0x1d, 0xad, 0xcf, 0x45, 0x2b, 0x3d, 0x04, 0xcb, 0xd1, 0xf9,
+  0x6e, 0x6b, 0x77, 0x77, 0xf3, 0xe5, 0xde, 0x59, 0xbc, 0xbb, 0xb5, 0x89,
+  0x18, 0x3b, 0x6c, 0x81, 0xd8, 0xa4, 0x52, 0xb7, 0x3c, 0x34, 0xca, 0x46,
+  0x8c, 0xb1, 0x38, 0x1e, 0xdf, 0x87, 0xf3, 0xc4, 0x3a, 0xc5, 0x34, 0xcd,
+  0xab, 0x6a, 0x1c, 0x55, 0x1f, 0xb9, 0xd0, 0x7c, 0xbd, 0xfa, 0xc8, 0x6e,
+  0x84, 0x8e, 0xc0, 0xe2, 0x64, 0x01, 0x1d, 0xd5, 0xec, 0x8c, 0x88, 0xed,
+  0xc4, 0x54, 0xb2, 0x6a, 0xa7, 0x75, 0xdd, 0x07, 0x36, 0x99, 0xdb, 0x50,
+  0x37, 0xc1, 0x6c, 0x5f, 0x35, 0x34, 0x59, 0x5f, 0x59, 0x3d, 0x3a, 0x5c,
+  0xe3, 0x4d, 0xd3, 0xbd, 0xb4, 0x15, 0xde, 0x3c, 0xd3, 0x2e, 0x17, 0xea,
+  0xf9, 0x37, 0x4f, 0x96, 0x93, 0x99, 0x8b, 0xc1, 0x42, 0x74, 0x60, 0xcb,
+  0xb2, 0xd8, 0x37, 0xa2, 0x80, 0x91, 0xcd, 0xd6, 0x73, 0x73, 0xcf, 0x83,
+  0x20, 0xf8, 0xd1, 0x8c, 0xf4, 0xba, 0x50, 0x56, 0xe2, 0x32, 0x1a, 0x85,
+  0x90, 0xc3, 0xb6, 0x9d, 0x9e, 0x5a, 0xc5, 0xa4, 0x6d, 0x21, 0xe5, 0x2c,
+  0x7d, 0x6c, 0xf8, 0x73, 0xbc, 0xef, 0xcb, 0x42, 0x91, 0xb6, 0xfa, 0x02,
+  0xa0, 0x9f, 0x27, 0x4e, 0xaa, 0x61, 0x96, 0xb1, 0x37, 0x6b, 0x8e, 0x13,
+  0x4b, 0x8b, 0x16, 0x08, 0xa6, 0x9e, 0xa0, 0x8d, 0xb2, 0x84, 0x73, 0xc6,
+  0x6c, 0x93, 0x91, 0x65, 0x97, 0xe1, 0x7c, 0xfa, 0x8b, 0x47, 0xe8, 0x2c,
+  0xf4, 0x38, 0x7a, 0x3f, 0x40, 0xa3, 0x5a, 0x34, 0x55, 0x81, 0x78, 0xc1,
+  0xe6, 0x76, 0xd2, 0x66, 0xc9, 0x38, 0x2c, 0xaa, 0xb6, 0x49, 0x8e, 0x6d,
+  0x40, 0x09, 0x18, 0x3d, 0x00, 0x52, 0x2b, 0xed, 0x2a, 0x09, 0x2c, 0xa5,
+  0x2a, 0x50, 0x02, 0xce, 0xb3, 0x91, 0xb9, 0x59, 0x8d, 0xf1, 0xc8, 0x19,
+  0x15, 0x5b, 0x72, 0xa1, 0xbf, 0xe8, 0x2a, 0x48, 0x4e, 0xdd, 0xf4, 0xa8,
+  0x25, 0x01, 0xa7, 0x02, 0xb7, 0x8a, 0x8e, 0x28, 0x01, 0x50, 0x3a, 0xd1,
+  0x15, 0xdc, 0x36, 0x9e, 0x9c, 0x78, 0x26, 0x1f, 0x56, 0x5a, 0xa6, 0x23,
+  0x30, 0xaa, 0xd9, 0x80, 0xb6, 0xa1, 0x57, 0xa0, 0xb0, 0x4e, 0xef, 0x30,
+  0x1b, 0x87, 0xef, 0x06, 0xb8, 0xdf, 0xd1, 0x1a, 0xab, 0xa4, 0x31, 0x6e,
+  0x59, 0x66, 0x18, 0x3f, 0x81, 0x99, 0xd5, 0xb3, 0x32, 0x97, 0xd0, 0x07,
+  0xda, 0xb9, 0x74, 0x34, 0x46, 0x01, 0xfc, 0xa6, 0x21, 0x5d, 0xe2, 0x95,
+  0x29, 0x4b, 0x24, 0xd3, 0x9c, 0x70, 0xec, 0x3d, 0xda, 0x50, 0xb7, 0x6b,
+  0x9a, 0x9c, 0xf6, 0xa0, 0xa9, 0x9b, 0xd9, 0xab, 0xe8, 0x01, 0xe2, 0x8a,
+  0x6a, 0x06, 0x52, 0x2f, 0x1a, 0x1e, 0xcb, 0x6a, 0x7e, 0x62, 0xc4, 0xfa,
+  0x5d, 0x7c, 0x7b, 0x7b, 0x1b, 0xe3, 0x55, 0x8a, 0xf9, 0xc7, 0x52, 0x49,
+  0xdc, 0x6b, 0xf4, 0x91, 0xe2, 0xf3, 0x49, 0x34, 0x44, 0x99, 0xe3, 0x67,
+  0x32, 0x38, 0xc9, 0xe0, 0xe5, 0x20, 0xab, 0x09, 0xb2, 0x42, 0x98, 0x8b,
+  0x5e, 0x13, 0xc1, 0x22, 0xd3, 0x21, 0xbf, 0x85, 0xc6, 0x63, 0x02, 0xf7,
+  0xaa, 0x5d, 0x0b, 0x02, 0xe2, 0x0e, 0xeb, 0x14, 0x81, 0x7d, 0xb0, 0x2d,
+  0xe0, 0x5e, 0x14, 0xbf, 0x89, 0x3a, 0x87, 0xb2, 0xda, 0x73, 0x78, 0x62,
+  0xaf, 0xb9, 0x16, 0x7e, 0x38, 0xd8, 0x52, 0x30, 0xe8, 0x37, 0x6d, 0xa2,
+  0x8a, 0x58, 0x98, 0xfe, 0xc0, 0x15, 0x5d, 0xe0, 0x4e, 0xdb, 0xb4, 0xdf,
+  0x50, 0x13, 0x0c, 0x4c, 0xb9, 0xe7, 0x00, 0x0f, 0x03, 0x7c, 0xd3, 0xd2,
+  0x13, 0x4c, 0xdd, 0xe2, 0xf6, 0x91, 0x24, 0x34, 0x7e, 0xe1, 0x09, 0x17,
+  0xaa, 0x7e, 0x61, 0x1c, 0xb4, 0x8f, 0x38, 0xe6, 0x65, 0x72, 0xfb, 0xb0,
+  0x38, 0x72, 0x4e, 0xb8, 0x6d, 0x42, 0x8c, 0xd9, 0xf5, 0xb6, 0xed, 0x11,
+  0xc5, 0x4d, 0xb4, 0xb0, 0x25, 0xd4, 0x6e, 0x8f, 0xbb, 0xc5, 0x5b, 0x1c,
+  0x02, 0x36, 0x15, 0xc4, 0xd7, 0xf8, 0xc5, 0xc3, 0xcd, 0x5c, 0xaa, 0x85,
+  0x4b, 0xc7, 0x65, 0x74, 0xb0, 0xc1, 0x58, 0xd1, 0x59, 0x22, 0xd9, 0xcc,
+  0xbe, 0xfa, 0x45, 0x52, 0xe3, 0xff, 0xef, 0x2c, 0x17, 0x04, 0xb6, 0xdb,
+  0xd5, 0x48, 0xaf, 0x08, 0x09, 0x7e, 0x73, 0x7c, 0x1e, 0x21, 0x51, 0x2d,
+  0xb9, 0xbb, 0x46, 0x0a, 0xc9, 0xa1, 0xe5, 0x40, 0x9e, 0x43, 0x77, 0x69,
+  0x9d, 0x14, 0xba, 0xd5, 0xb9, 0xe3, 0x11, 0xca, 0x24, 0xc5, 0x86, 0x96,
+  0xa8, 0x54, 0x5a, 0xe2, 0x89, 0xa6, 0xb2, 0xd3, 0x58, 0x7b, 0x33, 0xfb,
+  0x46, 0x18, 0x69, 0xb6, 0x87, 0x5f, 0x1d, 0x53, 0xd1, 0x1a, 0x5c, 0x42,
+  0xb9, 0x20, 0xd2, 0xf1, 0xfc, 0xa9, 0x2d, 0xb2, 0xf5, 0x04, 0x5f, 0x66,
+  0xb9, 0xea, 0x12, 0x49, 0xd4, 0xe8, 0xaa, 0xd4, 0x48, 0x8a, 0x17, 0xd5,
+  0x2b, 0xb1, 0x95, 0x49, 0x5c, 0x77, 0x68, 0xfa, 0x4b, 0xab, 0xce, 0x98,
+  0xd8, 0x9a, 0xdc, 0x20, 0xbd, 0xe8, 0xeb, 0xaa, 0xd5, 0x25, 0x95, 0x5a,
+  0xc8, 0xb8, 0xad, 0x5e, 0x05, 0xa4, 0x3d, 0x98, 0xd4, 0x27, 0xfe, 0x2e,
+  0xf5, 0x8b, 0x19, 0xe4, 0xf3, 0x6d, 0x36, 0x71, 0xcc, 0xd1, 0x56, 0x0c,
+  0xc2, 0x90, 0x2e, 0x6d, 0xb4, 0xc7, 0x26, 0x5c, 0x05, 0x8c, 0x42, 0x85,
+  0x22, 0xb5, 0xc6, 0x38, 0x87, 0x5b, 0xe7, 0x3f, 0xa5, 0xa4, 0x0d, 0xae,
+  0x06, 0x32, 0xc4, 0x14, 0xfa, 0xc4, 0x1d, 0xcc, 0x34, 0xaf, 0x93, 0xc2,
+  0xa7, 0xf0, 0x70, 0x98, 0x8c, 0xf4, 0x19, 0x7a, 0x41, 0xbe, 0x90, 0x10,
+  0x0f, 0xd6, 0x72, 0xba, 0x99, 0x32, 0xe2, 0x0a, 0x66, 0x65, 0x50, 0xea,
+  0xfd, 0x91, 0x0c, 0xe1, 0xe1, 0x38, 0x6d, 0xcb, 0xa1, 0x1e, 0x73, 0xdc,
+  0x30, 0x41, 0xaf, 0xd3, 0x20, 0x05, 0x42, 0xfe, 0x5b, 0x9b, 0x78, 0x9f,
+  0x3d, 0x4c, 0xbd, 0x65, 0xc9, 0xb7, 0x98, 0x7a, 0xdc, 0xb2, 0x52, 0x2b,
+  0xa2, 0x3e, 0x73, 0x42, 0x5b, 0x94, 0x53, 0xcb, 0x5e, 0x65, 0x13, 0xe2,
+  0x0a, 0x8a, 0x53, 0xe4, 0xd0, 0xcf, 0x7e, 0xad, 0x5d, 0x27, 0x66, 0xa4,
+  0x84, 0x41, 0x9c, 0x7c, 0x78, 0x38, 0xf6, 0x7b, 0xd3, 0xde, 0xbb, 0xdd,
+  0x27, 0xb4, 0x71, 0x13, 0x8e, 0x40, 0x01, 0x1f, 0xe0, 0xff, 0x9a, 0x99,
+  0x79, 0x40, 0xb5, 0x3b, 0x71, 0x78, 0x38, 0x05, 0xf5, 0x10, 0x3f, 0x9e,
+  0xb7, 0x3e, 0x73, 0x07, 0x3c, 0x7e, 0x71, 0x94, 0x1d, 0xce, 0x2d, 0xec,
+  0x34, 0xa8, 0xa9, 0xe9, 0x59, 0x9c, 0x43, 0xb1, 0xea, 0x47, 0xdc, 0xf4,
+  0xf8, 0x48, 0x23, 0x0c, 0x6e, 0x47, 0xa7, 0xba, 0xcf, 0x5a, 0xb7, 0x49,
+  0x30, 0x04, 0x03, 0xa7, 0x5b, 0x4f, 0x77, 0x39, 0x9b, 0xbb, 0xc7, 0xba,
+  0x77, 0xd8, 0x8a, 0x32, 0xb8, 0x77, 0xff, 0x37, 0xad, 0x8f, 0xf8, 0xd9,
+  0xb2, 0x01, 0x26, 0x11, 0x54, 0xd2, 0x4a, 0x08, 0x0b, 0x2b, 0x23, 0x2a,
+  0x49, 0x45, 0x5d, 0x66, 0xce, 0xec, 0x08, 0x49, 0x0c, 0xb5, 0x3f, 0x4c,
+  0xea, 0x1a, 0xb3, 0x3d, 0x9b, 0x71, 0xa1, 0xea, 0x67, 0x56, 0x6b, 0x63,
+  0x0f, 0x95, 0x29, 0xe2, 0x46, 0x26, 0x5c, 0xc0, 0xa9, 0x86, 0x33, 0xc3,
+  0x4c, 0x39, 0x97, 0xfd, 0xfc, 0xcb, 0xda, 0xbd, 0x6a, 0xed, 0x25, 0x48,
+  0x93, 0xbb, 0x81, 0xc5, 0x2d, 0xba, 0xac, 0xc3, 0xaf, 0x7e, 0xc6, 0xff,
+  0xa5, 0xab, 0x6c, 0xf9, 0xb7, 0x0d, 0xf3, 0x3c, 0xe1, 0x5d, 0x7a, 0x8f,
+  0x62, 0x89, 0x8b, 0xb4, 0x84, 0x80, 0x7a, 0xa0, 0xfd, 0x75, 0x44, 0xdd,
+  0x70, 0x94, 0x03, 0xfb, 0xc8, 0x7c, 0xb5, 0x80, 0x5a, 0x81, 0xaf, 0xc1,
+  0xb8, 0x58, 0xed, 0xd0, 0x04, 0x1d, 0xa4, 0x37, 0x19, 0x29, 0x0a, 0x9b,
+  0xb6, 0x7a, 0x69, 0xea, 0xa1, 0xd0, 0xac, 0xa6, 0x89, 0xbb, 0x11, 0x24,
+  0xca, 0x0c, 0x22, 0x9f, 0x56, 0x34, 0x28, 0x8b, 0xdb, 0x8a, 0x4c, 0x0d,
+  0xf5, 0xb5, 0x27, 0xec, 0x16, 0xbe, 0xf2, 0x10, 0x9d, 0x80, 0x1c, 0x63,
+  0xd3, 0xf6, 0xe7, 0xcd, 0xf9, 0xdb, 0x13, 0xee, 0xe1, 0xc9, 0xe0, 0x42,
+  0x58, 0xe5, 0x2e, 0xd3, 0x9d, 0x0d, 0x26, 0x59, 0x8d, 0x1a, 0x62, 0xcd,
+  0xd2, 0x5b, 0x2f, 0x04, 0x0f, 0x01, 0x89, 0xb2, 0x96, 0xc4, 0x7b, 0x31,
+  0x0d, 0x25, 0x73, 0x88, 0x91, 0xe0, 0xe0, 0x08, 0x3b, 0xd6, 0xcd, 0xf2,
+  0x76, 0x4c, 0x74, 0xc8, 0x79, 0xcd, 0xa4, 0xcb, 0xbe, 0xc6, 0xad, 0xc0,
+  0x47, 0x02, 0x2e, 0x17, 0xa3, 0x28, 0xa2, 0x87, 0x67, 0x4c, 0x8d, 0xc9,
+  0x0c, 0xed, 0x50, 0xf3, 0x35, 0x57, 0x35, 0xa1, 0x1e, 0x27, 0x4d, 0x6d,
+  0xd7, 0x43, 0x05, 0x32, 0xda, 0xaf, 0xed, 0x18, 0xeb, 0x2a, 0xc0, 0xa8,
+  0x7a, 0xa1, 0x0a, 0x28, 0x59, 0x27, 0xb3, 0x12, 0xdd, 0xfc, 0xac, 0xdb,
+  0x77, 0x03, 0xb5, 0xa3, 0xa2, 0x83, 0xa9, 0xbb, 0xdd, 0x64, 0x6f, 0x35,
+  0x6c, 0x02, 0x6d, 0x8b, 0x89, 0x63, 0x3b, 0x42, 0x2b, 0xc0, 0x23, 0x8c,
+  0x30, 0x4c, 0x65, 0xc1, 0xb4, 0x9b, 0xc0, 0x67, 0x30, 0x3a, 0x9a, 0x7b,
+  0xe8, 0x12, 0xc5, 0xd1, 0xdb, 0xe7, 0x22, 0x68, 0x3c, 0xd9, 0xbe, 0xb1,
+  0x95, 0x6d, 0x13, 0xaa, 0x5e, 0x4e, 0x02, 0x5a, 0x26, 0x68, 0x65, 0xea,
+  0x13, 0x5a, 0x34, 0x63, 0x99, 0x7e, 0x40, 0x5b, 0x62, 0x9b, 0x5d, 0x27,
+  0x17, 0x27, 0xc3, 0x40, 0x9e, 0x9b, 0xf7, 0x64, 0x62, 0xf6, 0xd1, 0x24,
+  0x2d, 0x2f, 0xb9, 0x9c, 0x96, 0x1b, 0x90, 0x04, 0x3d, 0x5e, 0x49, 0xd3,
+  0xff, 0xf7, 0x7f, 0x62, 0x56, 0x22, 0xa8, 0x1a, 0x63, 0x86, 0x85, 0x74,
+  0x02, 0x92, 0xb9, 0x12, 0x8f, 0x58, 0x58, 0x8d, 0x92, 0x1c, 0x28, 0x01,
+  0x27, 0xd6, 0xcf, 0x3b, 0x1e, 0x8f, 0x3f, 0x1b, 0x17, 0xb3, 0xea, 0x7e,
+  0x25, 0x92, 0x96, 0xcd, 0xd2, 0xe5, 0xb4, 0x66, 0xcc, 0x2c, 0xda, 0x4b,
+  0xd8, 0xdf, 0x59, 0x7e, 0xad, 0x7a, 0x00, 0x56, 0xdc, 0x92, 0x17, 0xeb,
+  0xba, 0x4d, 0xfe, 0x15, 0xe7, 0x63, 0xff, 0xc7, 0x1d, 0x3b, 0x48, 0x65,
+  0x82, 0xec, 0x62, 0xa7, 0xc8, 0xe3, 0xbc, 0x22, 0x36, 0x75, 0x23, 0x99,
+  0xdb, 0xa7, 0x51, 0x73, 0x3e, 0xcc, 0x80, 0x78, 0x5f, 0x72, 0xd3, 0x17,
+  0xcd, 0x9f, 0xb1, 0xe9, 0xa9, 0x24, 0x69, 0xe6, 0x14, 0x51, 0x8b, 0x5b,
+  0x80, 0xae, 0x5b, 0xc9, 0x3d, 0x89, 0xa2, 0xb3, 0x82, 0xbb, 0x52, 0xda,
+  0x9b, 0x38, 0x69, 0xf4, 0xb5, 0xb8, 0x28, 0x8a, 0x41, 0x52, 0xae, 0x78,
+  0xb5, 0x24, 0x38, 0x6d, 0x6a, 0xbb, 0x37, 0x48, 0xb9, 0x9d, 0x1f, 0x67,
+  0x7a, 0x58, 0x01, 0xfa, 0x05, 0xbf, 0xd9, 0xe3, 0xe0, 0x99, 0xeb, 0x0e,
+  0x09, 0x65, 0x39, 0x8e, 0x47, 0x76, 0xea, 0x51, 0x63, 0x1e, 0x54, 0x51,
+  0x89, 0xdb, 0xd4, 0xb5, 0x8e, 0x1b, 0xf5, 0xdb, 0x50, 0xe1, 0x75, 0x7a,
+  0x1b, 0x07, 0xe0, 0x33, 0x6c, 0x94, 0x14, 0xcb, 0x23, 0x30, 0x15, 0x9d,
+  0xd2, 0xa0, 0xd5, 0x57, 0x22, 0xa9, 0x1b, 0xd6, 0x65, 0xf2, 0x85, 0x53,
+  0x5e, 0xef, 0xe7, 0x60, 0x86, 0xe4, 0x88, 0x95, 0x1b, 0xce, 0x29, 0x24,
+  0xa1, 0x24, 0x95, 0x44, 0x4b, 0x5a, 0xce, 0xa3, 0xa8, 0xc3, 0x6a, 0x30,
+  0xfc, 0x6b, 0x09, 0xab, 0xb9, 0xf9, 0x1a, 0xfe, 0xb3, 0x2e, 0x8a, 0xf1,
+  0x67, 0xc3, 0xc9, 0x08, 0xc9, 0xb0, 0xd4, 0x40, 0x8f, 0xf3, 0x54, 0x38,
+  0xf7, 0x2a, 0x5f, 0xac, 0x4d, 0xd9, 0xd6, 0x0d, 0xd8, 0xd8, 0xad, 0xfb,
+  0x76, 0x41, 0x1c, 0xdf, 0xf6, 0x73, 0xb1, 0x17, 0x00, 0xbf, 0x7e, 0x4c,
+  0x03, 0x5f, 0x11, 0x7f, 0x90, 0x72, 0x1f, 0x9f, 0xd3, 0x4f, 0xa4, 0x6b,
+  0x5b, 0xe0, 0xf8, 0x34, 0x8c, 0xfe, 0x74, 0x9c, 0x5e, 0xf2, 0x6e, 0xed,
+  0x9f, 0x1c, 0x7d, 0x73, 0x74, 0xe2, 0x5d, 0xed, 0x5f, 0xf5, 0xfb, 0xeb,
+  0xd7, 0x69, 0x39, 0x48, 0xcb, 0xa2, 0x5a, 0xc3, 0xe5, 0x61, 0xc4, 0x0e,
+  0x9f, 0x34, 0x09, 0xfe, 0xce, 0x8d, 0x77, 0x2b, 0xb8, 0x98, 0x99, 0xf8,
+  0xfd, 0x3d, 0x9f, 0x21, 0xd6, 0x8a, 0xf1, 0x27, 0xa5, 0x9b, 0x21, 0x95,
+  0xf7, 0x4b, 0xd5, 0x0a, 0xdd, 0xdf, 0xc3, 0x32, 0xa5, 0x88, 0x44, 0x12,
+  0xc0, 0xea, 0x26, 0xf0, 0xc4, 0x28, 0x7a, 0xc5, 0x4c, 0xca, 0x65, 0x94,
+  0x28, 0xc1, 0xed, 0x2a, 0xbc, 0x57, 0xa6, 0x84, 0x50, 0x16, 0xbd, 0x92,
+  0x8f, 0x12, 0x14, 0x0c, 0x92, 0x89, 0x11, 0xbe, 0xd9, 0x76, 0x3c, 0xfd,
+  0x3a, 0x3e, 0xe8, 0xc7, 0xaf, 0x8e, 0x4e, 0x8e, 0xbe, 0x3a, 0x38, 0x3f,
+  0x72, 0xfa, 0xec, 0x61, 0xad, 0x75, 0x50, 0xf9, 0x34, 0xa9, 0x8f, 0x5f,
+  0x0b, 0x65, 0x22, 0xd3, 0x99, 0x2c, 0xaa, 0x33, 0x6e, 0x64, 0x6c, 0x9b,
+  0x84, 0x24, 0x68, 0xae, 0xd6, 0x54, 0x20, 0x12, 0x1e, 0x0e, 0x4e, 0xf7,
+  0x78, 0x22, 0x53, 0xf5, 0x56, 0x90, 0x8c, 0x41, 0xed, 0xa9, 0xa2, 0x0f,
+  0x39, 0xd6, 0x91, 0x66, 0x06, 0xcb, 0x85, 0x57, 0xef, 0xba, 0x24, 0x2d,
+  0x69, 0x1b, 0x5d, 0xe1, 0x7f, 0x9d, 0xf8, 0x9d, 0xe7, 0xd8, 0x53, 0xdd,
+  0xd3, 0x32, 0x50, 0x07, 0xb7, 0xa7, 0xf3, 0x90, 0x37, 0x8f, 0x9a, 0x37,
+  0x86, 0xdd, 0x4a, 0x0a, 0xa0, 0x45, 0xfa, 0xdf, 0x2b, 0x7a, 0xb0, 0xd5,
+  0x04, 0xcc, 0x01, 0x4b, 0xca, 0x6d, 0x83, 0xb0, 0x00, 0x46, 0x25, 0xa9,
+  0x2d, 0xd5, 0xf0, 0x2a, 0x9d, 0x18, 0xf4, 0x65, 0x4c, 0xff, 0xa4, 0x1c,
+  0x43, 0x86, 0x6b, 0x11, 0x94, 0x58, 0x12, 0xa9, 0x83, 0x94, 0xdc, 0x2e,
+  0xd4, 0x87, 0xde, 0x4f, 0x2d, 0xab, 0xa9, 0x47, 0x52, 0x49, 0x15, 0x89,
+  0x94, 0xc1, 0x4d, 0x40, 0x43, 0x3d, 0x01, 0x1a, 0x30, 0x79, 0x99, 0x7e,
+  0x1e, 0x26, 0xe2, 0x9b, 0x4c, 0xbc, 0x7c, 0x6a, 0xdb, 0x62, 0xcc, 0x24,
+  0x0f, 0x70, 0x9e, 0x02, 0xfd, 0x88, 0x5b, 0x10, 0x8b, 0x69, 0x86, 0x33,
+  0x5c, 0xc6, 0xe7, 0xdb, 0xde, 0x57, 0x62, 0x72, 0x8b, 0xa5, 0x42, 0xd5,
+  0xfc, 0xa1, 0x7a, 0xc5, 0x5f, 0xdc, 0xeb, 0x8c, 0x77, 0x75, 0x39, 0xaf,
+  0xa4, 0x21, 0x43, 0xd7, 0x34, 0x3e, 0x93, 0x61, 0x58, 0x2c, 0x4a, 0xf7,
+  0x4f, 0x2d, 0x3c, 0x0d, 0xa7, 0xe6, 0x3a, 0x72, 0xb1, 0xd1, 0x23, 0x14,
+  0x5b, 0xc3, 0xe9, 0x5f, 0xfd, 0xf6, 0xb0, 0x06, 0xc0, 0x23, 0x4e, 0xa7,
+  0x5e, 0x3b, 0xad, 0xd5, 0xd7, 0xda, 0x76, 0xcf, 0x28, 0xf9, 0x0a, 0xf7,
+  0x21, 0xb9, 0x27, 0xea, 0x73, 0x3a, 0x3a, 0x7b, 0x7f, 0x4e, 0x1f, 0x39,
+  0xc1, 0xbf, 0x48, 0x7a, 0x5b, 0x15, 0xc2, 0x51, 0x97, 0x56, 0xbe, 0x98,
+  0x42, 0x9c, 0x52, 0x3a, 0x90, 0xc9, 0xb2, 0xd5, 0xaa, 0x17, 0x2e, 0xb0,
+  0x92, 0x36, 0x68, 0x72, 0xe4, 0x69, 0xd7, 0xbc, 0x5a, 0xda, 0x1a, 0xeb,
+  0x2d, 0x4d, 0x05, 0x04, 0xce, 0x41, 0xa0, 0x6e, 0x69, 0x16, 0x5c, 0x25,
+  0xa6, 0x09, 0x06, 0xa7, 0xf8, 0x4b, 0xd4, 0xfc, 0x85, 0x27, 0xe7, 0x5c,
+  0x2f, 0x16, 0xde, 0x1c, 0x87, 0xc4, 0xb7, 0xa2, 0x32, 0xbb, 0xbc, 0x82,
+  0x9d, 0x80, 0x79, 0xf4, 0xec, 0x3a, 0xf9, 0x13, 0x1c, 0x15, 0xa2, 0x2e,
+  0x13, 0x7e, 0x3a, 0x01, 0xea, 0xcf, 0xb6, 0xfa, 0x58, 0xeb, 0x3c, 0xb9,
+  0xb2, 0xcc, 0x64, 0xf6, 0x74, 0x05, 0xde, 0x96, 0x41, 0xcb, 0xa8, 0x00,
+  0x97, 0x13, 0x7c, 0xbc, 0x38, 0x3b, 0x15, 0xf8, 0x76, 0xb5, 0xf5, 0xf4,
+  0xbd, 0xf4, 0xab, 0x60, 0xcd, 0x5c, 0x3b, 0x4a, 0x26, 0xd4, 0x99, 0x85,
+  0xcc, 0xcb, 0x01, 0xab, 0x92, 0x62, 0x27, 0xe6, 0x81, 0x83, 0x0c, 0x84,
+  0x57, 0x21, 0xca, 0x0b, 0x95, 0x6d, 0x0b, 0x58, 0x53, 0xc8, 0x1b, 0x6d,
+  0x78, 0xe4, 0xf4, 0x0e, 0xad, 0xb5, 0x0c, 0x83, 0x87, 0x32, 0x15, 0x26,
+  0x0e, 0xf5, 0x0c, 0x17, 0x7e, 0x2b, 0x42, 0x5c, 0xc5, 0x22, 0xcb, 0x89,
+  0x92, 0x36, 0x58, 0x70, 0x5e, 0xc1, 0x8a, 0x09, 0x7e, 0x51, 0x0d, 0xbd,
+  0xd3, 0x9c, 0xe6, 0xf8, 0xec, 0xe6, 0x59, 0x33, 0x3d, 0x8a, 0x0d, 0x0b,
+  0x52, 0xc8, 0x80, 0xaa, 0xed, 0x52, 0x7d, 0x2e, 0x63, 0x86, 0x6f, 0xd3,
+  0x74, 0xd1, 0x05, 0x69, 0x32, 0x0c, 0x91, 0x77, 0xbc, 0xef, 0xbf, 0xa2,
+  0xc9, 0x91, 0x69, 0x41, 0x6f, 0x90, 0x24, 0x41, 0x0c, 0xdb, 0x4b, 0x6d,
+  0xfe, 0xce, 0xbc, 0x3c, 0x48, 0xe1, 0x8b, 0x19, 0xa2, 0xd8, 0x35, 0x82,
+  0x6d, 0x5e, 0x6a, 0x16, 0xf0, 0xdf, 0xf0, 0x4a, 0xed, 0x65, 0x7c, 0x91,
+  0x72, 0x90, 0xf0, 0x05, 0xc2, 0x14, 0xaa, 0xf9, 0x46, 0xe7, 0xbc, 0x8b,
+  0xf8, 0x8c, 0x14, 0x18, 0xcc, 0x2e, 0xe2, 0x4a, 0xeb, 0xa2, 0xf4, 0xd3,
+  0x69, 0x87, 0x06, 0xb3, 0x57, 0x1f, 0x4d, 0xaa, 0x9b, 0xa5, 0xc3, 0x51,
+  0xce, 0x16, 0x2c, 0x4e, 0xf1, 0xb1, 0x4f, 0x56, 0x37, 0x41, 0x79, 0xf1,
+  0x48, 0x81, 0xd1, 0xff, 0xc6, 0xa4, 0xc1, 0x8a, 0x60, 0xf0, 0xc0, 0xb6,
+  0x11, 0x90, 0x47, 0x88, 0xf4, 0x68, 0x49, 0x21, 0x02, 0x1e, 0xa4, 0x83,
+  0x1f, 0x88, 0x44, 0x69, 0x61, 0x84, 0x05, 0x7c, 0x5f, 0x24, 0xc4, 0xd9,
+  0x41, 0xff, 0x9b, 0x96, 0x6c, 0xf0, 0xa4, 0x01, 0xec, 0x89, 0x17, 0x26,
+  0xd5, 0x5e, 0x35, 0x38, 0x56, 0xf0, 0xd0, 0x54, 0x37, 0x8f, 0x39, 0x34,
+  0x30, 0x11, 0xef, 0xd0, 0x78, 0xa4, 0x5d, 0x74, 0x68, 0x02, 0xbb, 0x7d,
+  0xac, 0x6e, 0x0a, 0xe7, 0xd8, 0xe4, 0x74, 0x54, 0xa8, 0xec, 0x3a, 0x70,
+  0x5e, 0xe8, 0xb8, 0x60, 0xcc, 0x9f, 0xce, 0x87, 0x5f, 0x45, 0x42, 0xf3,
+  0x5c, 0xe6, 0xb4, 0xd0, 0x0b, 0xde, 0x61, 0xd1, 0xfd, 0x5c, 0xfa, 0xb4,
+  0xc8, 0x29, 0xf3, 0x0e, 0x0b, 0x59, 0x56, 0x67, 0x5d, 0xe7, 0x94, 0x3c,
+  0x9d, 0xf5, 0x61, 0xbf, 0x16, 0xb1, 0xbe, 0x8b, 0x77, 0x15, 0xa0, 0x37,
+  0xeb, 0x1d, 0x49, 0xe5, 0xa8, 0x19, 0x36, 0xd1, 0x28, 0x00, 0xa9, 0xd8,
+  0x35, 0xf8, 0x41, 0xe5, 0xd0, 0x8f, 0x6e, 0x19, 0x00, 0x2b, 0xb7, 0xe0,
+  0x98, 0x6c, 0x5f, 0xa9, 0x16, 0x1c, 0xf5, 0x48, 0x83, 0x20, 0xcf, 0x91,
+  0x8b, 0x99, 0x86, 0xec, 0x11, 0x86, 0x52, 0xd6, 0x49, 0x84, 0x60, 0xb2,
+  0xaa, 0x14, 0x53, 0xa9, 0x09, 0x61, 0x7b, 0x49, 0xfa, 0xfd, 0xfd, 0x41,
+  0x35, 0xb7, 0x22, 0x05, 0x9d, 0x14, 0x1c, 0xd4, 0x96, 0xe2, 0x2c, 0x47,
+  0xc3, 0x6f, 0x61, 0x86, 0x4a, 0x4d, 0xf9, 0x69, 0x8e, 0xc3, 0x02, 0x11,
+  0x56, 0xd0, 0x48, 0x91, 0xd0, 0x61, 0x42, 0x88, 0x3f, 0x12, 0x66, 0x23,
+  0x85, 0x22, 0x80, 0x33, 0xc4, 0xf9, 0x22, 0xaa, 0x26, 0xc3, 0x8d, 0x3b,
+  0xc0, 0x0a, 0x85, 0x88, 0x9c, 0x81, 0x33, 0x4e, 0xa7, 0xbc, 0xb5, 0x45,
+  0x17, 0x08, 0x2c, 0xc4, 0xfd, 0x3b, 0x52, 0x3f, 0x4b, 0xca, 0xa2, 0xde,
+  0x23, 0x80, 0x40, 0x4e, 0x48, 0x25, 0xe8, 0x5f, 0x91, 0x60, 0xef, 0x53,
+  0x58, 0x2e, 0x44, 0x93, 0xe5, 0x7b, 0xe4, 0xd6, 0x45, 0x23, 0x92, 0xfd,
+  0xac, 0xd5, 0xfd, 0x68, 0x94, 0x57, 0x31, 0xb9, 0x22, 0x2e, 0x10, 0x7b,
+  0x71, 0xdf, 0xfc, 0xd5, 0xb3, 0x6d, 0x5f, 0xbd, 0xeb, 0xab, 0xe4, 0xb6,
+  0x54, 0xaf, 0x52, 0xae, 0x4c, 0xe7, 0xbe, 0xde, 0xf0, 0x88, 0x81, 0x35,
+  0x01, 0x92, 0x95, 0xc5, 0xec, 0xf2, 0x4a, 0x86, 0xf4, 0x5b, 0x0e, 0xc2,
+  0x27, 0x3c, 0x30, 0x92, 0x84, 0x2b, 0xfd, 0xd3, 0x92, 0xa2, 0x26, 0xe8,
+  0xc1, 0x75, 0xe6, 0x16, 0xad, 0xb2, 0x91, 0x38, 0xaf, 0x3b, 0xbc, 0xe2,
+  0x8f, 0xe0, 0x34, 0xa4, 0x59, 0x1e, 0xe6, 0x49, 0x53, 0xc7, 0x39, 0x81,
+  0x18, 0x57, 0xd4, 0x51, 0x6a, 0xd6, 0xa5, 0xe3, 0x06, 0x42, 0x4e, 0xab,
+  0x82, 0x29, 0x2b, 0xe5, 0x31, 0x4b, 0x77, 0x81, 0x6f, 0x12, 0x35, 0xad,
+  0xaf, 0x96, 0xac, 0x44, 0xe7, 0x01, 0xa6, 0x37, 0x3b, 0x31, 0xce, 0x40,
+  0x7d, 0x15, 0xfa, 0xd3, 0x67, 0xf4, 0xd3, 0x9e, 0xb7, 0x7b, 0x1e, 0x1e,
+  0xc0, 0xdf, 0x67, 0x60, 0x89, 0x55, 0xb6, 0xa3, 0x0e, 0x56, 0xb4, 0xe4,
+  0x23, 0xec, 0x81, 0x4a, 0xca, 0x8a, 0xb6, 0xb4, 0xc4, 0x0e, 0x0b, 0x9c,
+  0x76, 0x87, 0x3b, 0xca, 0xa9, 0xe5, 0x91, 0x57, 0x37, 0x00, 0x8a, 0x6c,
+  0x33, 0x6b, 0x79, 0x7b, 0x3b, 0xc0, 0x49, 0x66, 0xce, 0xfb, 0x42, 0xbb,
+  0x30, 0x1f, 0x35, 0x14, 0x80, 0x01, 0x81, 0xc5, 0x15, 0xc0, 0x29, 0xd3,
+  0x58, 0xdf, 0xe2, 0x73, 0x37, 0x49, 0xae, 0x45, 0x81, 0xdb, 0x11, 0xe6,
+  0x8a, 0x3d, 0xcc, 0x4e, 0x64, 0xb6, 0x6e, 0x44, 0x80, 0x4e, 0x76, 0x9d,
+  0x0d, 0x4e, 0x14, 0xc5, 0xba, 0x36, 0x8d, 0x5e, 0x90, 0xd3, 0xf8, 0x3b,
+  0x21, 0x00, 0x0b, 0xd3, 0xa2, 0xdd, 0x71, 0xac, 0x6a, 0xdd, 0x38, 0xcd,
+  0xc4, 0xbc, 0xfb, 0xc7, 0xe6, 0xff, 0x36, 0xe9, 0xbd, 0xb9, 0xd1, 0xdb,
+  0xec, 0x6d, 0xf5, 0xb6, 0x9f, 0xc2, 0x68, 0xf6, 0x88, 0x2d, 0x66, 0x34,
+  0xfd, 0xd8, 0xbf, 0x06, 0xa3, 0x3d, 0xfb, 0x4d, 0x18, 0xed, 0xd9, 0xbf,
+  0x0c, 0xa3, 0x3d, 0xfb, 0x17, 0x63, 0x34, 0xa1, 0xf7, 0x56, 0xb2, 0xb1,
+  0xb3, 0xb7, 0x93, 0xee, 0x6c, 0xed, 0xed, 0xed, 0x3e, 0xdb, 0xfc, 0x35,
+  0xd9, 0x6d, 0xc7, 0x63, 0xb7, 0x67, 0xff, 0x2a, 0xec, 0x26, 0xc6, 0xb5,
+  0x61, 0xb6, 0xd4, 0x63, 0xb7, 0xbe, 0xe4, 0x37, 0x6a, 0x27, 0x03, 0x64,
+  0x0c, 0x7d, 0x8b, 0x83, 0xec, 0x52, 0xfe, 0xa6, 0x15, 0x34, 0x6e, 0x23,
+  0x98, 0x39, 0x2d, 0x79, 0x35, 0x1b, 0xdd, 0x0c, 0x7a, 0x7c, 0x16, 0x99,
+  0x09, 0x38, 0x5c, 0x63, 0xd1, 0xb0, 0xc9, 0x3c, 0x09, 0xc6, 0xdb, 0x60,
+  0x8d, 0x67, 0xb8, 0x7e, 0xae, 0xb6, 0xa9, 0x2c, 0x4e, 0x55, 0x08, 0xf2,
+  0x1a, 0x08, 0xb7, 0xb7, 0x8f, 0xe4, 0x8a, 0xf9, 0xf1, 0xcf, 0x83, 0xe0,
+  0x24, 0x69, 0x02, 0xb7, 0xb1, 0x9d, 0xd2, 0xbf, 0x02, 0x9b, 0x2a, 0xc5,
+  0x37, 0x5f, 0x6e, 0xf5, 0x36, 0x9f, 0xbd, 0x40, 0x48, 0xa9, 0xae, 0xfd,
+  0xfb, 0xd6, 0x63, 0xb8, 0xb5, 0x39, 0x90, 0xe5, 0x36, 0x93, 0x43, 0xe1,
+  0xb0, 0x5a, 0x88, 0xd3, 0xda, 0xf6, 0x89, 0xe1, 0xbb, 0x87, 0x19, 0xad,
+  0xb8, 0x5a, 0xd4, 0x47, 0x15, 0xb6, 0x68, 0x2d, 0xea, 0x93, 0xcb, 0xb3,
+  0x6a, 0x35, 0xc0, 0x44, 0xcb, 0xd4, 0x60, 0xa9, 0xbd, 0x2a, 0xde, 0x90,
+  0xf0, 0x8b, 0xd1, 0xdf, 0x17, 0x53, 0x07, 0xc2, 0xe5, 0x15, 0x98, 0xe6,
+  0x54, 0xe4, 0x27, 0xae, 0xfe, 0x09, 0xff, 0x56, 0xbc, 0xcb, 0x65, 0x93,
+  0xe8, 0x9f, 0xf9, 0xcb, 0x86, 0x63, 0x11, 0xea, 0x5c, 0xd8, 0x5a, 0xf3,
+  0x75, 0x97, 0x14, 0x42, 0x7e, 0xf4, 0xb7, 0x59, 0xb4, 0x19, 0xfd, 0xb7,
+  0x5e, 0x31, 0x8e, 0xbc, 0x0f, 0x16, 0xc5, 0xe7, 0xe1, 0x25, 0xb7, 0x5a,
+  0x9d, 0x34, 0x57, 0x06, 0x2b, 0x2d, 0xde, 0xac, 0x39, 0xb1, 0x0c, 0x4a,
+  0x10, 0xa0, 0xc8, 0xa7, 0xe7, 0x64, 0x24, 0xe8, 0x30, 0x03, 0xc7, 0x47,
+  0x70, 0xb2, 0x8a, 0x07, 0x51, 0xd8, 0xbe, 0x91, 0xae, 0xd1, 0x47, 0x5e,
+  0x75, 0x01, 0x1d, 0xf3, 0x2a, 0xc7, 0x53, 0x34, 0xd5, 0xb3, 0x6a, 0xc2,
+  0xfa, 0x35, 0x5a, 0x44, 0xaa, 0x53, 0xd3, 0xcc, 0x7c, 0x1c, 0x6f, 0x84,
+  0x9d, 0xc5, 0x4a, 0x16, 0xcd, 0x17, 0xa0, 0x63, 0xa4, 0x00, 0x3d, 0xb8,
+  0x73, 0xf0, 0xf7, 0xd2, 0xe2, 0x8c, 0x89, 0x6b, 0x0e, 0x13, 0x3d, 0x42,
+  0xbd, 0xb7, 0x71, 0x9b, 0xa5, 0xd0, 0x5d, 0xa2, 0x06, 0xdc, 0x2e, 0xa0,
+  0x28, 0xae, 0x67, 0xd3, 0x8a, 0x2a, 0x0b, 0x19, 0x5c, 0x97, 0x9c, 0xdd,
+  0x11, 0x75, 0x97, 0x7e, 0x53, 0xdc, 0xa6, 0x94, 0x1d, 0xe3, 0x27, 0x46,
+  0xcc, 0xc3, 0x18, 0xc4, 0xc9, 0x61, 0x44, 0xbb, 0x32, 0x2d, 0x30, 0xb2,
+  0xfc, 0x2a, 0xc5, 0x9a, 0x70, 0x36, 0xae, 0x15, 0xe1, 0x2e, 0x90, 0x72,
+  0x5a, 0x16, 0x94, 0x40, 0xa3, 0x22, 0x19, 0x56, 0x71, 0x93, 0x25, 0x6d,
+  0xe6, 0x92, 0x58, 0x66, 0xf3, 0x90, 0xfd, 0xe1, 0xf2, 0xf3, 0x57, 0xe3,
+  0xf7, 0x67, 0x5b, 0x0d, 0x7e, 0x7f, 0x45, 0x5e, 0x91, 0xd9, 0x64, 0x2a,
+  0xc0, 0x75, 0x0f, 0x60, 0x68, 0x91, 0xff, 0x7b, 0x2d, 0xfa, 0x96, 0x4a,
+  0xf0, 0x39, 0xcb, 0x41, 0x90, 0x59, 0xd4, 0x25, 0x6e, 0x90, 0x28, 0x34,
+  0x85, 0x68, 0x4e, 0xdb, 0x03, 0xc6, 0x76, 0x60, 0xbc, 0x14, 0x7d, 0x45,
+  0x5a, 0xec, 0x72, 0x17, 0x64, 0xd7, 0xe7, 0xd8, 0x8a, 0x13, 0xcd, 0xaf,
+  0x3a, 0x47, 0x84, 0x22, 0x42, 0x71, 0x0c, 0x02, 0xd7, 0x33, 0x2c, 0x3a,
+  0x7b, 0x7a, 0x80, 0x18, 0x5c, 0xc6, 0x7c, 0x95, 0xba, 0x68, 0x71, 0xa6,
+  0xb1, 0x8b, 0x94, 0x93, 0x10, 0xec, 0x44, 0x2e, 0xd5, 0x85, 0x5e, 0x3b,
+  0x77, 0x42, 0x9e, 0x94, 0xd9, 0x77, 0xa4, 0x99, 0xc6, 0x4c, 0xfa, 0x5a,
+  0x25, 0x48, 0x15, 0x42, 0xaf, 0xfe, 0xc3, 0x99, 0xc7, 0xd9, 0x5e, 0xee,
+  0xa8, 0xf6, 0x50, 0x39, 0xa2, 0xa7, 0x1c, 0x3a, 0x00, 0x00, 0xae, 0xb0,
+  0x4c, 0x2f, 0x39, 0xcf, 0x71, 0x51, 0xc5, 0x68, 0xdf, 0x76, 0x62, 0xe5,
+  0xde, 0x79, 0xa6, 0x59, 0x00, 0x4b, 0x89, 0x23, 0x3c, 0x97, 0x53, 0x10,
+  0x28, 0x5f, 0x25, 0x48, 0x2d, 0x12, 0x79, 0xaf, 0x92, 0x74, 0xe2, 0x85,
+  0xc8, 0xaa, 0x02, 0xe3, 0xd1, 0xda, 0x58, 0x85, 0xff, 0xe5, 0xc4, 0x0c,
+  0xc9, 0xe3, 0xc1, 0x24, 0x8f, 0x40, 0x62, 0x8d, 0x40, 0xc9, 0x17, 0x54,
+  0x1b, 0x94, 0x64, 0x7e, 0xed, 0xa3, 0x53, 0xa3, 0xb7, 0x2c, 0x41, 0xcd,
+  0xb2, 0xd7, 0xf9, 0x43, 0xeb, 0x84, 0x51, 0xbe, 0x24, 0x72, 0x24, 0xbd,
+  0x19, 0xb7, 0xf3, 0x18, 0x64, 0xca, 0xfb, 0xc1, 0x13, 0xc8, 0xf4, 0x4c,
+  0xc7, 0x8a, 0xe4, 0xaa, 0x95, 0x88, 0xc3, 0xf2, 0x7e, 0x8a, 0xee, 0x69,
+  0x7e, 0x57, 0xee, 0x1c, 0x5c, 0x35, 0xf7, 0x8b, 0x5a, 0x8c, 0x13, 0xf7,
+  0xa1, 0x72, 0x1a, 0x4b, 0x92, 0x32, 0x8b, 0xd1, 0x0d, 0xec, 0x10, 0x07,
+  0x16, 0x8f, 0x2a, 0xb7, 0xa8, 0x40, 0x8d, 0xd8, 0x6f, 0x66, 0xea, 0xdb,
+  0xdb, 0xa1, 0x19, 0x1a, 0xa1, 0xea, 0x39, 0xf9, 0xd6, 0x92, 0xdc, 0x00,
+  0xf7, 0x26, 0xc6, 0x81, 0x15, 0x9c, 0x0b, 0xa3, 0xeb, 0x6b, 0x4e, 0x2e,
+  0x9e, 0xbc, 0xe8, 0x69, 0xc5, 0xa4, 0xf3, 0xda, 0xfa, 0x4e, 0xc7, 0x77,
+  0xb7, 0xf4, 0x7e, 0x09, 0x1f, 0x8c, 0x93, 0x1b, 0x20, 0xca, 0x62, 0x87,
+  0x67, 0x5a, 0x27, 0x97, 0xb1, 0xe0, 0xaf, 0xce, 0x61, 0x6b, 0xa7, 0x52,
+  0x47, 0x4e, 0x30, 0x83, 0xc2, 0x51, 0x59, 0x85, 0x09, 0xca, 0x91, 0xb8,
+  0xd4, 0x04, 0x51, 0xc1, 0xc4, 0x45, 0x69, 0xe8, 0x05, 0xf9, 0xa9, 0x66,
+  0xf7, 0xe8, 0x3c, 0xb9, 0x64, 0x07, 0xb1, 0xc9, 0x96, 0x76, 0x60, 0xff,
+  0xb0, 0xf1, 0x44, 0x9a, 0x73, 0x43, 0x12, 0x58, 0x14, 0x1c, 0xe2, 0x09,
+  0x08, 0x91, 0xf8, 0x1d, 0x50, 0x32, 0xf6, 0x90, 0xbb, 0xd1, 0xe5, 0x2e,
+  0xa7, 0xdd, 0x26, 0x6e, 0x0a, 0x50, 0x14, 0x7e, 0xa6, 0x17, 0x04, 0x5d,
+  0x1e, 0x16, 0xa5, 0x40, 0x1f, 0x63, 0x52, 0x33, 0x88, 0x1f, 0xca, 0xe4,
+  0xae, 0x0c, 0xc6, 0x64, 0x33, 0x11, 0x96, 0x66, 0xa5, 0x0d, 0x62, 0x3c,
+  0x34, 0x04, 0x82, 0x50, 0x12, 0x63, 0x59, 0x3a, 0x95, 0x68, 0x26, 0xc1,
+  0x28, 0xad, 0x32, 0x9c, 0x08, 0xcf, 0x04, 0x6e, 0xa6, 0xdc, 0xe0, 0xee,
+  0x72, 0x56, 0xb8, 0x17, 0xd9, 0x85, 0x8d, 0xa8, 0x6c, 0x03, 0x5a, 0x7a,
+  0x34, 0xb8, 0x0a, 0xe4, 0x63, 0x09, 0xd6, 0xca, 0x35, 0x21, 0x9b, 0x59,
+  0x51, 0x28, 0x91, 0x20, 0x33, 0xd1, 0xab, 0x4f, 0xff, 0xa4, 0x20, 0x16,
+  0x92, 0x5c, 0x32, 0xd1, 0x02, 0xca, 0x19, 0x5d, 0x03, 0xa6, 0x4d, 0x6d,
+  0x2e, 0x89, 0x9e, 0x0e, 0x52, 0x42, 0xa1, 0x30, 0xbd, 0x91, 0xe9, 0x61,
+  0x2a, 0x51, 0x9b, 0xc4, 0xaf, 0x31, 0xa4, 0x8f, 0x51, 0x68, 0xb7, 0x9a,
+  0x0d, 0xb8, 0x5f, 0x8d, 0x81, 0x99, 0x5e, 0x9a, 0x9d, 0x5d, 0x16, 0xc5,
+  0x7f, 0x3c, 0x56, 0x9e, 0xbb, 0x6a, 0xc0, 0x8b, 0xa6, 0xda, 0x6b, 0x29,
+  0xb5, 0x88, 0xe7, 0x1b, 0x4c, 0x8f, 0x4f, 0x57, 0x9c, 0x8a, 0x0c, 0x9c,
+  0x4e, 0x0b, 0x6c, 0xdf, 0xf9, 0x72, 0xcb, 0x1f, 0xe4, 0x41, 0x6a, 0xd0,
+  0x89, 0xa1, 0x5e, 0x8b, 0xc8, 0xfa, 0x63, 0x32, 0x92, 0x99, 0x71, 0x29,
+  0x1f, 0x94, 0x9b, 0x51, 0x4a, 0x2e, 0xa0, 0xad, 0x13, 0x9d, 0xbb, 0x57,
+  0x73, 0xc0, 0xd8, 0xf4, 0x5b, 0x94, 0x15, 0xd3, 0x28, 0x7e, 0xec, 0x36,
+  0xd5, 0x05, 0x82, 0xf2, 0x99, 0x83, 0xb8, 0xf2, 0x98, 0x1d, 0x21, 0xea,
+  0xd1, 0x39, 0xfb, 0x95, 0xb6, 0x84, 0xea, 0x00, 0x36, 0x37, 0x36, 0x2c,
+  0x70, 0xff, 0x1c, 0xb4, 0x7e, 0xd9, 0x1d, 0x05, 0xed, 0x27, 0x31, 0x9d,
+  0xe5, 0x06, 0xb1, 0xdf, 0xa8, 0xf5, 0x16, 0xaf, 0x9f, 0x60, 0x4e, 0x93,
+  0x8c, 0x05, 0x53, 0x3b, 0xfa, 0x82, 0x9f, 0x34, 0xd8, 0xf9, 0x46, 0x21,
+  0xba, 0x35, 0x18, 0x29, 0x29, 0x61, 0xf7, 0xa3, 0x96, 0x7d, 0x44, 0x53,
+  0xac, 0xf6, 0x9a, 0xef, 0xb4, 0xc1, 0xb0, 0x59, 0x16, 0xd1, 0xf6, 0xe1,
+  0x8b, 0x86, 0xed, 0xa3, 0xe8, 0xcb, 0x7b, 0x1b, 0xce, 0x32, 0x31, 0x61,
+  0x9a, 0x17, 0xea, 0x3c, 0x3c, 0xff, 0xde, 0x02, 0xb4, 0x92, 0x30, 0x20,
+  0xff, 0xbf, 0x39, 0x78, 0x2e, 0xb0, 0x1f, 0x60, 0x7b, 0xe0, 0x90, 0x8c,
+  0xe9, 0x1d, 0xe8, 0x11, 0xee, 0x76, 0x0a, 0x30, 0x2d, 0xd6, 0xec, 0xba,
+  0xaf, 0xd0, 0x7f, 0x90, 0x12, 0x08, 0x26, 0x6b, 0xa6, 0x4b, 0x33, 0x87,
+  0xb7, 0x8f, 0x5b, 0xbd, 0x5d, 0x03, 0xc8, 0xb1, 0x64, 0xff, 0xce, 0x26,
+  0x5c, 0x7f, 0xb3, 0x0e, 0xf2, 0x79, 0x93, 0x7f, 0x10, 0xc1, 0x33, 0x26,
+  0x9c, 0xce, 0xb6, 0xbc, 0x47, 0x68, 0x4f, 0x94, 0x6b, 0x14, 0x96, 0x33,
+  0xa8, 0x32, 0x25, 0x77, 0xca, 0x94, 0xda, 0x13, 0x35, 0xfa, 0xb8, 0xb7,
+  0xdf, 0x82, 0x06, 0x43, 0x0e, 0x62, 0xce, 0xa8, 0x70, 0x10, 0xbf, 0x0c,
+  0xfc, 0x5e, 0x28, 0x78, 0xea, 0xa3, 0x3f, 0x73, 0xb1, 0x6e, 0x6d, 0xc2,
+  0xfc, 0x0c, 0x4a, 0x4a, 0xc9, 0xea, 0xe4, 0xcb, 0xe2, 0xdb, 0x10, 0x8c,
+  0xda, 0x2e, 0xf1, 0x06, 0x1c, 0x64, 0xac, 0xcd, 0x66, 0x0e, 0x0a, 0x3a,
+  0xe8, 0xb8, 0x39, 0x8b, 0x42, 0x9f, 0x11, 0x1e, 0x01, 0x2f, 0xa6, 0xb2,
+  0x6d, 0x65, 0x08, 0x3b, 0x09, 0x7f, 0x01, 0xe3, 0x56, 0xea, 0x5f, 0xcb,
+  0x43, 0xb9, 0xd5, 0xa4, 0x88, 0xc3, 0x53, 0x2b, 0x88, 0x55, 0x49, 0x29,
+  0x2c, 0x3c, 0xb2, 0xe9, 0xe2, 0xc2, 0xe5, 0x9f, 0x84, 0x8e, 0x1a, 0x71,
+  0xae, 0x3f, 0x07, 0xe2, 0x7c, 0x69, 0x45, 0xa9, 0xcd, 0xd8, 0x13, 0x2a,
+  0xa2, 0xcd, 0x21, 0xa4, 0xd5, 0x59, 0xe9, 0x24, 0x34, 0x77, 0xae, 0x32,
+  0xd8, 0xd5, 0xbc, 0x43, 0xd7, 0xbe, 0xbd, 0x2d, 0xe4, 0xbb, 0xde, 0x62,
+  0x67, 0x63, 0x27, 0xb7, 0xe2, 0x93, 0x20, 0x24, 0x6b, 0x23, 0x29, 0xc2,
+  0x87, 0x2f, 0x14, 0x19, 0x2b, 0x45, 0x50, 0xbc, 0x86, 0x22, 0x8f, 0xe6,
+  0x16, 0x56, 0x3b, 0x2e, 0x01, 0x76, 0xf3, 0xe2, 0x12, 0xd8, 0x7d, 0x31,
+  0x4a, 0xa9, 0x3c, 0x2a, 0x37, 0xb0, 0x86, 0xc9, 0x04, 0xa3, 0x86, 0xf8,
+  0x2f, 0xa4, 0x71, 0x08, 0x9d, 0x0e, 0x37, 0x41, 0x70, 0xaf, 0x03, 0x9d,
+  0x0b, 0xa5, 0xb6, 0x2c, 0xb9, 0x27, 0xd4, 0x2c, 0xfb, 0x61, 0xe2, 0x6e,
+  0xaf, 0x8f, 0x0c, 0x50, 0xf1, 0xb2, 0x20, 0x2f, 0xa0, 0xf0, 0x31, 0x92,
+  0x70, 0x58, 0x66, 0xd3, 0x9a, 0x93, 0xc9, 0xe7, 0x45, 0x7c, 0x5b, 0xb1,
+  0xce, 0xcb, 0x71, 0x31, 0x48, 0xc6, 0x82, 0x01, 0x28, 0xa5, 0x26, 0x9a,
+  0xb2, 0xd0, 0x68, 0x8c, 0x88, 0xe2, 0x13, 0xd9, 0x33, 0xd0, 0xbe, 0x1b,
+  0x56, 0x1c, 0xef, 0x75, 0x29, 0x6f, 0xef, 0x6e, 0x31, 0x62, 0x9e, 0xf9,
+  0x04, 0xf7, 0x10, 0x8a, 0x2f, 0xba, 0x72, 0x7a, 0x15, 0x52, 0x93, 0x2a,
+  0x75, 0x2a, 0xe7, 0x48, 0x79, 0xbe, 0x17, 0x42, 0xeb, 0x8d, 0x46, 0x33,
+  0x56, 0x74, 0xec, 0x15, 0xb7, 0x22, 0x49, 0xa8, 0xe2, 0x2a, 0xa4, 0xf2,
+  0x11, 0xd3, 0xf9, 0x9a, 0x73, 0x3d, 0x43, 0x50, 0x8a, 0xd8, 0x86, 0x50,
+  0x9c, 0x42, 0xdd, 0xe8, 0x8a, 0x7d, 0x34, 0x38, 0xc3, 0xd4, 0x99, 0x9c,
+  0xd6, 0x7f, 0x3a, 0xb4, 0xca, 0x2a, 0x3e, 0x57, 0xb1, 0x9f, 0xe6, 0x64,
+  0xb4, 0x45, 0xde, 0x93, 0x05, 0x94, 0x79, 0x40, 0x9a, 0x5a, 0xa9, 0x16,
+  0x12, 0x9d, 0xe6, 0x67, 0xb0, 0x02, 0x75, 0x90, 0x2c, 0xea, 0x05, 0x4b,
+  0xce, 0x90, 0xa6, 0xc4, 0x44, 0x5d, 0x35, 0x1e, 0x14, 0xa3, 0xfb, 0x39,
+  0x2a, 0xd0, 0x7b, 0x3e, 0x2b, 0x06, 0x0b, 0x99, 0x3c, 0x52, 0xe4, 0x3b,
+  0x10, 0xe9, 0x42, 0x38, 0xf0, 0x16, 0x0b, 0x57, 0x2f, 0x12, 0xbf, 0x9f,
+  0x2a, 0x69, 0x1c, 0x88, 0x84, 0x0e, 0xa3, 0x5c, 0x92, 0xe2, 0x51, 0xae,
+  0xf5, 0xa2, 0xe3, 0x5c, 0xb2, 0xa2, 0xa4, 0x08, 0x58, 0xb2, 0x1c, 0xf0,
+  0x68, 0xb2, 0x07, 0x86, 0xbf, 0x16, 0x60, 0x80, 0x4a, 0x52, 0xa7, 0xa9,
+  0x73, 0x2a, 0x62, 0x45, 0x0e, 0x2d, 0xd6, 0xac, 0xad, 0xa8, 0xe0, 0xca,
+  0x31, 0xfd, 0x25, 0x71, 0x86, 0x9f, 0x31, 0x01, 0x97, 0x8d, 0x44, 0xf4,
+  0x19, 0x9d, 0x91, 0xae, 0x1f, 0xc5, 0x4e, 0xc0, 0x25, 0x72, 0xe7, 0x68,
+  0x12, 0x9e, 0x6b, 0x26, 0xb3, 0x95, 0x13, 0xce, 0x03, 0xde, 0x99, 0xaa,
+  0x26, 0xe9, 0xde, 0x50, 0x3f, 0x04, 0xdd, 0x8d, 0x4e, 0x25, 0xab, 0xe4,
+  0x89, 0x41, 0xcf, 0x20, 0xff, 0x31, 0x7d, 0x93, 0x8a, 0x63, 0x42, 0x12,
+  0x54, 0xa8, 0xbf, 0xb5, 0x15, 0x3e, 0x5a, 0x9a, 0x71, 0x55, 0x63, 0x86,
+  0x06, 0xe5, 0x1e, 0x59, 0xb5, 0x1d, 0x79, 0x58, 0x99, 0x58, 0x4e, 0x98,
+  0x58, 0x70, 0x34, 0xb9, 0xd0, 0xd1, 0x32, 0xf6, 0x1b, 0xd5, 0x4c, 0x65,
+  0x25, 0x10, 0x0f, 0x08, 0x47, 0x2d, 0x27, 0x35, 0xf3, 0x0c, 0x2f, 0x76,
+  0x58, 0x48, 0xab, 0x52, 0xee, 0x49, 0xec, 0x6d, 0x58, 0x70, 0x39, 0xed,
+  0xc0, 0x1c, 0xcd, 0xde, 0x02, 0x07, 0xb7, 0x79, 0x68, 0x0e, 0x7b, 0x93,
+  0x72, 0x00, 0x72, 0x72, 0x0c, 0x93, 0x87, 0x33, 0xb6, 0x9a, 0xdb, 0x9d,
+  0x22, 0x63, 0x7e, 0xcd, 0x63, 0xf8, 0x60, 0xb9, 0x07, 0xd0, 0x1f, 0x33,
+  0x75, 0xb0, 0xad, 0x71, 0xc1, 0x3e, 0x09, 0xc9, 0x98, 0x53, 0x69, 0x9c,
+  0xd6, 0x43, 0x96, 0xa6, 0x94, 0xe8, 0x3a, 0x4a, 0x93, 0xb1, 0x54, 0x8a,
+  0xe1, 0xdc, 0x7c, 0x88, 0x16, 0x56, 0x0c, 0x2a, 0xff, 0x78, 0x70, 0xc9,
+  0x64, 0xde, 0xc0, 0x9d, 0xf6, 0x0f, 0x83, 0x07, 0x20, 0xb3, 0xc4, 0xd1,
+  0xe0, 0xb0, 0xb2, 0x26, 0xb8, 0xd0, 0x79, 0x08, 0xe1, 0x2a, 0x3b, 0xc7,
+  0xc3, 0x9c, 0x0f, 0x39, 0x1e, 0xc4, 0x91, 0x74, 0x38, 0xe8, 0xda, 0x95,
+  0x04, 0x7e, 0xde, 0x72, 0x34, 0x40, 0x83, 0xcd, 0xd8, 0xa4, 0xa3, 0xa4,
+  0x40, 0xd1, 0xca, 0x0d, 0xbd, 0x98, 0xe9, 0x27, 0x29, 0xb0, 0xe1, 0x48,
+  0x05, 0x33, 0xb1, 0x52, 0x95, 0x5c, 0xa4, 0x6a, 0xc3, 0x8a, 0xc2, 0x53,
+  0x0c, 0x81, 0x72, 0xe4, 0xef, 0x67, 0x49, 0x85, 0x0e, 0x19, 0xcf, 0xa2,
+  0x62, 0x5d, 0x03, 0x75, 0x0b, 0xa3, 0x08, 0xa3, 0xc4, 0x12, 0x25, 0xa5,
+  0x1a, 0x67, 0x53, 0x4d, 0x22, 0xea, 0x46, 0xa9, 0x94, 0x4d, 0x61, 0x83,
+  0x51, 0xda, 0x8d, 0x59, 0xec, 0x6b, 0x50, 0xa6, 0xf4, 0x41, 0x1b, 0x52,
+  0x8e, 0xd1, 0x3f, 0xba, 0xda, 0x1a, 0x7d, 0x67, 0x63, 0x93, 0x66, 0xbb,
+  0xb3, 0xf1, 0x7c, 0xed, 0x29, 0x47, 0x67, 0x49, 0x75, 0xba, 0x79, 0xda,
+  0x9a, 0xca, 0xf3, 0xb8, 0x4a, 0x63, 0x2a, 0xf5, 0x7b, 0x04, 0x04, 0x1b,
+  0xf9, 0xdb, 0xf0, 0x0d, 0x29, 0x0e, 0x54, 0xc4, 0x35, 0x72, 0x07, 0xc0,
+  0xf3, 0x11, 0xc1, 0x61, 0x57, 0x57, 0xd8, 0x06, 0xcd, 0x53, 0xc6, 0xf1,
+  0x35, 0x79, 0x8f, 0x6b, 0x6c, 0xf0, 0x66, 0xe0, 0xad, 0x49, 0xe8, 0x65,
+  0x86, 0xf5, 0x12, 0xca, 0xd3, 0x73, 0xc6, 0x19, 0xe4, 0xd5, 0xa8, 0xdb,
+  0x26, 0x4b, 0x0c, 0x13, 0xc3, 0x39, 0xb2, 0x14, 0x3f, 0xb9, 0x37, 0xbe,
+  0x20, 0x55, 0x0d, 0xa2, 0xd7, 0x59, 0x9e, 0x55, 0x57, 0x68, 0x5b, 0x4f,
+  0x30, 0x2d, 0xf4, 0x32, 0xf5, 0xbb, 0xf8, 0x82, 0xd6, 0x20, 0x52, 0x2d,
+  0x89, 0x4a, 0xea, 0x52, 0x8d, 0xe5, 0x76, 0xbc, 0xd1, 0x82, 0x6c, 0xc2,
+  0xbf, 0xe4, 0xae, 0x40, 0x76, 0x99, 0x21, 0x06, 0x25, 0x13, 0x7b, 0x56,
+  0x96, 0x2c, 0x5b, 0xb8, 0x74, 0x09, 0xb7, 0x09, 0x8f, 0x9b, 0x45, 0x90,
+  0x78, 0xd7, 0xef, 0x13, 0x13, 0xf4, 0x39, 0x20, 0x73, 0x8e, 0x6a, 0x8f,
+  0xb7, 0x4e, 0x8c, 0xdb, 0xae, 0x22, 0x37, 0x9d, 0xf6, 0x41, 0xc8, 0xd1,
+  0x1d, 0x8a, 0x1e, 0x84, 0x92, 0x0a, 0x27, 0xe1, 0x67, 0xdf, 0x61, 0xd6,
+  0xcd, 0x4b, 0xf3, 0xe3, 0x35, 0xc2, 0x03, 0xc6, 0x92, 0xee, 0xe5, 0xd9,
+  0xca, 0x70, 0xc2, 0x92, 0x06, 0xfd, 0xce, 0x56, 0xcb, 0x20, 0xc3, 0x7a,
+  0x68, 0xc9, 0x76, 0x23, 0x07, 0xef, 0x67, 0xfc, 0x8f, 0x70, 0xa4, 0x85,
+  0xa0, 0x1f, 0x8f, 0xdf, 0x1e, 0x60, 0xdf, 0x12, 0x0b, 0x4a, 0xe3, 0x54,
+  0xcd, 0x29, 0x00, 0x96, 0x9b, 0x6a, 0x41, 0x06, 0x70, 0xb0, 0x55, 0x16,
+  0x63, 0x4f, 0xda, 0xc0, 0xdc, 0xa8, 0x89, 0xa3, 0x47, 0x26, 0xdc, 0x38,
+  0xab, 0x31, 0x00, 0x31, 0xbe, 0xef, 0x45, 0x27, 0x60, 0x17, 0xe0, 0x5b,
+  0x2b, 0x5f, 0xac, 0x04, 0xd0, 0xb2, 0x56, 0xf6, 0x57, 0x9c, 0x36, 0xd8,
+  0xc6, 0x49, 0x16, 0xad, 0x7c, 0x8a, 0x85, 0xe1, 0x88, 0x7e, 0xcf, 0xdf,
+  0x94, 0x0d, 0xe5, 0x1a, 0x67, 0xc9, 0x51, 0x9e, 0x03, 0x54, 0x24, 0xcd,
+  0xb6, 0x9a, 0xd5, 0x48, 0x8c, 0x4c, 0x9d, 0x12, 0x76, 0x76, 0x63, 0xed,
+  0x6a, 0xc1, 0xad, 0x78, 0x68, 0x5a, 0xf9, 0xbd, 0x78, 0x9a, 0x33, 0xaa,
+  0xa6, 0xb0, 0xbe, 0x4b, 0x9e, 0x11, 0x4f, 0x85, 0xfa, 0x8b, 0x25, 0xc3,
+  0x21, 0x61, 0x06, 0xb2, 0x9b, 0x09, 0x7e, 0x7d, 0x79, 0x19, 0x2c, 0x99,
+  0x02, 0x12, 0x20, 0x1b, 0xe1, 0x9a, 0x2f, 0x40, 0x49, 0x23, 0x23, 0x03,
+  0x95, 0xfb, 0xf9, 0x05, 0xec, 0x0f, 0x71, 0x94, 0xc3, 0x07, 0x9d, 0x11,
+  0xf5, 0x43, 0x5d, 0x4a, 0x6c, 0x05, 0x3e, 0xec, 0x90, 0x66, 0xdf, 0xc5,
+  0x5a, 0x99, 0x13, 0xc4, 0x23, 0xde, 0x12, 0xe6, 0x42, 0xef, 0x2f, 0xfd,
+  0xd4, 0x44, 0xf0, 0x2e, 0x12, 0x60, 0xb7, 0x7b, 0xc9, 0x32, 0x1f, 0x23,
+  0x3a, 0x86, 0xb8, 0x7d, 0x3c, 0xb9, 0x3e, 0xa6, 0x98, 0x9b, 0x00, 0x13,
+  0xc4, 0xb0, 0x61, 0xbc, 0x39, 0xb9, 0x68, 0x55, 0x82, 0x64, 0x40, 0x2e,
+  0x14, 0x81, 0x28, 0x18, 0xa9, 0x8f, 0x94, 0x40, 0x0a, 0xda, 0x01, 0x35,
+  0x81, 0x2c, 0x10, 0x61, 0x21, 0x66, 0x8f, 0xcd, 0x68, 0x25, 0xd0, 0x05,
+  0x92, 0x6b, 0xd6, 0xb1, 0xed, 0x22, 0x90, 0xb5, 0x43, 0x08, 0xe4, 0x8b,
+  0x80, 0x73, 0xbb, 0x4e, 0x14, 0x67, 0x64, 0x88, 0x36, 0xb4, 0xe5, 0xd6,
+  0xf6, 0x8b, 0x17, 0x41, 0x8f, 0x38, 0x43, 0xaf, 0x02, 0x63, 0x23, 0x99,
+  0x3c, 0x2c, 0x5f, 0x36, 0x75, 0x88, 0x6b, 0x2b, 0x75, 0x05, 0x63, 0xbb,
+  0x93, 0x04, 0xbf, 0xea, 0x47, 0x5a, 0x28, 0x67, 0x76, 0x82, 0x17, 0x94,
+  0x08, 0x5a, 0x32, 0xd3, 0x50, 0xb0, 0x01, 0x15, 0xe6, 0xc8, 0xca, 0x54,
+  0xaa, 0x08, 0x05, 0x45, 0x56, 0xfa, 0x69, 0x09, 0xc0, 0x00, 0xa3, 0x12,
+  0x83, 0x12, 0x45, 0xf0, 0x05, 0x5c, 0x47, 0x42, 0xcc, 0x3a, 0x07, 0xc3,
+  0x6d, 0x25, 0xd2, 0xb4, 0xdd, 0x41, 0x6a, 0x20, 0xd1, 0xf1, 0x78, 0x65,
+  0x77, 0xad, 0x3e, 0x08, 0x8c, 0xe0, 0x9a, 0x23, 0xbe, 0x51, 0x76, 0x89,
+  0x85, 0x8a, 0xed, 0x13, 0x4b, 0x48, 0x89, 0x97, 0x69, 0xed, 0x63, 0xf2,
+  0x38, 0x65, 0xdd, 0x0b, 0x06, 0x0f, 0x1c, 0x31, 0x41, 0x14, 0xda, 0xe7,
+  0xcc, 0x85, 0x51, 0x76, 0xa1, 0xa7, 0x5e, 0x3b, 0xd9, 0x7f, 0xc1, 0xe6,
+  0xc6, 0xbe, 0x69, 0x59, 0x96, 0xab, 0xd8, 0xfb, 0x22, 0xd8, 0x9f, 0x07,
+  0xfd, 0xc4, 0x1c, 0x4f, 0xa0, 0x16, 0x31, 0x75, 0x0d, 0x36, 0xba, 0xbd,
+  0x60, 0x08, 0x21, 0xc0, 0xf4, 0xd6, 0x10, 0xfa, 0x92, 0xb1, 0x3d, 0x0e,
+  0x35, 0x06, 0xdc, 0x37, 0xf1, 0x1d, 0xac, 0x97, 0x14, 0x84, 0x06, 0x9c,
+  0x4f, 0x88, 0x12, 0x95, 0xd8, 0x0a, 0x28, 0x76, 0xe0, 0x69, 0xcf, 0x7f,
+  0x82, 0xef, 0x3a, 0x74, 0xf2, 0xf7, 0xde, 0x26, 0x71, 0xdb, 0x66, 0x10,
+  0x4c, 0x63, 0xdb, 0x53, 0xc2, 0x4d, 0x55, 0x4b, 0x4c, 0x88, 0x28, 0x04,
+  0x4d, 0x1d, 0xe3, 0x3a, 0x2d, 0xfc, 0x22, 0x71, 0xd6, 0x65, 0x91, 0xf2,
+  0x2c, 0x09, 0x09, 0x9f, 0x49, 0xbb, 0x4f, 0x61, 0xee, 0xba, 0x9c, 0x21,
+  0x5a, 0x2d, 0xbb, 0xf7, 0xe8, 0x4b, 0xbe, 0x5a, 0x8f, 0x37, 0x45, 0xb7,
+  0xb9, 0xe2, 0x0c, 0xad, 0x20, 0xda, 0x33, 0x22, 0xb1, 0x34, 0xb3, 0x62,
+  0x5f, 0x91, 0x34, 0x58, 0x63, 0x6d, 0x3c, 0xd0, 0x01, 0x93, 0x7c, 0x67,
+  0xe8, 0x16, 0xae, 0xb2, 0x9f, 0x59, 0x53, 0x95, 0x72, 0x68, 0x0d, 0x18,
+  0x92, 0x2b, 0x16, 0x2e, 0x6e, 0x10, 0x0b, 0xaf, 0x80, 0xa3, 0xb8, 0x5e,
+  0x80, 0xf8, 0xcd, 0x13, 0xfe, 0x2e, 0xc6, 0x01, 0xdf, 0x71, 0xa8, 0xda,
+  0x96, 0xe9, 0xe5, 0x0c, 0x6f, 0x4f, 0x22, 0xd3, 0xaa, 0x76, 0x2b, 0xd4,
+  0x27, 0xa6, 0xd9, 0x54, 0x6b, 0x01, 0xbc, 0x0a, 0x26, 0x78, 0x6b, 0x8d,
+  0x96, 0x9c, 0x03, 0xb5, 0xea, 0x59, 0xce, 0x39, 0x23, 0xd4, 0xd4, 0x61,
+  0x36, 0xf8, 0x89, 0xa2, 0xb0, 0x85, 0xac, 0x9c, 0x66, 0x85, 0xc5, 0x50,
+  0xe2, 0xc3, 0x8b, 0xd2, 0x0b, 0xcf, 0x0b, 0x92, 0x52, 0x11, 0x0c, 0xc7,
+  0x34, 0x12, 0x2a, 0x46, 0x10, 0x09, 0xc0, 0x20, 0xbc, 0xe8, 0xd3, 0xfd,
+  0xd4, 0xe9, 0x14, 0x41, 0x0a, 0x15, 0x51, 0x85, 0xa6, 0xd0, 0x1e, 0x8e,
+  0x3a, 0x79, 0xa9, 0x82, 0x27, 0x15, 0x81, 0xec, 0x1b, 0x23, 0x5d, 0x05,
+  0x5b, 0x46, 0xe0, 0x52, 0x19, 0xb2, 0x46, 0xc2, 0x1f, 0x49, 0xc5, 0xb8,
+  0x18, 0xb0, 0x5f, 0xf7, 0x21, 0xac, 0x1a, 0xb6, 0x34, 0x7e, 0x32, 0xae,
+  0x33, 0x14, 0x7d, 0x73, 0x6f, 0x37, 0x2e, 0x30, 0xc0, 0x74, 0xfd, 0x89,
+  0x08, 0xb4, 0xa6, 0x19, 0xd6, 0x15, 0x25, 0x76, 0x05, 0x64, 0x27, 0xd2,
+  0x7e, 0x45, 0x84, 0x66, 0xa8, 0x5b, 0x92, 0x81, 0x8e, 0x2b, 0x31, 0x24,
+  0x8e, 0x67, 0xc4, 0xf4, 0x68, 0x33, 0x02, 0x84, 0x74, 0xbe, 0x32, 0x01,
+  0x79, 0xf9, 0xd3, 0xf4, 0xd2, 0x02, 0x90, 0x04, 0x0e, 0x2c, 0x75, 0x1c,
+  0xf1, 0x40, 0xe7, 0xe4, 0xfa, 0x7d, 0x1d, 0xc9, 0x7c, 0x3e, 0xfb, 0xa2,
+  0x31, 0x60, 0xe0, 0x0a, 0x5e, 0x17, 0xfc, 0xee, 0xe1, 0x65, 0x36, 0x97,
+  0x08, 0x4c, 0x05, 0x4a, 0x94, 0x32, 0x25, 0xcf, 0xd5, 0x55, 0x91, 0xca,
+  0xce, 0xe5, 0xe4, 0x4b, 0xb3, 0x72, 0x43, 0xf3, 0x62, 0x82, 0x05, 0xa2,
+  0xf3, 0xa7, 0x4c, 0x77, 0xfa, 0x7f, 0x16, 0x57, 0x39, 0xfe, 0x03, 0x87,
+  0xc7, 0xd1, 0x3f, 0xdb, 0x0c, 0xa6, 0xf8, 0xae, 0x2f, 0xde, 0x30, 0x9a,
+  0x2a, 0x5e, 0x42, 0x52, 0x6a, 0xea, 0xc8, 0xb4, 0x86, 0xeb, 0xb0, 0x47,
+  0x08, 0x48, 0x81, 0x88, 0x49, 0x42, 0xe2, 0x95, 0x5a, 0xd1, 0x38, 0x2f,
+  0x73, 0x09, 0x5e, 0x50, 0x18, 0x66, 0xe6, 0x66, 0x20, 0x8c, 0xf6, 0x40,
+  0x22, 0xd0, 0xfc, 0x85, 0x77, 0x30, 0xa0, 0x76, 0xff, 0xd9, 0xfe, 0xd5,
+  0xec, 0x32, 0xd5, 0x76, 0xd7, 0x9d, 0x47, 0xad, 0x5a, 0xbd, 0x9c, 0x6c,
+  0x9c, 0xd7, 0x4e, 0x6d, 0x0c, 0x81, 0x3b, 0x34, 0x14, 0x87, 0xc8, 0x82,
+  0x65, 0x23, 0x52, 0x75, 0x48, 0x90, 0xae, 0xb0, 0x66, 0xdb, 0x65, 0xa2,
+  0x09, 0x48, 0xad, 0x45, 0x8b, 0x5c, 0xb0, 0x82, 0xdb, 0x74, 0xf0, 0xd9,
+  0x17, 0xe8, 0x19, 0xbf, 0xa3, 0x46, 0xe6, 0xac, 0x22, 0x23, 0xe1, 0xd6,
+  0xa9, 0xaf, 0x79, 0xb4, 0x40, 0xe7, 0x2b, 0xca, 0xf9, 0xc3, 0x3a, 0xc0,
+  0x35, 0xce, 0x90, 0x17, 0x45, 0xb1, 0x70, 0x44, 0xa4, 0x0a, 0x67, 0xc8,
+  0x11, 0x5d, 0x9c, 0x8a, 0x46, 0xae, 0xf3, 0xb3, 0x48, 0x64, 0xcc, 0x12,
+  0xf6, 0x82, 0xe1, 0xb3, 0x10, 0xc2, 0x85, 0xa4, 0xec, 0x04, 0xf6, 0x57,
+  0xe8, 0x4d, 0xf3, 0x59, 0x57, 0x71, 0x5d, 0xb2, 0x6a, 0x01, 0x69, 0xf8,
+  0x18, 0x1a, 0xe4, 0xfe, 0x4f, 0xcd, 0xeb, 0xf8, 0x07, 0x9c, 0x62, 0x6a,
+  0x94, 0xbb, 0x60, 0x35, 0xc7, 0x17, 0xe6, 0x8b, 0xeb, 0x94, 0x5b, 0xa4,
+  0x29, 0x09, 0xd1, 0x4a, 0x97, 0x95, 0xf6, 0x4f, 0x57, 0xc8, 0xc7, 0xa3,
+  0x89, 0x90, 0x7f, 0x9f, 0x15, 0x22, 0xda, 0xa2, 0x51, 0xe1, 0xa9, 0xb3,
+  0x58, 0x47, 0x48, 0x4f, 0x54, 0x34, 0xfb, 0x39, 0x13, 0x77, 0x66, 0xfe,
+  0x43, 0x87, 0xe6, 0xde, 0xc5, 0x7f, 0xfd, 0xd0, 0xb1, 0xd3, 0xff, 0x81,
+  0x76, 0xe7, 0xd3, 0x2c, 0xff, 0x14, 0x97, 0xf0, 0x43, 0x87, 0x17, 0xe1,
+  0xdb, 0xea, 0x4b, 0x6d, 0x3a, 0x7e, 0x17, 0xf8, 0x90, 0xbf, 0xec, 0x7c,
+  0xd8, 0xf9, 0x6e, 0xe3, 0xb3, 0x9d, 0x95, 0x28, 0x5a, 0xe6, 0xbb, 0x94,
+  0xb7, 0xa3, 0xbd, 0xf8, 0x2e, 0x8c, 0x0a, 0x65, 0x89, 0x0b, 0xe2, 0xdb,
+  0xd2, 0x0f, 0xc8, 0x67, 0xc9, 0x85, 0x16, 0xe0, 0xbd, 0xe7, 0x63, 0xb3,
+  0x0f, 0xe0, 0x56, 0xa0, 0xfd, 0x5d, 0x8d, 0x93, 0xea, 0xca, 0xed, 0xdb,
+  0x6e, 0x00, 0x69, 0x74, 0x83, 0x52, 0xea, 0x3a, 0x34, 0xf2, 0xef, 0x27,
+  0xf3, 0xba, 0x77, 0x1f, 0xfd, 0x15, 0xbe, 0x40, 0x06, 0x2e, 0x8d, 0x21,
+  0xe7, 0x9d, 0x50, 0xa8, 0xa5, 0xc0, 0x8c, 0x8a, 0xb2, 0x73, 0xce, 0xd8,
+  0xe2, 0xeb, 0xf0, 0x82, 0xe1, 0x5a, 0x82, 0xe9, 0x2b, 0x55, 0x3a, 0xc9,
+  0x40, 0xd1, 0xa7, 0xd0, 0xc7, 0x98, 0xad, 0xe0, 0x75, 0xbc, 0x25, 0xa8,
+  0x2c, 0xb6, 0x9a, 0x26, 0xe8, 0xf3, 0x45, 0xaf, 0x82, 0x18, 0xc8, 0xbc,
+  0x4c, 0x26, 0xcc, 0x02, 0x56, 0x47, 0xc5, 0x7c, 0x5c, 0x94, 0xd5, 0x67,
+  0x1d, 0x50, 0x92, 0x3e, 0x8d, 0xd0, 0xdf, 0x9f, 0xe6, 0x9f, 0x22, 0xcb,
+  0xcd, 0x60, 0x03, 0xed, 0xf9, 0xbd, 0x8b, 0x27, 0xf7, 0x30, 0xef, 0x95,
+  0xa5, 0x76, 0xce, 0x39, 0xd4, 0x23, 0x4c, 0x80, 0xe5, 0x04, 0xa1, 0x76,
+  0x26, 0x26, 0x1f, 0x68, 0xe7, 0xb0, 0xca, 0xef, 0x3f, 0xeb, 0x7a, 0xf0,
+  0x4a, 0xd7, 0x5e, 0xd0, 0xc4, 0x95, 0xc8, 0x64, 0xba, 0x7d, 0x76, 0xfa,
+  0xf5, 0xa7, 0x3a, 0xc0, 0x0f, 0x9d, 0xef, 0x62, 0xfe, 0x29, 0x01, 0xc3,
+  0xed, 0x45, 0xa7, 0x5f, 0x2b, 0xcf, 0x3f, 0x9e, 0xc7, 0x17, 0x7d, 0xe0,
+  0x0b, 0xfe, 0x0b, 0x71, 0xfb, 0xa2, 0x61, 0xd1, 0x7a, 0xd0, 0x77, 0xa2,
+  0xeb, 0xf4, 0x9e, 0x50, 0x3d, 0xa8, 0x9a, 0x62, 0x3a, 0x45, 0xbc, 0x13,
+  0x05, 0x42, 0xab, 0x19, 0x08, 0x8d, 0x6c, 0x8a, 0x64, 0x50, 0x30, 0xd4,
+  0x40, 0xed, 0xf7, 0x79, 0xa5, 0xd6, 0x92, 0xb4, 0xb7, 0x0c, 0x47, 0x89,
+  0x99, 0xcf, 0x3d, 0x89, 0x7e, 0x37, 0x93, 0x56, 0x93, 0x51, 0xd3, 0xfa,
+  0x39, 0x0a, 0xf4, 0x2c, 0xb7, 0x08, 0xe5, 0xfc, 0x37, 0xd2, 0xd3, 0x08,
+  0x88, 0x1d, 0x4d, 0xae, 0x95, 0x3f, 0xad, 0x48, 0xba, 0xe9, 0x64, 0x42,
+  0x57, 0x27, 0x45, 0xd4, 0x18, 0x47, 0xff, 0xd3, 0x50, 0x90, 0x51, 0xf2,
+  0x2a, 0xa4, 0x46, 0xfd, 0xa2, 0x18, 0x8f, 0x24, 0xde, 0x09, 0x5c, 0xcf,
+  0x1b, 0xac, 0xd6, 0x13, 0xaa, 0x20, 0x48, 0x0a, 0x89, 0x81, 0xca, 0x67,
+  0x03, 0x8a, 0x93, 0xe4, 0x41, 0xb0, 0x03, 0xd1, 0x66, 0x6e, 0x21, 0x78,
+  0x1b, 0x32, 0xfe, 0xa7, 0x98, 0xab, 0x35, 0x48, 0xc9, 0xc3, 0x65, 0xc0,
+  0xba, 0x62, 0xf1, 0x9f, 0x07, 0xdc, 0x44, 0x91, 0x39, 0x37, 0x7a, 0x70,
+  0x18, 0x72, 0x43, 0x11, 0xbb, 0xb0, 0x86, 0xe6, 0x0d, 0xb9, 0xa0, 0x39,
+  0x5c, 0xa3, 0x19, 0xcd, 0x78, 0xe9, 0x84, 0x17, 0x6b, 0xf2, 0xce, 0x90,
+  0x42, 0xfe, 0x69, 0x8b, 0xfe, 0x24, 0xbe, 0x76, 0x27, 0x3d, 0x8d, 0x56,
+  0x2f, 0x9b, 0xd5, 0xf3, 0x5e, 0xf8, 0x4e, 0x12, 0x63, 0xe3, 0xcd, 0x3d,
+  0x63, 0xd8, 0x27, 0xf2, 0x78, 0x78, 0x78, 0x17, 0xe0, 0x58, 0x66, 0x95,
+  0x55, 0x42, 0xfe, 0x05, 0xe3, 0x6f, 0x99, 0xf1, 0x7d, 0xe8, 0xa4, 0x44,
+  0x1a, 0xc6, 0x86, 0x3f, 0x7b, 0x6e, 0x0b, 0xa4, 0xd4, 0xef, 0x6b, 0x3c,
+  0x1b, 0x0d, 0x9f, 0x82, 0xf6, 0x28, 0x65, 0xbc, 0x61, 0x36, 0x95, 0xfd,
+  0x9e, 0xec, 0x35, 0xc1, 0x97, 0x92, 0x59, 0x48, 0xeb, 0xf0, 0xe0, 0xca,
+  0x62, 0xd1, 0xc9, 0x85, 0xb1, 0x8a, 0x09, 0xf6, 0xe4, 0x1b, 0xed, 0x71,
+  0x82, 0x03, 0x21, 0xa4, 0x12, 0x40, 0x6a, 0xe6, 0x96, 0xca, 0x1b, 0x67,
+  0x60, 0xb8, 0xfd, 0x90, 0x69, 0x7b, 0xe9, 0x7d, 0x0a, 0x44, 0x31, 0xe3,
+  0x9c, 0x93, 0xcd, 0x22, 0x27, 0x61, 0x75, 0x45, 0xbc, 0x2c, 0xf8, 0xa1,
+  0x84, 0x43, 0x39, 0x82, 0xba, 0x97, 0x10, 0x1e, 0xac, 0xf8, 0x76, 0xe2,
+  0x80, 0x36, 0xb2, 0x47, 0xa2, 0xdd, 0x9c, 0x09, 0x06, 0xc1, 0x26, 0x0c,
+  0x6c, 0x35, 0xa3, 0x19, 0x99, 0xbf, 0x01, 0x7c, 0xed, 0x1b, 0xcd, 0x0e,
+  0x89, 0x65, 0x30, 0xb6, 0x55, 0x6d, 0x25, 0x57, 0x12, 0xad, 0x7c, 0xb6,
+  0xb6, 0x32, 0xbf, 0x2f, 0x92, 0xb5, 0x10, 0xa4, 0xb7, 0xa8, 0x32, 0x8d,
+  0xc9, 0x6f, 0xa8, 0x08, 0x61, 0x14, 0x46, 0x27, 0x57, 0xd3, 0x04, 0xb3,
+  0xb6, 0xd2, 0x98, 0x36, 0x34, 0xd8, 0xe0, 0x86, 0x71, 0xfc, 0x18, 0xfd,
+  0x33, 0xcb, 0xe9, 0x74, 0x32, 0x8e, 0x31, 0xb3, 0xb8, 0x1b, 0xeb, 0xe4,
+  0x66, 0x3c, 0xd5, 0x9e, 0xa3, 0xa5, 0x07, 0x8e, 0x27, 0x46, 0xbb, 0xa8,
+  0x07, 0xb9, 0xf8, 0x47, 0x1c, 0x0f, 0xc7, 0x22, 0x95, 0x7c, 0xe5, 0xb3,
+  0x55, 0xbe, 0xb0, 0xac, 0x7f, 0xcd, 0xf9, 0xf6, 0x4a, 0xf4, 0x43, 0x18,
+  0x1b, 0x2c, 0xe2, 0x77, 0x1d, 0xbb, 0x41, 0xd8, 0xf6, 0xa1, 0x37, 0xa2,
+  0x7d, 0x0c, 0xce, 0x7c, 0x4e, 0xb1, 0x39, 0x79, 0x65, 0x7f, 0x9d, 0x7e,
+  0xd4, 0x52, 0xa5, 0xe7, 0x0d, 0x44, 0xa3, 0xc0, 0x56, 0xd1, 0x7f, 0xbf,
+  0xc0, 0xc7, 0xd5, 0x92, 0x58, 0x89, 0x7a, 0x3d, 0x10, 0x42, 0xd5, 0xa4,
+  0x8d, 0x1b, 0xe1, 0x01, 0x63, 0x10, 0xae, 0xa1, 0x54, 0x96, 0x18, 0x34,
+  0x68, 0xf2, 0xf4, 0xa8, 0xd5, 0xcd, 0x2e, 0x49, 0xfe, 0x55, 0xf9, 0x59,
+  0x2f, 0x3a, 0x30, 0x99, 0xcb, 0x69, 0xa0, 0x73, 0xea, 0xc8, 0x54, 0xb0,
+  0x88, 0x43, 0x0f, 0x37, 0xe4, 0xc5, 0x20, 0x93, 0x7e, 0x16, 0x0c, 0x5f,
+  0x48, 0x99, 0x91, 0xd8, 0x9f, 0x8e, 0xc1, 0x3b, 0xe1, 0x72, 0x0f, 0xb7,
+  0x3b, 0xa0, 0xdc, 0x5d, 0x8c, 0xa3, 0x31, 0x6a, 0xb2, 0xb1, 0x6c, 0x64,
+  0x6a, 0xf1, 0x91, 0x80, 0xce, 0x47, 0x26, 0xbd, 0xf2, 0xb9, 0xf9, 0x12,
+  0x06, 0x61, 0xbc, 0x22, 0x4e, 0x6a, 0x5a, 0x14, 0xbd, 0x88, 0xf1, 0x29,
+  0xeb, 0xe7, 0x57, 0xbe, 0x6f, 0xe6, 0x86, 0x75, 0x45, 0x29, 0x8c, 0x29,
+  0x67, 0x3c, 0x80, 0xae, 0x41, 0x37, 0xc1, 0x20, 0xa9, 0xd2, 0x67, 0x3b,
+  0xaa, 0x5e, 0x32, 0x95, 0x2a, 0x45, 0xac, 0x6c, 0x38, 0x65, 0xf9, 0x1e,
+  0x72, 0x16, 0xd4, 0x3e, 0x08, 0x04, 0x86, 0x86, 0xca, 0x19, 0x18, 0x5f,
+  0x35, 0x57, 0xfa, 0xe1, 0x6d, 0x0a, 0x8a, 0xe4, 0x65, 0x4d, 0x60, 0x23,
+  0xcf, 0x9f, 0x39, 0x93, 0x7e, 0xc0, 0x7d, 0xd1, 0x92, 0xa4, 0xb2, 0xc2,
+  0xf6, 0x8a, 0x22, 0x66, 0x58, 0x64, 0x3f, 0xef, 0x5c, 0xa2, 0xef, 0x83,
+  0x41, 0xf5, 0x65, 0x8d, 0xc6, 0xdb, 0xf8, 0xd0, 0x31, 0x72, 0x0f, 0xc1,
+  0xa7, 0xca, 0x38, 0xed, 0x4f, 0x2f, 0x64, 0x6a, 0xc7, 0x74, 0xd2, 0xf7,
+  0x79, 0x12, 0xcc, 0xd8, 0x0f, 0xf3, 0x35, 0x06, 0x15, 0x2e, 0x66, 0x25,
+  0xdd, 0x3e, 0xf2, 0x18, 0x2b, 0x09, 0x0a, 0x3a, 0x22, 0x7a, 0xfa, 0xdb,
+  0x83, 0x77, 0x1f, 0x0e, 0x4e, 0x7e, 0xad, 0xbe, 0x9f, 0x8f, 0x88, 0x8f,
+  0x34, 0x41, 0x2f, 0xe5, 0x47, 0x6a, 0x2e, 0x26, 0x23, 0xbc, 0x1d, 0x1e,
+  0x15, 0x35, 0x39, 0x6f, 0x14, 0x0e, 0x59, 0x94, 0x35, 0x0f, 0x2d, 0xfa,
+  0xb8, 0xab, 0xe8, 0x93, 0xf4, 0xcf, 0x73, 0x02, 0x75, 0xf3, 0xc2, 0xab,
+  0x04, 0x45, 0xd9, 0xae, 0xd9, 0x40, 0xe8, 0x1a, 0x64, 0x61, 0xcc, 0x73,
+  0x0b, 0xc3, 0x4a, 0x73, 0xd1, 0x94, 0x64, 0x2a, 0x38, 0xd5, 0x46, 0x49,
+  0x75, 0xcd, 0x2e, 0x92, 0x8e, 0xbe, 0xcf, 0xe1, 0x20, 0xae, 0xe1, 0x35,
+  0x38, 0x7a, 0xa1, 0x03, 0x65, 0x40, 0xeb, 0x4c, 0x7e, 0xaa, 0xa2, 0x9c,
+  0xc8, 0xdd, 0xd9, 0x70, 0xfc, 0x15, 0x17, 0x17, 0x36, 0x66, 0xd2, 0x8e,
+  0x58, 0x1e, 0x1e, 0xce, 0x47, 0x0f, 0xfb, 0x9d, 0x4b, 0x95, 0x5c, 0x52,
+  0x76, 0x26, 0x65, 0xaf, 0x2c, 0x06, 0x45, 0xdd, 0x59, 0x0c, 0x69, 0x45,
+  0xef, 0xd8, 0x0b, 0x28, 0xae, 0x0b, 0x06, 0x25, 0xdc, 0x97, 0x35, 0x85,
+  0x77, 0x03, 0x16, 0xe6, 0x42, 0x32, 0xaa, 0x16, 0x8e, 0x2b, 0xf9, 0xd0,
+  0x3f, 0x7a, 0x4f, 0x44, 0x3e, 0x3b, 0xe8, 0xf7, 0xcd, 0x75, 0x5d, 0x69,
+  0x9a, 0xa3, 0x67, 0x2f, 0x92, 0xa6, 0xcb, 0x11, 0x2b, 0xa1, 0xa2, 0xcd,
+  0x90, 0x95, 0x22, 0x23, 0x4a, 0x06, 0x00, 0xb3, 0xf4, 0x7c, 0x36, 0x81,
+  0x33, 0x0d, 0x4a, 0xf9, 0x68, 0xa5, 0x92, 0xf8, 0x76, 0x9b, 0x61, 0xa9,
+  0x9f, 0x17, 0x2b, 0x7b, 0xc4, 0x23, 0x54, 0x2c, 0xf9, 0x1a, 0x2b, 0x4b,
+  0xa5, 0x1e, 0x14, 0x2f, 0x22, 0xce, 0x08, 0x70, 0x6b, 0x24, 0xbb, 0x61,
+  0xb7, 0x55, 0xa7, 0x7f, 0x7c, 0x7e, 0x04, 0x7b, 0xfc, 0xe1, 0xfc, 0x4d,
+  0x47, 0x7c, 0xa6, 0x6d, 0xac, 0x53, 0x0a, 0x33, 0x80, 0x46, 0x9e, 0xde,
+  0x18, 0x9c, 0xaf, 0x92, 0x3d, 0x40, 0x7e, 0x6a, 0x0a, 0x09, 0x67, 0xfb,
+  0xd1, 0x27, 0x6d, 0x6f, 0x60, 0xab, 0x3a, 0x1f, 0x76, 0xb7, 0xcb, 0xc0,
+  0x36, 0xb7, 0x76, 0x79, 0x7e, 0x0f, 0x5b, 0x6a, 0xc8, 0xd8, 0xf7, 0x8e,
+  0x99, 0x34, 0x2b, 0xc5, 0xd4, 0xd3, 0x75, 0x4e, 0x28, 0x16, 0x38, 0x5f,
+  0x8e, 0x10, 0x91, 0x57, 0x23, 0xd4, 0xfc, 0xc2, 0xb6, 0x02, 0x31, 0xc9,
+  0x0a, 0xd4, 0xb9, 0xd5, 0x40, 0x67, 0x8b, 0x83, 0x9b, 0x03, 0xcb, 0xb0,
+  0xe3, 0x49, 0x39, 0x32, 0xa0, 0x58, 0xbe, 0x0a, 0xac, 0x79, 0xd2, 0x58,
+  0x83, 0x42, 0xe9, 0x59, 0x8f, 0xca, 0xca, 0xb5, 0xc9, 0xd0, 0xe1, 0x5a,
+  0x47, 0x8a, 0x1b, 0xa0, 0x07, 0xc2, 0x36, 0x6b, 0x7d, 0xca, 0x7e, 0x34,
+  0x7a, 0xae, 0xce, 0xed, 0x12, 0xc9, 0xfd, 0x4f, 0xc9, 0x0f, 0x44, 0x6d,
+  0x58, 0x17, 0xe5, 0xa8, 0x87, 0xfa, 0xbf, 0xf2, 0xb7, 0x24, 0x41, 0x69,
+  0x9f, 0xff, 0x1b, 0x3e, 0x98, 0xa4, 0xbe, 0x94, 0xc5, 0x98, 0xdd, 0xb4,
+  0xf2, 0x06, 0xe7, 0xf2, 0x33, 0xa8, 0x82, 0x14, 0x54, 0x97, 0x94, 0x16,
+  0x2e, 0xce, 0x49, 0xac, 0x05, 0x68, 0xc7, 0xaa, 0x60, 0xb4, 0xd5, 0xfe,
+  0x9a, 0xf1, 0x66, 0x9f, 0x53, 0xb8, 0x96, 0x46, 0x0b, 0x80, 0x7b, 0x38,
+  0x1d, 0x58, 0x44, 0x55, 0x0f, 0xe1, 0xd9, 0x39, 0xbc, 0xeb, 0x5b, 0x9f,
+  0x74, 0xe9, 0x0d, 0x6f, 0x47, 0x73, 0x7a, 0x5a, 0x90, 0x0b, 0x8f, 0x18,
+  0x8b, 0xec, 0x69, 0xae, 0x8e, 0x3a, 0xfc, 0xf6, 0x55, 0x64, 0x19, 0x53,
+  0xb3, 0x89, 0x99, 0x31, 0x45, 0xb9, 0x9f, 0xd7, 0x35, 0x22, 0xb5, 0x29,
+  0xf1, 0x3d, 0x0a, 0x58, 0x8f, 0xd2, 0x74, 0x6a, 0xda, 0x2a, 0x67, 0x29,
+  0x37, 0x0e, 0x97, 0x08, 0xf5, 0x84, 0x3a, 0x69, 0x04, 0xc0, 0x27, 0x4c,
+  0xd4, 0x14, 0x33, 0x63, 0x6c, 0xee, 0xe4, 0x55, 0x71, 0x4b, 0xd1, 0xf1,
+  0xcd, 0xe7, 0xdb, 0x2f, 0x40, 0xc5, 0xb9, 0xa7, 0x6e, 0xc6, 0x96, 0x5a,
+  0xd4, 0x17, 0x2d, 0x94, 0xf6, 0x67, 0xc3, 0x84, 0x6e, 0xd5, 0xba, 0xa0,
+  0x5e, 0x46, 0x15, 0x5a, 0x63, 0xe4, 0xe7, 0x13, 0xf8, 0x38, 0x1f, 0x17,
+  0x19, 0xe8, 0x27, 0xb4, 0x92, 0x33, 0x48, 0x24, 0xe2, 0xd4, 0xc3, 0x9e,
+  0x73, 0x48, 0x40, 0x41, 0x8e, 0xfa, 0xc7, 0xff, 0x75, 0x04, 0x62, 0xef,
+  0xfd, 0xd1, 0xf9, 0x7b, 0xf8, 0x4f, 0xff, 0xfc, 0xf4, 0xfd, 0x9c, 0xe6,
+  0x2d, 0x35, 0xa3, 0xa9, 0x22, 0xbd, 0x34, 0x51, 0x89, 0x28, 0xdc, 0xec,
+  0x72, 0x40, 0xa5, 0x30, 0x2c, 0x1a, 0xab, 0xf4, 0x61, 0x5a, 0x9d, 0x3b,
+  0x69, 0x00, 0x17, 0x70, 0xf7, 0x2d, 0x5c, 0x18, 0x6f, 0xf7, 0x62, 0xe6,
+  0xa0, 0x05, 0x23, 0x1f, 0xe2, 0x8a, 0xcd, 0x65, 0x44, 0xb3, 0x05, 0xdb,
+  0x17, 0x23, 0x2b, 0xb6, 0x7b, 0xb6, 0x56, 0xa5, 0xcd, 0x69, 0x78, 0xc2,
+  0xb5, 0x13, 0x95, 0xc9, 0xe2, 0xd7, 0x60, 0x78, 0x47, 0xf1, 0x16, 0x3b,
+  0xd1, 0x2a, 0xf9, 0xe7, 0x45, 0xbd, 0x7b, 0x80, 0x75, 0x41, 0xa5, 0x5c,
+  0xb3, 0x0b, 0xae, 0x8a, 0x49, 0xca, 0x21, 0x14, 0x72, 0xa7, 0x19, 0x01,
+  0xc8, 0xf7, 0x1f, 0xb7, 0xae, 0x8a, 0x42, 0xb0, 0xa5, 0x1a, 0x49, 0xa1,
+  0x5d, 0x5e, 0x69, 0x24, 0xce, 0x9a, 0x95, 0x4e, 0x53, 0x30, 0xf8, 0x6b,
+  0xea, 0x65, 0xb0, 0xa2, 0xb3, 0x5a, 0x79, 0x44, 0xbf, 0x13, 0x47, 0xba,
+  0xe8, 0x6b, 0x01, 0x29, 0x06, 0x04, 0xdc, 0xc4, 0x3f, 0xb6, 0x58, 0x86,
+  0xcd, 0x1f, 0x83, 0x19, 0xf1, 0x17, 0x0c, 0x60, 0x36, 0xfc, 0xe1, 0x41,
+  0x9a, 0x22, 0x12, 0xe1, 0x3f, 0xc3, 0x72, 0x91, 0x0a, 0x1c, 0x1b, 0xb0,
+  0xa3, 0x9a, 0x95, 0x4c, 0xaa, 0x9e, 0xad, 0x67, 0xee, 0x45, 0x67, 0xf2,
+  0x54, 0x30, 0xe0, 0x4a, 0x18, 0x3f, 0x58, 0xa1, 0x6a, 0x8e, 0xa7, 0x70,
+  0x6d, 0x57, 0x60, 0x3b, 0x5a, 0x77, 0x53, 0x43, 0xb3, 0xf7, 0x6f, 0x23,
+  0xd5, 0xa9, 0x31, 0x26, 0x58, 0xa6, 0x30, 0x0e, 0x42, 0x92, 0x34, 0x20,
+  0x1d, 0xb5, 0x1b, 0xc6, 0xef, 0x01, 0x00, 0x1d, 0x7d, 0xc8, 0x05, 0xa3,
+  0x38, 0x07, 0x2b, 0x93, 0xf2, 0x62, 0x46, 0x86, 0x68, 0x08, 0x4f, 0x8e,
+  0x29, 0x87, 0x7c, 0xb7, 0x8f, 0x0a, 0x36, 0xed, 0xa8, 0x95, 0x9e, 0xdf,
+  0xe7, 0x83, 0xa2, 0x09, 0x94, 0x69, 0xa2, 0x17, 0xb2, 0x8c, 0x67, 0x2d,
+  0xd4, 0x61, 0xdd, 0x5e, 0x29, 0x15, 0x82, 0x7a, 0x0b, 0x3d, 0x73, 0x37,
+  0x4d, 0x52, 0x86, 0x28, 0xdb, 0xdd, 0x88, 0xb3, 0x9a, 0x11, 0x39, 0x9b,
+  0xc0, 0xaa, 0xbc, 0xd6, 0x60, 0x3d, 0x52, 0x2e, 0xb0, 0xa7, 0xb3, 0x7c,
+  0x8c, 0xa5, 0x48, 0x2d, 0x18, 0x4c, 0xd1, 0xd2, 0x9f, 0xa2, 0x0d, 0x20,
+  0xfb, 0x2d, 0x52, 0xb7, 0x03, 0xb0, 0x51, 0x0d, 0x24, 0x53, 0xe5, 0xe5,
+  0x26, 0x59, 0xe6, 0xe2, 0x80, 0x11, 0x67, 0xbf, 0xc7, 0xbd, 0xd6, 0xee,
+  0x35, 0xca, 0x94, 0x59, 0x9e, 0x21, 0xd8, 0x75, 0x51, 0xae, 0x63, 0x0d,
+  0x3a, 0xf6, 0xf7, 0x88, 0x22, 0xd0, 0x0a, 0x6c, 0x41, 0x44, 0xc0, 0x47,
+  0x66, 0x54, 0x6d, 0xce, 0x24, 0x87, 0xc1, 0x7b, 0x81, 0x32, 0x6d, 0xe9,
+  0x5a, 0x97, 0xba, 0xa0, 0xa4, 0xbd, 0x50, 0xe6, 0x3f, 0xd1, 0x99, 0xb1,
+  0x2c, 0x9b, 0xea, 0xb2, 0x1c, 0x35, 0x8a, 0x49, 0x19, 0x97, 0x05, 0xa9,
+  0xe4, 0x98, 0x54, 0x3b, 0x0f, 0xf1, 0x42, 0x68, 0xc0, 0xa0, 0xe8, 0x40,
+  0x15, 0x49, 0x38, 0x6a, 0x1e, 0x69, 0xb2, 0x08, 0x9b, 0x5f, 0xab, 0xd2,
+  0x7a, 0x36, 0xf5, 0xd5, 0x1b, 0x0b, 0xee, 0x64, 0x46, 0xd4, 0x68, 0xbb,
+  0x33, 0x45, 0x44, 0x98, 0xb4, 0xe4, 0x77, 0xbb, 0xb4, 0x06, 0x7a, 0xd8,
+  0x17, 0x17, 0x9e, 0x52, 0x33, 0x0f, 0xc0, 0x50, 0xaf, 0xd6, 0x1e, 0x16,
+  0x71, 0x77, 0x10, 0x45, 0xb1, 0xc3, 0xa0, 0x93, 0x82, 0xf6, 0x20, 0x3d,
+  0x03, 0xf4, 0x6d, 0xa0, 0x8b, 0x33, 0x5f, 0xff, 0xb0, 0x69, 0x31, 0x26,
+  0xc3, 0xc8, 0xd2, 0xee, 0xac, 0x7e, 0xc8, 0xb3, 0x3b, 0x3a, 0xf8, 0x5e,
+  0xc3, 0x73, 0x3b, 0xd4, 0x82, 0x59, 0x75, 0x14, 0x5b, 0x0a, 0xd1, 0xf7,
+  0x3a, 0xee, 0xdc, 0xb8, 0x51, 0x23, 0xec, 0xbe, 0x3b, 0x50, 0x3b, 0xde,
+  0x80, 0x29, 0x62, 0xf3, 0x1b, 0x9e, 0xf1, 0x17, 0x26, 0xf7, 0x3d, 0x7c,
+  0xae, 0x37, 0x2a, 0x26, 0x70, 0xec, 0xbd, 0x6f, 0x4c, 0xa8, 0xb6, 0xd9,
+  0x53, 0x95, 0x63, 0x9b, 0xa8, 0xc6, 0xbc, 0x38, 0xcd, 0x90, 0x8d, 0xb4,
+  0xba, 0xc4, 0xa1, 0x13, 0x09, 0x09, 0x94, 0x89, 0xd2, 0xf7, 0x8b, 0x65,
+  0x5c, 0x78, 0x46, 0x7a, 0x17, 0x08, 0xce, 0x8d, 0x73, 0x1d, 0xb8, 0x3d,
+  0x14, 0x9a, 0xf2, 0x76, 0x69, 0x6b, 0x1e, 0x01, 0x82, 0xcd, 0xa1, 0x6b,
+  0x03, 0x43, 0x13, 0x0a, 0x79, 0x1b, 0xc8, 0x5a, 0x20, 0x85, 0xf9, 0x41,
+  0x17, 0xf3, 0x9d, 0xb3, 0x2d, 0x9c, 0xdb, 0x89, 0xe0, 0xb9, 0x8d, 0xec,
+  0x6b, 0x20, 0x21, 0xd1, 0xc8, 0x9a, 0xe0, 0xd6, 0x46, 0x1c, 0x37, 0x48,
+  0xe0, 0x2c, 0xdd, 0x75, 0x38, 0x7c, 0xe7, 0x2f, 0x7f, 0xb1, 0x22, 0xb0,
+  0x91, 0x0e, 0x22, 0x4d, 0x61, 0x3b, 0x7b, 0xdf, 0x53, 0x58, 0xe1, 0xc7,
+  0xf8, 0x7b, 0xf8, 0xe7, 0x8f, 0x1d, 0x3d, 0xcb, 0x8c, 0x19, 0x6f, 0x00,
+  0x2a, 0x64, 0x3b, 0xba, 0xee, 0xe5, 0xe7, 0xe7, 0x93, 0x9c, 0x1f, 0x9e,
+  0x49, 0x5a, 0x7a, 0xc9, 0x89, 0x14, 0xc4, 0xc6, 0x28, 0x80, 0xc8, 0x8c,
+  0x41, 0xa1, 0x4f, 0xd0, 0x4a, 0xc2, 0x20, 0x09, 0x3d, 0xab, 0xc3, 0xd1,
+  0x2b, 0x5d, 0x9b, 0x26, 0x73, 0xcb, 0x47, 0x3f, 0x01, 0x7d, 0xfe, 0x12,
+  0x7d, 0x73, 0x0c, 0xf5, 0xd6, 0x8b, 0x0e, 0xd4, 0x70, 0xe0, 0x1f, 0x10,
+  0xe4, 0x7c, 0x45, 0x19, 0x39, 0xb7, 0x30, 0x21, 0xe3, 0x9a, 0xa0, 0x2b,
+  0x0d, 0x55, 0xe4, 0xdc, 0xc6, 0xf4, 0x33, 0x6a, 0xd5, 0x08, 0x44, 0x52,
+  0x49, 0x5b, 0x66, 0xd5, 0x35, 0x2e, 0x52, 0xea, 0x4f, 0x9d, 0xcc, 0x33,
+  0x5a, 0xc5, 0x24, 0x31, 0xb4, 0x14, 0xfc, 0x62, 0x83, 0xc5, 0xf1, 0xb0,
+  0x3e, 0x76, 0x06, 0x5c, 0x4e, 0xb7, 0xc8, 0xfc, 0x6e, 0x6f, 0x67, 0x8c,
+  0xbd, 0xfa, 0xe0, 0x53, 0x2e, 0x44, 0x9c, 0xf7, 0xf0, 0x27, 0x81, 0x9a,
+  0x0e, 0xbd, 0xc5, 0x04, 0xc8, 0x29, 0x88, 0x4e, 0x2f, 0x8f, 0x95, 0xe9,
+  0x23, 0x9a, 0x26, 0x70, 0x9a, 0x5b, 0x74, 0x06, 0x76, 0x86, 0x61, 0x4f,
+  0x07, 0x7b, 0x3c, 0x62, 0x78, 0x13, 0xba, 0xba, 0xd7, 0xda, 0x91, 0xa4,
+  0xc3, 0xb4, 0xa4, 0x18, 0x24, 0xb7, 0x0d, 0x30, 0x6d, 0x00, 0xd0, 0xd9,
+  0x8c, 0x1a, 0xcd, 0xa8, 0x84, 0x69, 0x8c, 0xba, 0x0a, 0x64, 0xc7, 0xa7,
+  0x13, 0x73, 0x15, 0x54, 0xa7, 0xf6, 0x1c, 0xfd, 0xa2, 0x19, 0xa0, 0xb9,
+  0x67, 0x8c, 0x81, 0x31, 0x87, 0x86, 0x88, 0x0f, 0x90, 0x0d, 0xf0, 0xbf,
+  0x70, 0x63, 0xb0, 0x9f, 0x70, 0x54, 0xdc, 0xe6, 0xe8, 0xb5, 0xc4, 0xe2,
+  0x8b, 0xf6, 0x15, 0x42, 0xd3, 0x9f, 0x84, 0x5a, 0x8a, 0x3d, 0x46, 0x53,
+  0x28, 0xd3, 0xfa, 0x61, 0xc7, 0x5c, 0x75, 0x9d, 0xf1, 0x76, 0xc4, 0xd9,
+  0xf4, 0x61, 0x52, 0x23, 0xa3, 0x69, 0x43, 0xb5, 0x86, 0x1c, 0x34, 0xf7,
+  0x61, 0x35, 0xbb, 0xbc, 0x24, 0x3c, 0x4f, 0x3f, 0x35, 0xb5, 0xae, 0x6c,
+  0xad, 0x92, 0x34, 0xa7, 0x85, 0x6b, 0x87, 0xd6, 0xd8, 0x80, 0xaa, 0x1f,
+  0x0a, 0xf8, 0x74, 0x4e, 0x41, 0x0e, 0xd3, 0x38, 0x6b, 0x2e, 0x3c, 0x10,
+  0x5c, 0x70, 0xc7, 0x22, 0x8c, 0xac, 0xc2, 0x56, 0xa6, 0xb1, 0x4e, 0xb4,
+  0x2d, 0xb5, 0x33, 0x34, 0x56, 0x63, 0x2f, 0xa6, 0x82, 0xf2, 0x9b, 0x3c,
+  0x4f, 0xf3, 0x25, 0xb5, 0x8f, 0xd0, 0x46, 0x47, 0x92, 0xbe, 0xfa, 0xbc,
+  0xf7, 0x7c, 0xa7, 0xb7, 0xd1, 0x76, 0xc6, 0x72, 0x8e, 0x38, 0x27, 0xe4,
+  0xb0, 0xe2, 0xb4, 0xd0, 0x47, 0x8f, 0xbe, 0x62, 0x83, 0x12, 0x8f, 0xb1,
+  0x57, 0x6e, 0xac, 0xc1, 0x9d, 0x11, 0x4a, 0x83, 0x12, 0xaf, 0x08, 0x59,
+  0xb4, 0xe8, 0xb6, 0x9e, 0x70, 0x41, 0x24, 0xed, 0x2d, 0xcf, 0x30, 0x2e,
+  0x2b, 0x2c, 0xa7, 0x62, 0xfa, 0x6d, 0x11, 0x64, 0xc4, 0x6a, 0x1c, 0x0f,
+  0x87, 0xc3, 0x98, 0x34, 0xa7, 0x7d, 0x56, 0xe7, 0xd6, 0x45, 0x9d, 0x9a,
+  0xe3, 0x5c, 0xea, 0xa7, 0xb2, 0xe7, 0x87, 0x87, 0x87, 0xa2, 0xf9, 0x9d,
+  0x5f, 0xb5, 0x74, 0x30, 0x83, 0xd9, 0x2e, 0x3a, 0x68, 0xa8, 0x42, 0xba,
+  0xba, 0x9a, 0xd5, 0x78, 0xb4, 0xd8, 0x66, 0xd2, 0xcb, 0xca, 0x40, 0x6a,
+  0xb4, 0xda, 0x19, 0x15, 0xc0, 0x14, 0x5d, 0x9b, 0x1f, 0xec, 0xb7, 0x23,
+  0x28, 0xd3, 0x29, 0xb7, 0xf8, 0xa6, 0x17, 0x65, 0x6c, 0x0b, 0x05, 0xe4,
+  0xfa, 0xb0, 0x5c, 0x28, 0x7d, 0x9d, 0x60, 0x15, 0xca, 0xa9, 0xd7, 0x51,
+  0xe8, 0xb3, 0x49, 0x26, 0xc9, 0x98, 0x89, 0x7c, 0xab, 0x3d, 0xf6, 0x13,
+  0x24, 0x40, 0x83, 0xfc, 0x32, 0xad, 0xc6, 0x6f, 0x70, 0x97, 0xab, 0xe5,
+  0xb6, 0x59, 0xde, 0x9c, 0xb3, 0xd3, 0xc1, 0x3d, 0x45, 0xbb, 0x18, 0x77,
+  0x73, 0xf5, 0x90, 0x7a, 0x1a, 0x1d, 0xca, 0x59, 0x3f, 0xbc, 0xc2, 0x1c,
+  0xcd, 0x31, 0xee, 0x39, 0x50, 0xa2, 0x62, 0x49, 0x28, 0x37, 0x7a, 0xbf,
+  0x7f, 0xb2, 0x7e, 0x7e, 0xd2, 0xf7, 0xaa, 0x59, 0xee, 0x31, 0x26, 0x43,
+  0xb1, 0x97, 0x66, 0x6c, 0x80, 0x29, 0x4f, 0x1d, 0xfd, 0xc4, 0x49, 0x68,
+  0x0e, 0x2f, 0x7f, 0x25, 0x88, 0xeb, 0x3a, 0xcb, 0xb5, 0x16, 0xcf, 0x28,
+  0x51, 0x79, 0x9a, 0x13, 0x58, 0x17, 0xea, 0x52, 0x74, 0x30, 0x29, 0xd9,
+  0xbd, 0x8a, 0xde, 0x1d, 0x9c, 0x63, 0x75, 0x5d, 0x2d, 0xe9, 0x5a, 0xe8,
+  0x82, 0xf4, 0x43, 0x4f, 0xb7, 0x06, 0xac, 0x8e, 0x22, 0xb0, 0xc9, 0xd0,
+  0x36, 0xed, 0x56, 0xab, 0x69, 0x22, 0x55, 0xe5, 0xc2, 0xcf, 0xbf, 0x60,
+  0x57, 0x83, 0x7b, 0x37, 0x77, 0xeb, 0xe0, 0x25, 0xb9, 0x6f, 0xdb, 0x8c,
+  0x11, 0xdc, 0x49, 0x26, 0x5e, 0xf8, 0x84, 0xbe, 0x97, 0xbb, 0x50, 0x37,
+  0xc9, 0x29, 0x5c, 0xc3, 0xa5, 0x8f, 0x8b, 0xcb, 0x0c, 0xdd, 0xe5, 0xb4,
+  0xd7, 0x6e, 0x00, 0xbe, 0x2d, 0x91, 0x0e, 0x98, 0xb2, 0x8a, 0xea, 0xd8,
+  0x68, 0xbf, 0xc5, 0xa7, 0x16, 0x2f, 0x5a, 0xb3, 0x1f, 0x1a, 0x8b, 0x36,
+  0x20, 0x0b, 0x3e, 0x86, 0x01, 0xb5, 0x9f, 0xc9, 0x86, 0x60, 0xe7, 0x0d,
+  0x31, 0x0b, 0xec, 0x35, 0x57, 0x19, 0xbb, 0x99, 0xf7, 0x59, 0xa3, 0xdb,
+  0x8d, 0x89, 0x22, 0x54, 0x7e, 0x20, 0x91, 0x54, 0x2c, 0x59, 0xe1, 0x93,
+  0x77, 0x49, 0x78, 0x70, 0x41, 0xd8, 0xe4, 0x2b, 0x34, 0xc3, 0x2f, 0x3d,
+  0x2d, 0xe7, 0x5b, 0x01, 0xb4, 0x1a, 0x05, 0x5a, 0x89, 0x90, 0x5d, 0x82,
+  0x7e, 0x50, 0x21, 0x48, 0xa3, 0xe7, 0x27, 0x9a, 0xd5, 0xf1, 0xa8, 0x1b,
+  0x6c, 0xd8, 0xda, 0x8d, 0xda, 0x4d, 0x50, 0x4b, 0xbf, 0x53, 0x60, 0x03,
+  0x6e, 0x59, 0x0b, 0x06, 0x5a, 0xc3, 0x7d, 0x05, 0x8a, 0x96, 0x02, 0xa7,
+  0xb5, 0x30, 0x99, 0xa9, 0x02, 0x4c, 0x7f, 0xc7, 0xf9, 0x0b, 0x18, 0xbb,
+  0xbe, 0xcd, 0x10, 0xa0, 0x68, 0x8e, 0x65, 0xcb, 0x96, 0xcb, 0xb9, 0x6d,
+  0xd7, 0xc9, 0x67, 0x91, 0x6d, 0x80, 0xd4, 0x64, 0xbd, 0x23, 0x5e, 0xaa,
+  0x26, 0xf6, 0xfc, 0xc7, 0x8a, 0x82, 0x84, 0x16, 0x1e, 0x5f, 0xd9, 0x66,
+  0x21, 0xa1, 0x76, 0x69, 0x36, 0x8e, 0xdc, 0xb5, 0x13, 0xb6, 0xdf, 0xf5,
+  0x5b, 0x5e, 0xf3, 0xf2, 0x16, 0xcf, 0xe7, 0xcd, 0xd1, 0xc1, 0xab, 0xb9,
+  0x60, 0x61, 0x8f, 0x8b, 0xd0, 0xb2, 0x07, 0x4d, 0x7d, 0xc1, 0x04, 0xe2,
+  0x42, 0x3d, 0x08, 0xe7, 0x78, 0xd1, 0xd4, 0xd7, 0x3b, 0x48, 0xb9, 0x4b,
+  0xf0, 0x4c, 0xbd, 0x6a, 0xb4, 0x39, 0x86, 0xb1, 0x19, 0x23, 0x2e, 0x25,
+  0xa0, 0x34, 0x3c, 0x51, 0x73, 0xbb, 0xe5, 0xce, 0xf5, 0xa3, 0xb9, 0x59,
+  0x4b, 0xe2, 0x3a, 0x45, 0x2b, 0x89, 0x0b, 0x3f, 0x97, 0xed, 0xb0, 0x89,
+  0x9c, 0xfe, 0xf8, 0x7e, 0x98, 0xf4, 0xb4, 0xed, 0xa7, 0x69, 0xda, 0x6b,
+  0x26, 0x97, 0xe9, 0x67, 0xc5, 0x78, 0xd4, 0x59, 0x76, 0xa4, 0xe3, 0xf6,
+  0x60, 0x0b, 0x81, 0x06, 0x2f, 0xe9, 0x64, 0x8e, 0x8b, 0x41, 0x71, 0x71,
+  0xb1, 0x40, 0x63, 0xe3, 0x16, 0x3a, 0x54, 0x71, 0xca, 0x27, 0xa0, 0x83,
+  0x7c, 0x81, 0xef, 0x0d, 0xb8, 0xc1, 0x52, 0x09, 0xc2, 0xa6, 0x23, 0x15,
+  0x5b, 0x02, 0xdd, 0xeb, 0x29, 0x03, 0xd6, 0xe4, 0xa7, 0x86, 0xc6, 0x64,
+  0x07, 0xab, 0x1d, 0x4a, 0xc8, 0x47, 0x06, 0x7b, 0x23, 0x91, 0x80, 0x00,
+  0xb7, 0xb2, 0xad, 0xa2, 0x7f, 0xfc, 0xf3, 0xfb, 0x1f, 0x03, 0xfd, 0x7c,
+  0xd1, 0x65, 0x7f, 0xc5, 0x55, 0xe1, 0x1c, 0xdb, 0xac, 0xab, 0x74, 0x7c,
+  0x61, 0xdb, 0xa6, 0xe2, 0x18, 0x13, 0x17, 0x09, 0x92, 0x63, 0x2a, 0x38,
+  0x6c, 0xa0, 0x04, 0x4c, 0xd3, 0x42, 0xa9, 0x51, 0x88, 0x80, 0x3b, 0x60,
+  0x33, 0xc6, 0x31, 0x9d, 0x01, 0x53, 0x4a, 0x62, 0x7a, 0xa7, 0xd9, 0x38,
+  0x54, 0x30, 0xb3, 0x0a, 0x93, 0x1b, 0xdb, 0x09, 0x45, 0x1f, 0xde, 0x1f,
+  0x9b, 0x38, 0xc5, 0x92, 0xe2, 0x16, 0x11, 0x5e, 0x03, 0xe5, 0x26, 0xff,
+  0xf8, 0xfe, 0xc7, 0x7f, 0xc2, 0xff, 0x75, 0x9c, 0xeb, 0xed, 0x0a, 0x8e,
+  0xf0, 0x7d, 0x9c, 0xde, 0xa7, 0x03, 0x10, 0x9f, 0x95, 0x62, 0x74, 0xc5,
+  0x93, 0x2a, 0xda, 0x9f, 0xc0, 0xe1, 0xcf, 0xe6, 0xa0, 0xb7, 0xbd, 0xc1,
+  0xd7, 0xa2, 0x23, 0x79, 0xcd, 0x20, 0x97, 0x5c, 0x16, 0x25, 0x50, 0x7a,
+  0x22, 0x10, 0x10, 0x82, 0x7f, 0xd1, 0x74, 0xed, 0x45, 0x54, 0xc1, 0xe7,
+  0x39, 0xc7, 0x6e, 0x76, 0xc4, 0xf6, 0xa3, 0x46, 0x05, 0x0e, 0x2a, 0x3d,
+  0x5f, 0x62, 0xa3, 0x19, 0x98, 0x27, 0x40, 0x8c, 0xe1, 0x35, 0x79, 0xb9,
+  0x40, 0x38, 0x5c, 0x66, 0x37, 0xa6, 0xc3, 0x42, 0x28, 0xf1, 0x56, 0xaa,
+  0xdf, 0x15, 0x17, 0xdf, 0x5c, 0x08, 0xe2, 0x84, 0x80, 0x9f, 0xbb, 0xeb,
+  0xeb, 0x69, 0xd3, 0x37, 0x1a, 0x70, 0x8e, 0x13, 0x14, 0x79, 0x50, 0xdc,
+  0x0a, 0xb2, 0x1e, 0x96, 0x7c, 0xa6, 0x36, 0x00, 0x99, 0x06, 0x08, 0x28,
+  0x2d, 0x01, 0x35, 0xbc, 0x11, 0xc2, 0x30, 0x35, 0x6e, 0x25, 0x8c, 0x76,
+  0x26, 0x7c, 0xc7, 0xb0, 0x01, 0x69, 0xfb, 0x81, 0x50, 0x31, 0x79, 0x82,
+  0xb5, 0xed, 0xe9, 0x98, 0xef, 0x82, 0x60, 0x53, 0x42, 0x6b, 0x8a, 0xc9,
+  0x45, 0x05, 0x02, 0x17, 0x1b, 0x62, 0x11, 0x46, 0x82, 0xc4, 0xfa, 0x08,
+  0xce, 0x44, 0x1c, 0x73, 0x41, 0x2f, 0x3b, 0x8d, 0xce, 0x3e, 0x20, 0xa0,
+  0x8c, 0x18, 0xac, 0xd4, 0xf0, 0x8e, 0x9a, 0x16, 0x31, 0x46, 0x1d, 0xbe,
+  0x4d, 0x09, 0x6c, 0x28, 0x6d, 0x9b, 0x1c, 0xd0, 0x1a, 0x0e, 0xc3, 0xb0,
+  0xcf, 0x76, 0x77, 0x77, 0x39, 0x0c, 0xdb, 0x39, 0xa6, 0x0f, 0xbf, 0x3f,
+  0x3a, 0x3c, 0x7d, 0xfb, 0xf6, 0xe8, 0xdd, 0xab, 0xa3, 0x57, 0x9a, 0x53,
+  0xe7, 0xcc, 0xdd, 0xb2, 0x8b, 0x7f, 0x1b, 0x62, 0x1e, 0x36, 0xb0, 0xc6,
+  0xe6, 0xee, 0x46, 0xbc, 0xb5, 0xbb, 0x11, 0x01, 0x73, 0x26, 0xa6, 0x32,
+  0x38, 0x19, 0x23, 0xa4, 0x4d, 0x74, 0x35, 0x03, 0x05, 0x1a, 0xbb, 0x00,
+  0xd5, 0x08, 0x67, 0xa4, 0xd8, 0x96, 0x79, 0x5a, 0xa3, 0xb7, 0x29, 0x90,
+  0x10, 0xd5, 0xeb, 0x18, 0xb0, 0x7d, 0x9b, 0x2f, 0x21, 0x1a, 0x29, 0x71,
+  0xec, 0xd6, 0x06, 0x7e, 0xa8, 0x17, 0xbd, 0x06, 0xbd, 0xee, 0xa2, 0xb8,
+  0x63, 0xe6, 0x3c, 0xbc, 0x02, 0x0b, 0x24, 0xf5, 0x33, 0x25, 0x9a, 0xef,
+  0xe3, 0xeb, 0xdb, 0xfc, 0xfa, 0x1f, 0x9c, 0x9a, 0x34, 0xff, 0x74, 0xef,
+  0x6e, 0x6c, 0x2c, 0x89, 0x0c, 0xb1, 0xfb, 0xb2, 0x89, 0x0c, 0x01, 0x63,
+  0x53, 0xdf, 0x50, 0xad, 0x32, 0x9f, 0x83, 0xcd, 0xd3, 0x67, 0x4f, 0xd4,
+  0x9b, 0x83, 0x33, 0x7c, 0x3a, 0x3a, 0x7b, 0x7f, 0xfa, 0xdd, 0xdf, 0x6c,
+  0xd9, 0xfe, 0xcd, 0xa6, 0xe6, 0xa3, 0x0b, 0xe4, 0xc1, 0x20, 0x05, 0x55,
+  0x39, 0xf7, 0x73, 0x82, 0xac, 0x09, 0x63, 0x3c, 0x1c, 0x7a, 0xdf, 0x13,
+  0x05, 0xb1, 0x86, 0x00, 0xa1, 0xe1, 0x71, 0x6f, 0x95, 0x29, 0x48, 0x48,
+  0xe7, 0xa3, 0x10, 0x9e, 0x1d, 0x05, 0x6f, 0x70, 0x1a, 0x77, 0x19, 0xb7,
+  0x3f, 0xce, 0xf2, 0x11, 0xc3, 0xb6, 0x37, 0xe2, 0x22, 0x75, 0x39, 0x4b,
+  0x43, 0x41, 0x8b, 0xde, 0xa2, 0x8c, 0x3d, 0xea, 0xfc, 0x95, 0x4d, 0x92,
+  0x32, 0x1b, 0xdf, 0x37, 0xba, 0x7e, 0x69, 0x26, 0x3c, 0x85, 0xdd, 0x6d,
+  0x5f, 0xab, 0xc2, 0x93, 0x5f, 0xda, 0xce, 0x98, 0x0e, 0x09, 0x43, 0x31,
+  0x4a, 0x66, 0x04, 0x13, 0xeb, 0x09, 0x6c, 0xd0, 0xd8, 0xaa, 0x65, 0x41,
+  0x3e, 0x37, 0x1a, 0x3b, 0x6f, 0xb4, 0xc5, 0x20, 0x4e, 0x03, 0xda, 0x3b,
+  0xaf, 0x8f, 0x4f, 0x8e, 0xd6, 0xa2, 0xd7, 0x69, 0x2d, 0xa5, 0xb0, 0x5a,
+  0x76, 0x82, 0xfa, 0xdc, 0xbf, 0x91, 0xf6, 0x6c, 0xfa, 0x61, 0x08, 0x3a,
+  0x45, 0x30, 0x41, 0x58, 0xbc, 0xea, 0xa4, 0x49, 0x6a, 0x5d, 0x2d, 0xef,
+  0x37, 0x51, 0x0d, 0x15, 0x18, 0x4d, 0x38, 0xd6, 0x6c, 0x0d, 0x61, 0xa6,
+  0x40, 0x31, 0x86, 0x22, 0x24, 0xf5, 0xac, 0x21, 0xc1, 0x19, 0x38, 0x9a,
+  0x74, 0x85, 0x93, 0x96, 0x42, 0x18, 0x4d, 0x7c, 0xc9, 0xaa, 0xe9, 0x98,
+  0x3a, 0x3c, 0x86, 0x40, 0x05, 0xc7, 0xa9, 0x2d, 0xff, 0xa6, 0xc3, 0x0a,
+  0x96, 0xa3, 0x05, 0xfc, 0xe7, 0x76, 0x6d, 0xb0, 0xde, 0x25, 0xf7, 0xea,
+  0x78, 0x91, 0x06, 0x17, 0xbf, 0x51, 0xd2, 0x63, 0xaa, 0x20, 0xff, 0x77,
+  0xfd, 0x8b, 0x45, 0xd8, 0xb7, 0x47, 0x77, 0x60, 0xe7, 0x29, 0x55, 0x88,
+  0xcd, 0x87, 0xe3, 0xd9, 0xc8, 0xe4, 0x50, 0xa8, 0x55, 0xd2, 0x60, 0xcf,
+  0x80, 0x75, 0x43, 0x6e, 0x7d, 0x75, 0xe8, 0x60, 0x54, 0x02, 0xeb, 0x93,
+  0x4c, 0x54, 0x20, 0xbf, 0x77, 0x6e, 0xd5, 0x94, 0xbe, 0x68, 0x8a, 0x57,
+  0xb8, 0x44, 0x2f, 0x04, 0xa1, 0x98, 0x71, 0x17, 0x46, 0x51, 0x8c, 0xb0,
+  0x08, 0xcc, 0xc0, 0x44, 0xeb, 0x7c, 0xf1, 0xb1, 0x2b, 0x69, 0x6f, 0x48,
+  0x1e, 0x4b, 0xae, 0x56, 0xae, 0x82, 0x61, 0x40, 0xa9, 0xa2, 0x96, 0x3c,
+  0x81, 0x22, 0xd7, 0xa8, 0xa9, 0x98, 0x58, 0x33, 0xd4, 0xf7, 0xb9, 0x90,
+  0x98, 0xda, 0xe7, 0x96, 0xdc, 0xa2, 0x26, 0xa0, 0x7b, 0xca, 0xd7, 0x5d,
+  0xb9, 0xdb, 0x36, 0xe9, 0xdc, 0xcf, 0x34, 0x9d, 0x22, 0xbe, 0x35, 0x01,
+  0xb4, 0x23, 0x93, 0x03, 0xf1, 0xb3, 0x10, 0xb1, 0x65, 0x78, 0x9d, 0x51,
+  0xbd, 0xfb, 0x8c, 0x94, 0xe3, 0x24, 0xd7, 0x80, 0x0c, 0x4f, 0xd3, 0x34,
+  0x17, 0x05, 0x86, 0xed, 0x51, 0x04, 0x28, 0x6c, 0x9c, 0xb0, 0xe2, 0x89,
+  0x6e, 0x31, 0x6c, 0x4e, 0xa1, 0xf3, 0x19, 0x53, 0xa1, 0x9c, 0x39, 0x6f,
+  0xaa, 0xf6, 0x62, 0xd9, 0x3d, 0x69, 0xde, 0x81, 0xbe, 0x79, 0x20, 0x5b,
+  0x10, 0x03, 0x0b, 0x3d, 0xda, 0xb7, 0x06, 0x73, 0xb7, 0x4c, 0xb9, 0x6b,
+  0x72, 0x2f, 0x7a, 0x9f, 0x4e, 0xa8, 0xd4, 0x0c, 0xab, 0x08, 0xcc, 0xaa,
+  0x0d, 0x3c, 0xae, 0x57, 0xf1, 0x28, 0x5a, 0x19, 0x43, 0x1e, 0xd3, 0xdc,
+  0x28, 0x67, 0xcd, 0xcc, 0x44, 0xeb, 0x59, 0x24, 0x27, 0x91, 0x83, 0x56,
+  0xd8, 0xa9, 0x40, 0x28, 0xeb, 0xc9, 0x80, 0x31, 0xea, 0xff, 0x88, 0x70,
+  0x9b, 0xef, 0x01, 0xfb, 0x47, 0x9d, 0x37, 0xa0, 0xfd, 0xed, 0x75, 0x4c,
+  0x0f, 0x4f, 0x8a, 0x73, 0x70, 0x53, 0x4b, 0x97, 0x73, 0xc8, 0x06, 0xcd,
+  0xbd, 0xf6, 0xae, 0x0c, 0xa4, 0x23, 0x86, 0x5d, 0xad, 0xd2, 0xd4, 0xd4,
+  0x71, 0xfa, 0xd5, 0x32, 0xa6, 0xae, 0x92, 0x81, 0x09, 0xfc, 0xa2, 0x72,
+  0x9c, 0xd2, 0x77, 0xf1, 0x21, 0x7d, 0x3c, 0x7e, 0x43, 0xc3, 0x7d, 0xda,
+  0x31, 0x01, 0x98, 0xf6, 0xaf, 0x60, 0xe2, 0x9f, 0x84, 0xd2, 0x2c, 0xad,
+  0x0f, 0xc3, 0x62, 0x97, 0x53, 0x4e, 0x9d, 0xd2, 0x19, 0x97, 0x8a, 0x47,
+  0x64, 0x5d, 0x37, 0x9c, 0x22, 0xac, 0x98, 0x25, 0x1d, 0x30, 0x74, 0x38,
+  0x1c, 0x56, 0x62, 0x42, 0x15, 0x18, 0x1b, 0xa3, 0xb8, 0xb8, 0x88, 0xa9,
+  0xf0, 0x06, 0x6e, 0xa4, 0x6b, 0x4c, 0x00, 0x75, 0x4e, 0x1d, 0x41, 0x65,
+  0x11, 0xe2, 0xfd, 0x68, 0x14, 0xca, 0x29, 0x25, 0xcc, 0x89, 0xa9, 0xa3,
+  0x47, 0x6b, 0xfd, 0x1e, 0x6f, 0xe3, 0x9e, 0xd4, 0x7c, 0xd0, 0xeb, 0x79,
+  0x7a, 0xcb, 0x45, 0x0d, 0x88, 0xe1, 0x2f, 0x75, 0x76, 0x9e, 0xc7, 0x98,
+  0xaa, 0xee, 0xba, 0x6c, 0x12, 0xd1, 0xaa, 0xc9, 0xc4, 0x9f, 0x70, 0xc0,
+  0x84, 0xe2, 0x41, 0xb3, 0xa9, 0x76, 0x71, 0xe9, 0x2d, 0xcc, 0x8b, 0x47,
+  0x7b, 0x90, 0xda, 0xb3, 0xa0, 0xe1, 0xa1, 0xb9, 0x91, 0x20, 0xd6, 0xbe,
+  0x30, 0xe5, 0xb9, 0x55, 0x7d, 0x8f, 0xc2, 0xdc, 0x20, 0x32, 0xe4, 0xbe,
+  0x5a, 0x6f, 0xeb, 0xe6, 0x6c, 0x1e, 0x23, 0xd1, 0x4a, 0xe4, 0x23, 0x81,
+  0x32, 0x68, 0xdf, 0x0f, 0xc9, 0x80, 0x8d, 0xbe, 0x88, 0x83, 0x78, 0x91,
+  0x36, 0x36, 0x4e, 0x95, 0x95, 0x0e, 0xb5, 0x38, 0x3d, 0xd5, 0x00, 0xa1,
+  0x34, 0x90, 0x0e, 0x77, 0x77, 0xdd, 0xbb, 0xd5, 0xad, 0x8d, 0x25, 0xec,
+  0x56, 0xd3, 0x9d, 0x5d, 0x39, 0x41, 0x59, 0xab, 0xc1, 0xef, 0x15, 0x1d,
+  0xcd, 0x5c, 0xcb, 0x7b, 0x92, 0x10, 0x4c, 0x06, 0x0d, 0xd3, 0x6c, 0x17,
+  0xf5, 0x3c, 0xf0, 0x69, 0x4a, 0xfb, 0x41, 0xd4, 0x1e, 0xb4, 0x5f, 0x3a,
+  0x5e, 0x35, 0xce, 0x1e, 0x63, 0x71, 0xa4, 0xe8, 0x69, 0x90, 0x19, 0x71,
+  0x66, 0x0b, 0xbb, 0x5a, 0xc2, 0x9f, 0x36, 0xd7, 0x8c, 0x1e, 0x2b, 0xfd,
+  0x37, 0x16, 0x44, 0x75, 0x1d, 0xee, 0xe7, 0x8c, 0x59, 0x3d, 0xd2, 0x81,
+  0x00, 0x17, 0x07, 0xd3, 0x65, 0x0a, 0x5c, 0x91, 0x83, 0x52, 0xca, 0x43,
+  0x7a, 0x3e, 0x78, 0xff, 0xee, 0xf8, 0xdd, 0x57, 0x7b, 0x86, 0x3c, 0x28,
+  0x14, 0xdb, 0x9d, 0x96, 0x2d, 0xec, 0x49, 0x45, 0x3d, 0x39, 0x08, 0x5e,
+  0x20, 0x08, 0x7e, 0x2c, 0x8a, 0x5a, 0x14, 0xb3, 0x0c, 0x67, 0x67, 0x7b,
+  0x99, 0x72, 0x30, 0x93, 0x0b, 0xa2, 0xb4, 0x6a, 0x4f, 0x20, 0x04, 0x88,
+  0x26, 0x75, 0x31, 0x1e, 0x85, 0xc0, 0x83, 0xe2, 0x13, 0xbc, 0xc5, 0xb1,
+  0x0a, 0xc6, 0xd1, 0x63, 0x91, 0x9d, 0xc7, 0xc4, 0x37, 0x85, 0xcb, 0x3a,
+  0xdc, 0xae, 0x85, 0xca, 0x21, 0xd0, 0x74, 0x26, 0xc7, 0x61, 0x20, 0xeb,
+  0x83, 0x7b, 0xd7, 0xe5, 0x5e, 0xe3, 0x77, 0xee, 0xbc, 0x5c, 0x11, 0xcf,
+  0x54, 0x19, 0x39, 0xac, 0x0c, 0x49, 0xd4, 0x21, 0x11, 0xf0, 0xa5, 0x49,
+  0xdb, 0xb7, 0x64, 0xc6, 0x27, 0x8d, 0x21, 0x77, 0xe5, 0xa7, 0xb6, 0x26,
+  0xd0, 0x50, 0xe0, 0xd1, 0x25, 0x36, 0xb6, 0xc6, 0x86, 0x2d, 0x1d, 0x4e,
+  0xaa, 0x70, 0xe4, 0x1a, 0xa5, 0x6c, 0xdf, 0x84, 0x31, 0xb1, 0xc6, 0xa9,
+  0xad, 0x88, 0x5d, 0xce, 0xc5, 0x46, 0x32, 0xfa, 0x35, 0x9a, 0xce, 0xf1,
+  0x3b, 0x10, 0x0c, 0x7b, 0xd1, 0x7f, 0x16, 0xe9, 0x12, 0x9e, 0x32, 0x78,
+  0xfd, 0x03, 0xe8, 0x3e, 0xf1, 0xc1, 0x25, 0x89, 0xbc, 0xfb, 0xb4, 0x8a,
+  0xe1, 0xf9, 0xa4, 0x4a, 0xd7, 0xc1, 0x46, 0xdc, 0x58, 0x6e, 0x20, 0xbe,
+  0xbe, 0x96, 0x83, 0x4e, 0x3b, 0xa0, 0xb2, 0x1e, 0x9c, 0x41, 0x72, 0x49,
+  0x80, 0x38, 0x18, 0xb3, 0x48, 0xf1, 0x87, 0x8c, 0x34, 0xe7, 0x98, 0x03,
+  0xf1, 0x15, 0x2b, 0x88, 0xe3, 0x69, 0xb4, 0x8f, 0xd6, 0xcc, 0x65, 0x51,
+  0xde, 0x7f, 0xee, 0xa1, 0x6b, 0x63, 0xf5, 0x57, 0x84, 0x0f, 0x19, 0xd4,
+  0x32, 0x8c, 0xc6, 0x93, 0x0a, 0x63, 0x0b, 0x47, 0x44, 0xe0, 0xdb, 0x61,
+  0x7a, 0xd2, 0x9c, 0xc0, 0x6b, 0x77, 0x78, 0x49, 0xed, 0xea, 0x6c, 0x25,
+  0x8f, 0x93, 0xf0, 0xcc, 0x0a, 0x34, 0x27, 0x16, 0x61, 0x72, 0x12, 0x22,
+  0x27, 0x82, 0xf9, 0x44, 0xc9, 0xb6, 0xf2, 0xa5, 0x40, 0xbd, 0x79, 0x64,
+  0x04, 0x3a, 0xea, 0x8f, 0xea, 0x99, 0x31, 0x42, 0xbe, 0x03, 0xf3, 0xec,
+  0xcc, 0xfb, 0x66, 0x5b, 0xeb, 0x97, 0x19, 0xe0, 0xd2, 0xb4, 0x63, 0x98,
+  0x4d, 0x09, 0xf1, 0xc7, 0x8e, 0x3a, 0xba, 0x5e, 0xac, 0x3c, 0xf1, 0x34,
+  0xcd, 0x45, 0x8b, 0x24, 0xea, 0xf1, 0xcb, 0x99, 0x14, 0xa4, 0xc1, 0xd0,
+  0x59, 0xa9, 0x28, 0x81, 0x4b, 0x17, 0x3a, 0xd0, 0x36, 0xc2, 0xa8, 0xae,
+  0xcd, 0x0d, 0x44, 0x9c, 0xce, 0x06, 0x93, 0xd1, 0x6e, 0xb4, 0x0f, 0x7f,
+  0x78, 0x5a, 0x3f, 0x15, 0x8e, 0x44, 0xfd, 0x43, 0x54, 0xfd, 0x51, 0x92,
+  0xa3, 0x0a, 0xc3, 0x98, 0x7d, 0x4e, 0xe3, 0xea, 0xed, 0x2d, 0xd8, 0xfc,
+  0xbb, 0x44, 0xfb, 0x0f, 0x8c, 0x40, 0x58, 0xd4, 0x94, 0x1b, 0x3e, 0x07,
+  0x84, 0xd1, 0xba, 0x2e, 0x91, 0x54, 0x9b, 0x5b, 0x2f, 0x22, 0x2c, 0xb1,
+  0x7c, 0xfb, 0x6a, 0x17, 0x04, 0x71, 0x3a, 0xbc, 0xae, 0x66, 0x13, 0x53,
+  0x85, 0xc0, 0x15, 0x17, 0x2c, 0x77, 0x3c, 0xa4, 0x2b, 0x98, 0xf8, 0x38,
+  0x1b, 0x22, 0xc4, 0x41, 0xb7, 0x91, 0x94, 0x70, 0xa1, 0x49, 0x09, 0x8e,
+  0x37, 0xc8, 0xe8, 0x31, 0x94, 0xd3, 0xc6, 0x19, 0xa3, 0x81, 0x78, 0x31,
+  0xd0, 0x00, 0x3e, 0x8f, 0x2e, 0x34, 0x30, 0x35, 0x97, 0xa6, 0xaf, 0x25,
+  0x66, 0xba, 0x3b, 0xdc, 0x1c, 0xee, 0xbc, 0xdc, 0xd8, 0xda, 0x78, 0xb6,
+  0xb3, 0x91, 0xec, 0x26, 0x83, 0x8d, 0x8b, 0xad, 0x8d, 0xed, 0x9d, 0x17,
+  0xbb, 0x3b, 0xc3, 0xed, 0xad, 0xcd, 0xe4, 0x45, 0x54, 0x2d, 0x4c, 0x1a,
+  0x91, 0x91, 0xaa, 0xab, 0x64, 0x6b, 0xf7, 0x59, 0xb4, 0xcf, 0xff, 0x0d,
+  0x6f, 0x0e, 0xed, 0xcd, 0xdc, 0xad, 0x49, 0xa2, 0x2f, 0xa9, 0x14, 0x32,
+  0xd6, 0x6a, 0xdd, 0xfe, 0x9b, 0x03, 0x1c, 0x12, 0x8c, 0xa0, 0xab, 0xb0,
+  0x43, 0x44, 0x28, 0xce, 0x04, 0x77, 0x48, 0xdc, 0x8b, 0x0e, 0x17, 0x93,
+  0x78, 0x9e, 0xe2, 0xe8, 0x10, 0x9c, 0xff, 0x0d, 0x9f, 0x4e, 0x7f, 0x19,
+  0x85, 0x85, 0x2e, 0xef, 0x5e, 0x7d, 0x73, 0xfd, 0xf6, 0xfc, 0xaf, 0x77,
+  0x6f, 0xbf, 0xfa, 0xeb, 0xe6, 0xe9, 0xab, 0xd1, 0xe4, 0xed, 0x4f, 0x7f,
+  0xdd, 0x7e, 0xfb, 0xd3, 0xf0, 0xe7, 0xbf, 0xfd, 0x74, 0x70, 0x7f, 0x7a,
+  0xfe, 0xb7, 0xdd, 0xb7, 0x93, 0xf7, 0xd7, 0x6f, 0x7f, 0xfa, 0x66, 0xf2,
+  0xee, 0xd5, 0x5f, 0x3f, 0x5b, 0x48, 0x70, 0xdf, 0x43, 0xf1, 0x62, 0xa3,
+  0xe5, 0x9b, 0x42, 0x71, 0xb6, 0x6f, 0x20, 0xfc, 0x82, 0xd6, 0x71, 0xbf,
+  0xd9, 0x0e, 0x49, 0x91, 0x0b, 0xdf, 0xf4, 0xcf, 0xfb, 0x26, 0x1d, 0xc2,
+  0xc4, 0x69, 0x25, 0x0f, 0x51, 0x8a, 0x12, 0x42, 0x68, 0x60, 0xd1, 0x14,
+  0x34, 0xa0, 0x9a, 0xaf, 0x34, 0x82, 0x85, 0x90, 0xda, 0x77, 0x1a, 0x0f,
+  0x3b, 0xc6, 0xa4, 0xe2, 0x5c, 0x20, 0xed, 0xbe, 0xe9, 0xd4, 0x6b, 0xad,
+  0x8b, 0x83, 0xf9, 0x5c, 0x98, 0x90, 0xba, 0x8d, 0x2d, 0x04, 0xc2, 0x8e,
+  0x06, 0xd3, 0x11, 0xa4, 0x67, 0x5b, 0xb1, 0x78, 0x76, 0xe4, 0x10, 0x15,
+  0x0c, 0x19, 0x53, 0x7c, 0xc9, 0x0e, 0x8b, 0x80, 0x57, 0xb1, 0x6f, 0xf2,
+  0xfd, 0x3a, 0x1d, 0x07, 0x08, 0x71, 0xf5, 0xe7, 0xb4, 0x2c, 0xa4, 0x66,
+  0x79, 0x8d, 0xd6, 0x79, 0x53, 0x64, 0xa3, 0x48, 0x80, 0x1e, 0xd7, 0x15,
+  0x72, 0xd7, 0x93, 0xe9, 0x56, 0xb7, 0x23, 0xf0, 0x41, 0xc4, 0xdb, 0x85,
+  0x21, 0x89, 0x30, 0x06, 0x79, 0xef, 0x89, 0x9e, 0x52, 0xb1, 0x9d, 0x09,
+  0x56, 0x8d, 0x5c, 0x7f, 0x26, 0xf4, 0xd2, 0xb6, 0x73, 0x29, 0x4b, 0x51,
+  0x8a, 0x08, 0x19, 0x88, 0x52, 0x7d, 0x46, 0x41, 0x4f, 0x2b, 0xb1, 0x00,
+  0xaf, 0x68, 0x69, 0xae, 0x47, 0xe6, 0xa3, 0x4d, 0x7a, 0x42, 0x43, 0x1d,
+  0x4c, 0x98, 0x6a, 0x70, 0x32, 0xbc, 0xbd, 0xd1, 0x7b, 0x39, 0xa7, 0x9d,
+  0x57, 0x03, 0xd0, 0x19, 0xc1, 0x23, 0x0c, 0xfc, 0x09, 0x29, 0xde, 0xe8,
+  0x61, 0x43, 0xe2, 0x21, 0xa8, 0xb0, 0xa6, 0x99, 0x79, 0xab, 0xc1, 0x27,
+  0xd7, 0xf1, 0x09, 0xce, 0xda, 0x35, 0x6c, 0x87, 0xcd, 0x0a, 0x48, 0xdf,
+  0x22, 0x51, 0x60, 0xb2, 0xd4, 0x0c, 0x2e, 0x37, 0x25, 0x13, 0xfa, 0xee,
+  0x0e, 0x93, 0xaf, 0xaa, 0x21, 0x1f, 0xab, 0x77, 0x0b, 0xa6, 0x91, 0x03,
+  0xb7, 0xa7, 0xe0, 0x2e, 0xb4, 0x7f, 0xe8, 0xcf, 0xf3, 0x0c, 0x08, 0xf3,
+  0xdd, 0xca, 0xa6, 0x95, 0x31, 0xa8, 0x34, 0x37, 0x9e, 0xa0, 0xa3, 0x81,
+  0x4d, 0xa5, 0xd8, 0x01, 0x5f, 0xdc, 0xe6, 0x97, 0x25, 0xc6, 0x53, 0x08,
+  0xa5, 0x23, 0x09, 0x25, 0xa4, 0x84, 0xf8, 0xdd, 0x4d, 0x59, 0x7b, 0xf6,
+  0xac, 0xb7, 0xd1, 0xb5, 0x54, 0xc1, 0xaa, 0x64, 0x4e, 0xc7, 0x5c, 0x98,
+  0xb1, 0xf6, 0x10, 0x4f, 0xf0, 0x36, 0x2e, 0xeb, 0x78, 0x6d, 0x32, 0xc3,
+  0x46, 0x57, 0x46, 0xda, 0xec, 0x6d, 0x3c, 0x86, 0x21, 0x50, 0xe8, 0x37,
+  0xf8, 0x00, 0xde, 0x73, 0x3d, 0x59, 0x5a, 0x9c, 0x9b, 0x79, 0xa7, 0xc5,
+  0xf1, 0x27, 0x71, 0x54, 0x1b, 0x51, 0x32, 0xdd, 0xa1, 0x9e, 0xb2, 0x7e,
+  0xfc, 0xfa, 0x63, 0xab, 0xdf, 0xe5, 0xd4, 0xdb, 0xda, 0x77, 0x1d, 0x62,
+  0x53, 0x52, 0x76, 0xf0, 0x5f, 0x5b, 0xed, 0x83, 0x02, 0xbf, 0x7e, 0x22,
+  0x5d, 0x36, 0x9f, 0xb6, 0xa0, 0xcd, 0x5f, 0x56, 0xce, 0xbf, 0xd1, 0x8d,
+  0x1c, 0xda, 0x68, 0xf7, 0x72, 0x5e, 0x9a, 0x65, 0x84, 0xd6, 0x70, 0x7e,
+  0x9f, 0x67, 0x7a, 0x01, 0xd1, 0x17, 0x8a, 0x32, 0x46, 0x57, 0x1f, 0xb0,
+  0xaa, 0xe7, 0x7a, 0x09, 0x12, 0x02, 0x98, 0xbb, 0x42, 0x87, 0x18, 0x75,
+  0xb8, 0xc2, 0xa3, 0x49, 0xa9, 0x4b, 0x0d, 0x9b, 0xbd, 0x0a, 0x97, 0x68,
+  0xd3, 0xf1, 0xd8, 0xb2, 0x7e, 0x3d, 0xfe, 0x01, 0x12, 0x24, 0xfa, 0x30,
+  0xa5, 0x13, 0x88, 0xca, 0x75, 0x6d, 0xbb, 0x5d, 0xd3, 0xec, 0xa2, 0x79,
+  0xb3, 0xb3, 0x88, 0xd7, 0x9a, 0x31, 0x4b, 0xd8, 0x41, 0x95, 0x7e, 0xa7,
+  0x42, 0x50, 0x26, 0x74, 0x15, 0x46, 0xc9, 0x6d, 0x82, 0x79, 0x4c, 0xdc,
+  0xb6, 0xd8, 0x4c, 0x32, 0xd4, 0x1f, 0x4b, 0xc5, 0xca, 0xa8, 0xd0, 0x51,
+  0x1a, 0x95, 0xcf, 0x30, 0x8e, 0xb8, 0x09, 0x41, 0x63, 0xa7, 0x84, 0x44,
+  0xdb, 0x0f, 0x36, 0x10, 0x2c, 0xa2, 0x3b, 0x88, 0x9d, 0x42, 0x48, 0xa4,
+  0xf9, 0x98, 0xf1, 0x8f, 0xe0, 0x1b, 0x6f, 0xaf, 0x1e, 0xd7, 0x46, 0x3c,
+  0xfc, 0xea, 0x63, 0xfb, 0x89, 0x7b, 0xb0, 0xd5, 0xad, 0x3e, 0xf6, 0x4c,
+  0xa3, 0xde, 0xe3, 0x8e, 0xdf, 0x46, 0x37, 0x38, 0x3b, 0xe4, 0x62, 0xf7,
+  0x78, 0x36, 0x80, 0xe5, 0x5f, 0x06, 0x98, 0xf6, 0x49, 0xa7, 0x75, 0x2b,
+  0x08, 0x7d, 0x4d, 0x1c, 0xd1, 0x75, 0xeb, 0x87, 0xed, 0x5d, 0xe1, 0xb4,
+  0xe8, 0x32, 0xbb, 0x6d, 0x79, 0xd8, 0x3b, 0x61, 0xfe, 0x26, 0x3b, 0xc5,
+  0xae, 0xf4, 0x81, 0x05, 0x17, 0x81, 0xce, 0xe5, 0xe1, 0xa9, 0xcc, 0xf8,
+  0xa0, 0x34, 0x02, 0x31, 0x5e, 0xa5, 0xa2, 0x4c, 0xd2, 0x62, 0x87, 0xcb,
+  0xf1, 0xda, 0x33, 0xaf, 0x3c, 0x31, 0x24, 0x88, 0xe4, 0x5f, 0xb2, 0xf3,
+  0x84, 0x2f, 0x81, 0xb7, 0x7b, 0x66, 0xa8, 0x39, 0x7c, 0xe8, 0x5d, 0xc0,
+  0x73, 0xfb, 0xdc, 0x3f, 0x8e, 0x13, 0xe7, 0xf0, 0x9d, 0xe1, 0xcb, 0x16,
+  0x27, 0xce, 0x3b, 0x36, 0x2a, 0x5e, 0xbd, 0x7b, 0x6f, 0x8e, 0x78, 0xdd,
+  0x9e, 0x13, 0x5f, 0x33, 0x9e, 0xc6, 0x76, 0x8e, 0xfb, 0xdd, 0x34, 0x2d,
+  0xb3, 0x09, 0x21, 0xf5, 0xf7, 0xa2, 0x57, 0xb6, 0x4a, 0x80, 0x1a, 0x04,
+  0x78, 0x81, 0x89, 0xd1, 0x2c, 0x9c, 0x4b, 0xff, 0xc0, 0x49, 0xd8, 0x96,
+  0x82, 0x0a, 0x9b, 0x86, 0x4d, 0xd6, 0x9b, 0x80, 0xad, 0x14, 0x5e, 0x1b,
+  0x10, 0x89, 0xd2, 0x69, 0x26, 0xa3, 0x64, 0xec, 0x61, 0x85, 0x8e, 0x64,
+  0x30, 0x11, 0xe9, 0xb7, 0xdd, 0x54, 0x5d, 0xa3, 0x14, 0x63, 0xf9, 0x7c,
+  0x28, 0x2a, 0x48, 0x5f, 0x34, 0x0d, 0x47, 0x51, 0x87, 0x53, 0xbf, 0x20,
+  0x7c, 0x04, 0x5b, 0x95, 0x1f, 0x8c, 0xeb, 0xb8, 0x7f, 0x33, 0xe4, 0x64,
+  0xbb, 0x46, 0x62, 0x97, 0xd7, 0x91, 0x86, 0x22, 0x68, 0x18, 0x3b, 0x22,
+  0x80, 0x0d, 0x4c, 0x1b, 0xa2, 0xae, 0x45, 0xd4, 0x78, 0x86, 0xcd, 0x26,
+  0xcd, 0x18, 0xc3, 0x8d, 0xb4, 0x9c, 0xc6, 0xa5, 0xe6, 0x7e, 0x93, 0x86,
+  0xe4, 0xba, 0xd2, 0x25, 0x49, 0xc0, 0x89, 0xe1, 0x07, 0xcc, 0x9c, 0x39,
+  0x96, 0xbf, 0x40, 0x01, 0x69, 0xf9, 0xa6, 0xb9, 0x87, 0x18, 0xc2, 0xcb,
+  0xfe, 0xf5, 0xc3, 0xf1, 0x61, 0x23, 0x7d, 0x45, 0x72, 0x83, 0x7c, 0x87,
+  0xaa, 0x93, 0x8e, 0xc3, 0xed, 0xfd, 0xe4, 0xc9, 0x0b, 0xb4, 0x46, 0xb4,
+  0x1a, 0x53, 0xeb, 0xa7, 0x1a, 0xdb, 0x5b, 0xe4, 0x01, 0xd5, 0x0c, 0x34,
+  0xdc, 0xa7, 0x9c, 0xf5, 0xed, 0x5f, 0x7c, 0xd6, 0xb7, 0x7a, 0x66, 0xa8,
+  0x5f, 0xf9, 0xac, 0x6f, 0xff, 0x3a, 0x67, 0x5d, 0x25, 0x91, 0xf3, 0x77,
+  0xf7, 0xd8, 0xb7, 0x67, 0xc7, 0x62, 0xc0, 0xd5, 0xb6, 0x9b, 0x4d, 0xa7,
+  0x62, 0xc6, 0xb1, 0x8c, 0xc5, 0xa0, 0x8c, 0xd9, 0xee, 0x0d, 0x61, 0xb8,
+  0x44, 0xda, 0x86, 0xca, 0x88, 0xfe, 0x63, 0x6e, 0xdd, 0xe8, 0xf6, 0x7a,
+  0x38, 0x61, 0xa8, 0x2f, 0x91, 0xd6, 0x9a, 0xbc, 0x12, 0x00, 0x03, 0xcc,
+  0x86, 0x88, 0xfc, 0x6e, 0x53, 0x47, 0xc8, 0x10, 0x15, 0x6b, 0xa9, 0x9c,
+  0x51, 0x6e, 0x4c, 0x74, 0x30, 0x25, 0x1f, 0xc0, 0x66, 0xef, 0xae, 0x6b,
+  0xba, 0x81, 0x05, 0xbc, 0x9f, 0x65, 0x4a, 0x44, 0xc6, 0xa8, 0xbf, 0x94,
+  0x7e, 0xb7, 0xa7, 0x43, 0xa3, 0xb3, 0x39, 0x3c, 0xc6, 0x43, 0x54, 0x72,
+  0x1c, 0x61, 0x0b, 0x0e, 0xca, 0xa5, 0xd7, 0x7c, 0x7b, 0x70, 0x5f, 0x07,
+  0xe0, 0x5a, 0x70, 0xd5, 0x48, 0x85, 0x55, 0xb6, 0xd0, 0xe0, 0xa6, 0x07,
+  0x3a, 0xae, 0x75, 0x23, 0x2c, 0x9d, 0x21, 0x0a, 0x20, 0xd6, 0x85, 0xc9,
+  0xe6, 0xa0, 0x96, 0xc6, 0x97, 0x18, 0xe5, 0x2c, 0x58, 0x1c, 0x78, 0x4e,
+  0x47, 0xcc, 0xa9, 0x90, 0x52, 0x35, 0xad, 0x03, 0x93, 0x66, 0x3d, 0xc1,
+  0xd6, 0x03, 0x0d, 0xe5, 0xda, 0x24, 0xf9, 0x62, 0xd6, 0x17, 0xad, 0x8d,
+  0x0e, 0x14, 0x9c, 0xd8, 0x20, 0x17, 0xce, 0xbc, 0x0e, 0x77, 0x57, 0xf7,
+  0xd3, 0xe5, 0xef, 0xd2, 0x20, 0xa3, 0x2c, 0xce, 0xa4, 0xcd, 0x90, 0x79,
+  0x25, 0x19, 0xa3, 0xed, 0xf8, 0x90, 0x14, 0x0d, 0xaf, 0x19, 0x9f, 0x13,
+  0xec, 0xe3, 0xa4, 0x3e, 0x6e, 0x6d, 0x2f, 0xc9, 0x7b, 0xaa, 0xb5, 0x87,
+  0xfb, 0x0c, 0x5b, 0x60, 0x5d, 0x06, 0x04, 0xd4, 0x3c, 0x10, 0x8d, 0xba,
+  0x52, 0xd4, 0x4a, 0x94, 0x6f, 0xf4, 0xf5, 0x74, 0x61, 0xc3, 0x8a, 0xeb,
+  0x2c, 0xf5, 0x90, 0xa3, 0x46, 0xd4, 0xdf, 0x94, 0x7d, 0x8f, 0xb6, 0x23,
+  0x59, 0x43, 0x6c, 0x69, 0x13, 0xb1, 0x5e, 0xaf, 0x17, 0x80, 0x05, 0xbd,
+  0xc9, 0xd2, 0xdb, 0x86, 0xca, 0x23, 0x13, 0xeb, 0x52, 0x33, 0x87, 0x8c,
+  0xf3, 0x3e, 0xc0, 0x7e, 0xbf, 0x41, 0x0a, 0xc1, 0x90, 0x03, 0xec, 0x50,
+  0x32, 0x07, 0x8c, 0x61, 0xf1, 0xbe, 0x64, 0xcb, 0x89, 0x3c, 0xf7, 0x83,
+  0x8e, 0x18, 0xb8, 0xe6, 0x9d, 0xaa, 0x42, 0xb8, 0x57, 0xdc, 0x56, 0xcb,
+  0x36, 0x04, 0xee, 0x62, 0x80, 0xb0, 0xbc, 0x8f, 0xa8, 0xbf, 0xbd, 0xbd,
+  0x1b, 0x68, 0x3a, 0x5c, 0xc7, 0x0f, 0xcc, 0x4a, 0x7d, 0xad, 0x18, 0xe2,
+  0xb9, 0x7d, 0xbe, 0x28, 0x16, 0x89, 0xdf, 0xe9, 0xb5, 0x5a, 0x06, 0xf3,
+  0xcd, 0xa8, 0x7a, 0x00, 0x28, 0x10, 0x43, 0x0c, 0x0e, 0x23, 0xa1, 0xb5,
+  0xe5, 0x2c, 0x46, 0x26, 0x03, 0xd5, 0x1f, 0xb2, 0xa5, 0x76, 0x32, 0x95,
+  0x53, 0x7c, 0xa0, 0x04, 0xe7, 0xfc, 0x16, 0xfe, 0x70, 0x28, 0x31, 0xd4,
+  0x1b, 0xa4, 0xb1, 0x0c, 0xd0, 0x85, 0x61, 0x6d, 0x0c, 0x98, 0x8b, 0xe7,
+  0x5a, 0xf0, 0x5c, 0xa5, 0x5f, 0x57, 0xdb, 0x3b, 0x64, 0x71, 0xb8, 0x22,
+  0x0b, 0x7c, 0x2e, 0xc1, 0x03, 0xb2, 0xf0, 0x4c, 0x43, 0x02, 0xf9, 0x40,
+  0xe5, 0xf4, 0x75, 0xf3, 0x50, 0x1f, 0xad, 0x5a, 0x8c, 0x03, 0x73, 0x23,
+  0xeb, 0x5e, 0x68, 0x8b, 0x59, 0x3d, 0x63, 0x00, 0x52, 0x38, 0x4f, 0xc5,
+  0x0c, 0x73, 0xf9, 0x49, 0xf6, 0x09, 0x90, 0xa0, 0x60, 0x07, 0x7a, 0xac,
+  0xa4, 0x2c, 0x84, 0xb4, 0xef, 0x55, 0xe9, 0x3a, 0xf0, 0x7c, 0xb5, 0x5e,
+  0x55, 0x63, 0xfc, 0x5e, 0x45, 0xd8, 0xf8, 0x73, 0x83, 0xcf, 0xac, 0xff,
+  0xd3, 0xb6, 0x37, 0x0b, 0x6e, 0xe6, 0xd1, 0xfa, 0x21, 0x31, 0x23, 0xef,
+  0x2d, 0x79, 0x93, 0x73, 0xfe, 0x80, 0x79, 0x99, 0x6f, 0xc7, 0x61, 0x82,
+  0x0b, 0x68, 0xdc, 0x76, 0x0a, 0x7b, 0xc0, 0xcd, 0x98, 0xda, 0x2e, 0xf3,
+  0x33, 0x6e, 0x9b, 0x86, 0xae, 0x6d, 0x17, 0x94, 0x8c, 0x25, 0xb3, 0xcd,
+  0xae, 0x36, 0xa3, 0xd8, 0x8e, 0xad, 0x11, 0xf6, 0x49, 0x2b, 0xe7, 0x41,
+  0x34, 0x44, 0x22, 0x6e, 0xdc, 0x2c, 0x4b, 0xd8, 0x16, 0x03, 0x65, 0x80,
+  0x8d, 0xd8, 0x0d, 0xc6, 0xf2, 0x90, 0x02, 0x51, 0x63, 0x90, 0x4c, 0x01,
+  0xf4, 0xef, 0x79, 0xa8, 0x95, 0xce, 0xca, 0xb0, 0x78, 0x7b, 0xcf, 0xfa,
+  0x6c, 0x6e, 0x6f, 0x6f, 0x7b, 0x8b, 0x02, 0x0c, 0xbf, 0x38, 0x59, 0xb7,
+  0x39, 0xdc, 0x69, 0x1e, 0x9d, 0x64, 0xf9, 0xec, 0xce, 0x01, 0xfb, 0xd5,
+  0x26, 0xd4, 0xb6, 0xc0, 0xfe, 0x9b, 0xf7, 0xaf, 0xbb, 0xc6, 0x33, 0xad,
+  0x38, 0xab, 0x94, 0x0b, 0x52, 0xf9, 0xda, 0x77, 0x94, 0x66, 0xc4, 0xbc,
+  0xdc, 0xa6, 0xec, 0xf0, 0xe0, 0xec, 0xe3, 0xbb, 0xa3, 0xf3, 0x8f, 0xef,
+  0x0f, 0xbe, 0x45, 0x12, 0xb2, 0x47, 0x18, 0x34, 0x06, 0xcc, 0xe2, 0x29,
+  0x8b, 0x02, 0x6e, 0x8a, 0xb7, 0x78, 0xa9, 0x66, 0x39, 0x21, 0xed, 0x06,
+  0xb3, 0xd2, 0x15, 0x3d, 0x9c, 0xe7, 0x89, 0x93, 0xd9, 0x73, 0xce, 0x00,
+  0xd2, 0xeb, 0x3a, 0x2d, 0xf3, 0x74, 0xdc, 0x2b, 0xca, 0x4b, 0x3c, 0x0a,
+  0xeb, 0xaf, 0xe4, 0x0a, 0x08, 0x0e, 0xb7, 0x2e, 0xe9, 0xd7, 0x18, 0x1c,
+  0xb8, 0x29, 0x2f, 0xd0, 0x1b, 0xbe, 0x34, 0xcb, 0xbb, 0x5b, 0xb7, 0x24,
+  0xe3, 0x8f, 0xf2, 0xca, 0x0e, 0xe0, 0xb0, 0xfa, 0x0e, 0x49, 0xf4, 0xe9,
+  0xcd, 0xce, 0x22, 0x55, 0xa2, 0x6e, 0x58, 0x5e, 0x28, 0x32, 0xc6, 0x37,
+  0x1c, 0x06, 0x21, 0x3f, 0xb6, 0x9b, 0xa7, 0x9f, 0x72, 0x62, 0x6b, 0x37,
+  0x80, 0x78, 0x49, 0x7a, 0x7e, 0x61, 0x60, 0x4a, 0x09, 0x32, 0x07, 0x0b,
+  0x0c, 0x96, 0x3e, 0xfa, 0x30, 0xdb, 0xa5, 0x56, 0xef, 0x28, 0xcb, 0x6d,
+  0xb7, 0xe2, 0x7c, 0x77, 0xe4, 0x33, 0xdf, 0xab, 0x03, 0x1f, 0x76, 0x26,
+  0x0b, 0x4f, 0xc8, 0xcf, 0x7e, 0x19, 0xe9, 0x9e, 0x3d, 0x9d, 0x74, 0x3b,
+  0x4f, 0x20, 0xdd, 0xb3, 0xdf, 0x9e, 0x74, 0x3b, 0x41, 0xd2, 0x39, 0x93,
+  0x8d, 0x7f, 0x42, 0xd2, 0xfd, 0x34, 0xcb, 0xaf, 0x63, 0x58, 0x35, 0xea,
+  0x49, 0xb1, 0x68, 0x58, 0x61, 0xcf, 0xc2, 0xb7, 0xa6, 0xea, 0x9f, 0x02,
+  0x27, 0xdc, 0xe8, 0x46, 0x3a, 0x6b, 0xd1, 0x6b, 0x8a, 0xbb, 0xc1, 0x16,
+  0xad, 0x86, 0x16, 0x3d, 0x8b, 0xc2, 0xb3, 0x63, 0x33, 0x84, 0x64, 0xab,
+  0x86, 0xe8, 0x02, 0x45, 0x03, 0xb4, 0x23, 0xb3, 0xd1, 0x61, 0x3b, 0xda,
+  0xbc, 0x9c, 0x04, 0x59, 0xe2, 0x23, 0x7a, 0x0f, 0x39, 0x3b, 0x95, 0x24,
+  0x8e, 0x5c, 0xf5, 0x14, 0xfe, 0x94, 0xfa, 0xfc, 0xa4, 0x62, 0xfb, 0x18,
+  0x01, 0xcf, 0x75, 0xe8, 0x4c, 0xda, 0x06, 0xf8, 0x22, 0xf1, 0xfc, 0x7e,
+  0x8a, 0x03, 0x46, 0x83, 0x12, 0xf4, 0x1b, 0x0a, 0x07, 0x8d, 0x6f, 0x31,
+  0xe1, 0x5a, 0x67, 0xd8, 0x9a, 0x9c, 0x26, 0x9b, 0x51, 0xfa, 0x20, 0xe6,
+  0x5d, 0xb5, 0xb5, 0x8b, 0x71, 0x81, 0x02, 0x75, 0xf4, 0x04, 0x1b, 0x39,
+  0xb4, 0x33, 0x51, 0x3c, 0xd0, 0x2f, 0x3f, 0x36, 0x92, 0x67, 0xc5, 0xcf,
+  0x00, 0xf7, 0x9b, 0xdf, 0xe6, 0x3b, 0x77, 0x68, 0x7f, 0x10, 0xff, 0xe4,
+  0xb6, 0x73, 0x8f, 0xe3, 0xeb, 0x34, 0x9d, 0x26, 0x63, 0x02, 0x17, 0xc5,
+  0xb4, 0xf1, 0xfd, 0x39, 0x45, 0x57, 0x0d, 0xf6, 0xab, 0x14, 0x14, 0x80,
+  0x5e, 0x71, 0xa1, 0xd4, 0xf8, 0xb6, 0x60, 0x7e, 0x99, 0x50, 0xd8, 0x17,
+  0xc3, 0xad, 0x83, 0x70, 0x87, 0x73, 0x4d, 0xfa, 0x36, 0x53, 0x40, 0xed,
+  0x72, 0x60, 0xf3, 0x57, 0x38, 0x53, 0x2b, 0x32, 0x6d, 0x19, 0xa8, 0x50,
+  0xe2, 0x26, 0xc3, 0x7a, 0xac, 0x76, 0x6f, 0xaf, 0xd6, 0x08, 0x84, 0xd2,
+  0xde, 0xe8, 0x9d, 0xca, 0x2c, 0x42, 0x7d, 0xad, 0x8d, 0x16, 0x81, 0xf9,
+  0x25, 0xf7, 0x55, 0x9d, 0x4e, 0x3c, 0xc6, 0xd5, 0x0e, 0x65, 0xd2, 0x90,
+  0xf6, 0xf0, 0xec, 0xe3, 0xd7, 0x47, 0x47, 0x67, 0xc7, 0xaf, 0x4e, 0x8e,
+  0xe4, 0x5c, 0x9a, 0x1f, 0xbd, 0x3b, 0xff, 0xe6, 0x04, 0x1b, 0x1e, 0x0f,
+  0xaf, 0x31, 0x82, 0x28, 0x69, 0x3e, 0xed, 0x63, 0x25, 0x59, 0x38, 0x72,
+  0xb7, 0x21, 0x7c, 0xc9, 0x10, 0xdd, 0x4a, 0x07, 0xc7, 0xdf, 0x81, 0xf9,
+  0x72, 0x16, 0x7f, 0xf8, 0xce, 0x6b, 0x7e, 0xdc, 0xc0, 0x9f, 0x68, 0x3b,
+  0x0f, 0x0c, 0x1a, 0x45, 0x1c, 0xe7, 0x85, 0xdd, 0xc0, 0xb9, 0x05, 0x56,
+  0xbf, 0xb2, 0x2e, 0x01, 0xc3, 0xcd, 0x72, 0xa3, 0x76, 0xf1, 0x8b, 0x32,
+  0xb4, 0x5b, 0xc4, 0xf4, 0x6c, 0x23, 0xd2, 0x02, 0xb7, 0x25, 0xcf, 0x43,
+  0x8b, 0x25, 0xb7, 0x16, 0x5f, 0xbe, 0xf8, 0xfc, 0x3d, 0xf5, 0x51, 0x89,
+  0xf6, 0xf1, 0xcf, 0xcf, 0x83, 0x86, 0x52, 0x74, 0x56, 0x66, 0x37, 0xa8,
+  0xf9, 0xc3, 0xc3, 0x9c, 0x56, 0x80, 0xcf, 0xf6, 0x4c, 0xba, 0x81, 0x64,
+  0xea, 0xe2, 0x28, 0x94, 0xa7, 0x4f, 0xa3, 0x86, 0xdc, 0xa5, 0x94, 0x83,
+  0x85, 0x21, 0x25, 0x33, 0x5a, 0x06, 0xec, 0xf6, 0xea, 0xe8, 0x7d, 0x37,
+  0x3a, 0x3b, 0x7a, 0xcb, 0xa0, 0x15, 0x47, 0xef, 0xbe, 0x92, 0xc6, 0x1d,
+  0xec, 0x6a, 0xa2, 0xce, 0x1d, 0x98, 0xc5, 0xe1, 0x03, 0x59, 0x38, 0x74,
+  0x84, 0xd7, 0xa9, 0x98, 0xb1, 0xaa, 0x40, 0xad, 0xf9, 0xc3, 0x91, 0xa5,
+  0x0d, 0x51, 0x61, 0x69, 0x42, 0x0d, 0xea, 0x4e, 0xf7, 0xe0, 0x56, 0x44,
+  0xfb, 0xf0, 0x47, 0x68, 0x13, 0xc0, 0x34, 0x7d, 0xb3, 0xe6, 0xef, 0x83,
+  0x68, 0xda, 0xa6, 0x84, 0x41, 0xac, 0x4c, 0xa4, 0x33, 0x6f, 0x05, 0xd0,
+  0xda, 0x4f, 0xa6, 0x57, 0xda, 0xe7, 0xd2, 0xf8, 0x82, 0xab, 0xcf, 0x53,
+  0x49, 0x97, 0xa6, 0x7e, 0xa4, 0xfd, 0x37, 0x5d, 0x3c, 0x24, 0x04, 0x28,
+  0x60, 0xa9, 0x1c, 0x04, 0xae, 0xa3, 0xac, 0xb9, 0x40, 0xe3, 0x09, 0xd8,
+  0xcc, 0x6c, 0xc4, 0xc8, 0xa0, 0x98, 0xa3, 0x5b, 0x94, 0x98, 0x48, 0x1f,
+  0x45, 0x2b, 0xff, 0xdf, 0x7a, 0xaf, 0xaa, 0xae, 0xd6, 0xb3, 0xd1, 0xc7,
+  0xb2, 0x4a, 0x56, 0xda, 0xf7, 0xaf, 0xf3, 0xeb, 0x11, 0xfe, 0x3a, 0x5a,
+  0xe9, 0x99, 0x47, 0xe5, 0xef, 0xf8, 0xf3, 0xd0, 0x0e, 0xeb, 0xad, 0xcb,
+  0x6e, 0x22, 0x2d, 0x25, 0x3c, 0x9d, 0xa6, 0x39, 0xda, 0xf5, 0xe3, 0x6c,
+  0x50, 0x82, 0x4e, 0x6e, 0xfb, 0x07, 0xa7, 0xf9, 0x25, 0xe5, 0x2c, 0x4e,
+  0xaf, 0x87, 0xd5, 0xe6, 0xa6, 0xdf, 0x7b, 0xd2, 0xa4, 0x1b, 0x9a, 0xb2,
+  0xd0, 0xb3, 0xaf, 0x0f, 0xfb, 0x7f, 0xda, 0xdc, 0xa4, 0x02, 0xdf, 0x55,
+  0x2c, 0x95, 0x7c, 0xbe, 0xbb, 0xb9, 0xb5, 0x16, 0xb2, 0x09, 0x3c, 0x3c,
+  0x5f, 0x06, 0xe1, 0x72, 0xb6, 0x8f, 0xd2, 0x88, 0x05, 0x98, 0xc0, 0x0c,
+  0x3c, 0x4a, 0xb1, 0x7c, 0x0c, 0xfd, 0xfa, 0xa6, 0x91, 0x32, 0xd5, 0xd5,
+  0x79, 0xd8, 0x83, 0x0e, 0xf0, 0x60, 0x87, 0xe7, 0xbf, 0xd7, 0x31, 0x1c,
+  0x6b, 0x2a, 0xa3, 0xb9, 0xf3, 0x4a, 0x63, 0xde, 0x94, 0x10, 0xd5, 0xce,
+  0xd5, 0x70, 0xd7, 0x95, 0x55, 0x0d, 0x6c, 0xf7, 0x94, 0x5d, 0x56, 0x71,
+  0x2c, 0xd4, 0x6a, 0xa5, 0x60, 0x63, 0x06, 0xb6, 0x17, 0xa2, 0x94, 0x19,
+  0x75, 0x22, 0xe6, 0x20, 0x3c, 0x4b, 0x4e, 0xce, 0xa7, 0xa1, 0xbf, 0x73,
+  0x4c, 0x9a, 0xa3, 0x7a, 0x45, 0x75, 0xa4, 0x9d, 0x74, 0x40, 0x30, 0x74,
+  0x82, 0x23, 0xfe, 0xd1, 0xa7, 0x9d, 0x5c, 0x18, 0xae, 0x83, 0xe4, 0xf1,
+  0x27, 0xbe, 0x1c, 0x44, 0xfb, 0x63, 0x98, 0xd6, 0x38, 0x8c, 0x20, 0x74,
+  0x44, 0xb9, 0x6d, 0xd1, 0xd7, 0x69, 0x39, 0x48, 0xcb, 0xa2, 0x6a, 0x01,
+  0x8b, 0x10, 0x25, 0x05, 0xf6, 0x0d, 0xab, 0xe8, 0x61, 0x18, 0x69, 0x4b,
+  0xe6, 0xc7, 0x32, 0x90, 0x25, 0x84, 0xf6, 0x1e, 0x0e, 0xf5, 0x0a, 0xe1,
+  0x9b, 0xe0, 0xf1, 0xaa, 0x92, 0x8b, 0x14, 0xff, 0x0b, 0x37, 0xcf, 0x05,
+  0xb5, 0xab, 0xce, 0x92, 0xf1, 0x0a, 0x36, 0x39, 0x6f, 0x1f, 0x52, 0xe1,
+  0xe4, 0x15, 0xb8, 0x03, 0x78, 0x34, 0x94, 0x3d, 0x04, 0x73, 0x29, 0xf3,
+  0x90, 0xce, 0x6e, 0x95, 0xd4, 0x3b, 0x11, 0xfc, 0x83, 0x60, 0xdc, 0x55,
+  0x5e, 0xe3, 0x77, 0x33, 0x5c, 0x13, 0x93, 0x7c, 0xde, 0x76, 0xfc, 0xde,
+  0xc2, 0x1c, 0x36, 0x49, 0x10, 0x60, 0x1e, 0x4c, 0x6d, 0xe4, 0xa7, 0x1f,
+  0x1d, 0xdb, 0xf7, 0xe2, 0x2a, 0xad, 0xe1, 0x74, 0xe3, 0x5d, 0x9d, 0x53,
+  0x5f, 0xdf, 0x0f, 0x95, 0x0f, 0x1e, 0x30, 0xd6, 0xa0, 0x4b, 0x1e, 0x4a,
+  0x6b, 0x44, 0x7c, 0x94, 0x11, 0xfb, 0x24, 0x04, 0x91, 0x4c, 0x6a, 0x34,
+  0xd1, 0xb1, 0xd6, 0x15, 0xbd, 0xcc, 0xcf, 0x09, 0xbb, 0xb5, 0xf9, 0x5d,
+  0xf2, 0xd9, 0x58, 0x52, 0x8f, 0x0e, 0x23, 0xf1, 0xc5, 0x11, 0xd0, 0xca,
+  0x6d, 0x89, 0x6d, 0x9b, 0x72, 0xdb, 0xfc, 0x6d, 0x9c, 0xce, 0x45, 0xba,
+  0x97, 0xce, 0x4e, 0xb0, 0xe1, 0x63, 0x6e, 0x16, 0x61, 0xca, 0xd7, 0x4a,
+  0x9d, 0x16, 0x97, 0x3d, 0x59, 0x77, 0x15, 0xbe, 0xf7, 0x6f, 0x8b, 0xa2,
+  0x7d, 0xd8, 0x67, 0x78, 0x5c, 0x0c, 0x12, 0xc6, 0x05, 0x32, 0xc1, 0x04,
+  0xaa, 0xc4, 0x61, 0x77, 0x8a, 0xf5, 0x74, 0x69, 0xbd, 0x90, 0x5f, 0x3e,
+  0x41, 0x8d, 0xd6, 0xf7, 0x50, 0xdb, 0xcf, 0xd3, 0xbb, 0xfa, 0x61, 0x04,
+  0xe1, 0x87, 0x18, 0xcf, 0x5a, 0x78, 0x21, 0x70, 0xcf, 0x5f, 0xc2, 0x92,
+  0xa6, 0x02, 0x9e, 0xea, 0x9d, 0x7b, 0xc3, 0x07, 0xc4, 0x0c, 0xd5, 0xfe,
+  0xc7, 0x74, 0xc5, 0xef, 0x03, 0x21, 0x52, 0x0f, 0x0c, 0xbf, 0xdf, 0x00,
+  0x12, 0xbd, 0xcb, 0x26, 0xb3, 0x89, 0x75, 0x7b, 0xd2, 0x7b, 0x78, 0xbe,
+  0x09, 0x30, 0xd5, 0xf4, 0x47, 0x67, 0x4c, 0xcd, 0x98, 0xcc, 0x91, 0xb6,
+  0x3f, 0x1c, 0x5b, 0x3d, 0x5b, 0x2c, 0x40, 0x12, 0x53, 0xd4, 0xd0, 0x53,
+  0x91, 0xcc, 0xb5, 0x78, 0x98, 0x29, 0x88, 0xc1, 0x32, 0x29, 0x2a, 0x25,
+  0xeb, 0x34, 0xf1, 0x9c, 0x84, 0x04, 0x5d, 0xc0, 0xdd, 0x93, 0x13, 0xee,
+  0x2a, 0x2b, 0x65, 0x97, 0x14, 0xfe, 0x20, 0xd6, 0x31, 0xd3, 0x25, 0x79,
+  0x63, 0xe6, 0x87, 0xbf, 0xf3, 0x65, 0x21, 0x42, 0x3e, 0x0d, 0x60, 0xa4,
+  0xdb, 0x6c, 0x54, 0x5f, 0x51, 0x53, 0x73, 0x35, 0xb1, 0x2b, 0x81, 0xc3,
+  0xc4, 0x60, 0x5a, 0xe6, 0x03, 0xfe, 0x0c, 0xc2, 0x8e, 0x76, 0xd9, 0x6a,
+  0xa2, 0x6d, 0xc4, 0xc9, 0x23, 0xe8, 0x52, 0xa7, 0xdb, 0x9d, 0x82, 0x6f,
+  0xeb, 0xac, 0xcd, 0x1b, 0x0c, 0xe5, 0x04, 0x0e, 0xfc, 0x05, 0x76, 0x2c,
+  0xf7, 0xec, 0x7e, 0x45, 0xe6, 0xe9, 0xe9, 0x61, 0xc6, 0xe3, 0xb6, 0x72,
+  0xcd, 0x0d, 0x46, 0xbf, 0x16, 0x09, 0xc9, 0x3d, 0x4b, 0xa8, 0x7b, 0x2a,
+  0x67, 0x06, 0x10, 0x2a, 0xe7, 0x75, 0x36, 0x2e, 0x82, 0xa1, 0x3f, 0x38,
+  0xe0, 0x2b, 0x13, 0x1e, 0xe1, 0xed, 0x8a, 0x06, 0x34, 0x10, 0x27, 0xf4,
+  0x32, 0x91, 0xdf, 0x33, 0x38, 0xf0, 0xca, 0x25, 0x3f, 0xf4, 0x95, 0x7d,
+  0xc8, 0x2b, 0x13, 0x95, 0x57, 0xf8, 0xce, 0xe1, 0x45, 0xc0, 0x83, 0xab,
+  0xd7, 0xdd, 0x08, 0xf4, 0xf7, 0xaf, 0xba, 0xd1, 0x39, 0xe8, 0xe2, 0x6b,
+  0xa4, 0xc0, 0x6f, 0x6e, 0x6c, 0xed, 0x50, 0x9b, 0xa2, 0x11, 0xeb, 0x94,
+  0x81, 0xf6, 0x70, 0xec, 0x21, 0xda, 0xbc, 0x46, 0x9a, 0xe1, 0xe3, 0x3d,
+  0x5b, 0x11, 0x84, 0x38, 0x0e, 0x5f, 0x77, 0xa3, 0xed, 0x09, 0xed, 0xf8,
+  0xe6, 0x57, 0x41, 0xba, 0x13, 0x6b, 0xda, 0xd6, 0x4c, 0xc5, 0x65, 0x36,
+  0x14, 0x94, 0x52, 0xbc, 0x1d, 0xf1, 0x54, 0x5e, 0x6a, 0x9c, 0xc1, 0x36,
+  0xac, 0x9e, 0xa6, 0xa1, 0x18, 0x4e, 0x5e, 0x98, 0x86, 0x8d, 0xda, 0x76,
+  0x03, 0x29, 0x0c, 0x42, 0xfc, 0x0a, 0x9d, 0x38, 0xd4, 0x18, 0x25, 0xc1,
+  0x42, 0xdc, 0xac, 0x60, 0x9c, 0x58, 0xa7, 0x26, 0xaa, 0xf2, 0x15, 0xbe,
+  0xa0, 0xe9, 0x86, 0x12, 0x84, 0x2b, 0x42, 0xd1, 0xd3, 0xa0, 0xa9, 0xfd,
+  0xf1, 0xdf, 0x50, 0xe4, 0xd0, 0xb4, 0xf8, 0xa4, 0x1a, 0xf8, 0x1c, 0xc6,
+  0x9c, 0xb2, 0xba, 0x51, 0x5b, 0xf3, 0x46, 0x9e, 0x9d, 0xa2, 0x3d, 0x3c,
+  0x4a, 0xb5, 0xc3, 0xe4, 0x84, 0x62, 0x31, 0x43, 0x6c, 0x79, 0x28, 0x38,
+  0xb8, 0x48, 0xa3, 0xd8, 0xd0, 0xa8, 0x1a, 0xe3, 0x03, 0x63, 0x50, 0x83,
+  0x3d, 0x0a, 0x50, 0xd9, 0x0a, 0x9a, 0x8f, 0x4a, 0x32, 0x77, 0x4a, 0x96,
+  0xb6, 0xa1, 0xc4, 0xea, 0xdf, 0xe8, 0x46, 0xae, 0xe6, 0xcb, 0x3f, 0x23,
+  0xd0, 0x36, 0x81, 0x4d, 0x96, 0x00, 0x4f, 0x6a, 0xbe, 0xb9, 0xf1, 0xd4,
+  0x37, 0xdf, 0x2e, 0x96, 0xb8, 0x63, 0x2a, 0x14, 0xcc, 0xaa, 0x3a, 0x0e,
+  0x74, 0x3c, 0xe3, 0xd4, 0x83, 0xb3, 0xd3, 0xb3, 0xed, 0x35, 0x83, 0x43,
+  0xc7, 0x0d, 0x7c, 0x04, 0x5b, 0x35, 0x52, 0x70, 0x03, 0x83, 0xba, 0xaa,
+  0x1d, 0x0a, 0x09, 0x9f, 0xc9, 0xf7, 0x06, 0x0d, 0x53, 0x6d, 0x31, 0x4f,
+  0xdf, 0xa3, 0x50, 0xad, 0x85, 0xd9, 0x48, 0xe9, 0xee, 0x23, 0xef, 0x9f,
+  0x15, 0xb6, 0x6c, 0xae, 0x61, 0xba, 0x4e, 0xfb, 0x5a, 0x4a, 0xb4, 0x18,
+  0x42, 0x21, 0xa5, 0x63, 0xc2, 0x7d, 0x8a, 0x9a, 0xad, 0xb6, 0x11, 0xa8,
+  0xa1, 0x35, 0x49, 0xce, 0xf4, 0x0e, 0xa4, 0xe4, 0x49, 0x8e, 0x92, 0x7d,
+  0x90, 0x42, 0xc9, 0xe6, 0x96, 0x66, 0xb5, 0xd1, 0xe4, 0x77, 0x62, 0x94,
+  0x08, 0xad, 0x45, 0x5a, 0x99, 0x07, 0x73, 0x98, 0xd4, 0xda, 0x12, 0x95,
+  0x59, 0xcc, 0x34, 0x7e, 0x6e, 0xb8, 0x52, 0x08, 0x47, 0x8c, 0xa0, 0x8d,
+  0xde, 0x9d, 0xf4, 0xcf, 0x9d, 0x1c, 0x06, 0x3f, 0x70, 0xab, 0x25, 0x9a,
+  0x4e, 0x12, 0xab, 0x93, 0x69, 0x7d, 0x72, 0xdc, 0x3f, 0xef, 0x85, 0x7a,
+  0x17, 0xef, 0x45, 0x7d, 0x44, 0x2d, 0x79, 0xed, 0x64, 0xc4, 0x8f, 0xb9,
+  0x67, 0x0f, 0x3a, 0x59, 0x39, 0x31, 0x83, 0xcc, 0x5e, 0x2e, 0x25, 0xb3,
+  0xb9, 0x00, 0xfe, 0x24, 0x70, 0x8a, 0x9f, 0xb2, 0x6b, 0x54, 0xaa, 0xb2,
+  0x35, 0xc8, 0x5f, 0xcd, 0x06, 0xb1, 0xd3, 0x70, 0x87, 0xb5, 0xf7, 0xfb,
+  0xc9, 0xa0, 0xc0, 0x5a, 0x21, 0xd0, 0x91, 0xae, 0x7d, 0x11, 0xb3, 0x2a,
+  0x7c, 0xc5, 0x24, 0x92, 0x56, 0x4b, 0x8d, 0x60, 0xdf, 0x30, 0x4a, 0xa9,
+  0xfb, 0x1c, 0xb9, 0xa1, 0xf1, 0xe9, 0x47, 0x31, 0x17, 0x12, 0xc2, 0xcd,
+  0x05, 0x01, 0xca, 0x4d, 0x39, 0xb2, 0xd8, 0x04, 0x59, 0xc0, 0x9c, 0x11,
+  0xe3, 0x70, 0x5f, 0x9c, 0x26, 0xe3, 0x70, 0xa3, 0x76, 0x82, 0x12, 0xee,
+  0xa3, 0x5a, 0xe9, 0x94, 0xfd, 0xd1, 0x66, 0xd6, 0x73, 0xda, 0xe1, 0xc5,
+  0xd9, 0x88, 0x6b, 0x76, 0xaa, 0x66, 0xbf, 0x24, 0x46, 0x22, 0x45, 0x01,
+  0x4a, 0x89, 0x29, 0x08, 0x48, 0x5d, 0xcd, 0xd9, 0x49, 0x76, 0xd9, 0x37,
+  0x8a, 0x65, 0xe3, 0xef, 0xb8, 0x4c, 0x93, 0x32, 0x1d, 0xba, 0xa1, 0x06,
+  0x15, 0x21, 0x74, 0x74, 0x3c, 0x34, 0x02, 0xe0, 0xfc, 0xe1, 0xf8, 0xd5,
+  0x89, 0xa1, 0x97, 0xd0, 0x87, 0x0a, 0x7a, 0xcd, 0x52, 0x11, 0x89, 0x43,
+  0xaf, 0x00, 0xda, 0x11, 0x2f, 0xe6, 0x3e, 0xcb, 0x33, 0xf8, 0x7e, 0xc4,
+  0x86, 0xd8, 0x45, 0xc6, 0xaa, 0xd8, 0x95, 0xd5, 0x4e, 0x2a, 0xed, 0xe7,
+  0x87, 0x34, 0x90, 0x13, 0x7b, 0xad, 0xce, 0xfd, 0x39, 0xd5, 0xd0, 0xcb,
+  0x6b, 0x9a, 0x22, 0xc4, 0xc2, 0xad, 0x45, 0xdc, 0x62, 0x3a, 0x6a, 0x0f,
+  0x28, 0x2d, 0x18, 0x40, 0x2d, 0x59, 0x27, 0x54, 0x2a, 0x4f, 0xd3, 0x4c,
+  0xb9, 0xaf, 0xaa, 0xad, 0x4e, 0x68, 0x62, 0x8c, 0x17, 0xa5, 0xa0, 0x59,
+  0xad, 0xbe, 0x7e, 0x7f, 0xfa, 0x36, 0x3e, 0x3f, 0x5d, 0x43, 0xae, 0xa2,
+  0xa1, 0xe7, 0x27, 0x46, 0x56, 0x9a, 0x64, 0xe9, 0xa0, 0x1d, 0x8b, 0x4f,
+  0x7d, 0xb5, 0x5a, 0x13, 0x28, 0x13, 0xbe, 0x4d, 0x69, 0x7a, 0xfa, 0x96,
+  0x87, 0x82, 0x91, 0xb3, 0x5a, 0x4a, 0xea, 0x0b, 0xb0, 0xde, 0x30, 0x41,
+  0x0b, 0xc7, 0xa4, 0x1d, 0x34, 0x0a, 0xc0, 0x06, 0xb3, 0xea, 0x3e, 0x12,
+  0xdc, 0xb0, 0x8a, 0x2b, 0xb5, 0x7d, 0xb8, 0x39, 0xd3, 0xdc, 0xc4, 0xa0,
+  0xb4, 0x23, 0xd6, 0x11, 0x23, 0xdf, 0xd4, 0x05, 0x1c, 0xf6, 0xa4, 0x2c,
+  0x8b, 0x5b, 0xbd, 0xb4, 0x09, 0xfc, 0x10, 0x76, 0x1d, 0xa6, 0x8e, 0xfb,
+  0x5a, 0xde, 0xcf, 0x07, 0x0c, 0xe3, 0x36, 0x0d, 0x02, 0xa6, 0xbe, 0xb4,
+  0x8f, 0xd8, 0xd9, 0x29, 0xbc, 0x04, 0xe3, 0xed, 0x8d, 0x8d, 0x87, 0xdc,
+  0xc4, 0x5a, 0xf5, 0x1e, 0xd7, 0xe5, 0x0c, 0x01, 0xc6, 0xe6, 0xa4, 0xd5,
+  0x9e, 0xa0, 0x38, 0xa6, 0x42, 0x79, 0xe7, 0x9d, 0xae, 0x74, 0xdf, 0xc1,
+  0x2c, 0x6a, 0x74, 0x0f, 0x5a, 0x3c, 0xa5, 0x2b, 0x29, 0x50, 0xfb, 0x8b,
+  0x27, 0x27, 0xa4, 0xdf, 0x20, 0x1a, 0xaf, 0xf0, 0x1a, 0x97, 0xca, 0xdb,
+  0x62, 0x83, 0x0c, 0x3b, 0x92, 0xc1, 0xf9, 0xd1, 0x8c, 0x55, 0xea, 0x3c,
+  0x71, 0xce, 0x69, 0x1b, 0xf7, 0xbe, 0xbb, 0x02, 0x7f, 0xc8, 0x72, 0xb5,
+  0x2e, 0x8b, 0xd1, 0x6c, 0x48, 0x9b, 0x8b, 0x59, 0x15, 0x59, 0x7d, 0x1f,
+  0x0d, 0xb8, 0xb7, 0x97, 0xa2, 0xa9, 0xe2, 0xd0, 0x16, 0x22, 0x80, 0x5d,
+  0xaa, 0x6d, 0xad, 0x95, 0x9f, 0x42, 0x00, 0x39, 0x72, 0x7c, 0x93, 0x39,
+  0x42, 0xa5, 0x4d, 0x29, 0x1b, 0x27, 0x65, 0xdb, 0x51, 0x83, 0xa1, 0xfb,
+  0x68, 0x55, 0xda, 0x54, 0x78, 0x42, 0x11, 0x9b, 0xd4, 0x52, 0x7b, 0x4e,
+  0xc9, 0x0f, 0xc3, 0x16, 0x48, 0xc8, 0xf5, 0x94, 0x9c, 0xf5, 0x65, 0x52,
+  0x81, 0xf0, 0x6b, 0x8e, 0xb7, 0xf6, 0x94, 0x0d, 0x77, 0x77, 0x2f, 0x8a,
+  0xc9, 0x5b, 0x53, 0xee, 0xd9, 0xc6, 0x8e, 0xcb, 0x84, 0xc8, 0x66, 0x5a,
+  0xd8, 0xee, 0xf8, 0x25, 0x1a, 0xd8, 0x08, 0x73, 0xb8, 0x43, 0x6b, 0x31,
+  0x45, 0x42, 0x73, 0x96, 0xa3, 0xb3, 0xaf, 0x22, 0x6f, 0xa9, 0x89, 0xce,
+  0x25, 0x55, 0xb0, 0x46, 0x88, 0x2a, 0x30, 0x0a, 0xa5, 0x2f, 0x8f, 0x32,
+  0x8c, 0x33, 0xe1, 0xe5, 0xad, 0x1f, 0x8d, 0x56, 0x15, 0x0b, 0xcc, 0xc0,
+  0xc0, 0x9c, 0xc8, 0xaf, 0xf6, 0x0c, 0x58, 0x19, 0x0a, 0xe7, 0xd6, 0x70,
+  0xdb, 0xdf, 0x7d, 0xe7, 0xdc, 0xcf, 0xe8, 0xcf, 0x58, 0x9b, 0x87, 0x54,
+  0x2b, 0x28, 0x21, 0xa3, 0xc2, 0x9d, 0xae, 0xa7, 0xf9, 0x33, 0x5f, 0x83,
+  0x8a, 0x43, 0xd0, 0x08, 0xe4, 0x71, 0x15, 0xdf, 0xf0, 0x65, 0x4a, 0xf2,
+  0x5b, 0xa0, 0x6d, 0xb3, 0x6e, 0x64, 0x93, 0x09, 0x59, 0xe5, 0x89, 0x8f,
+  0x03, 0x05, 0x1a, 0x74, 0x75, 0x68, 0x1a, 0xa0, 0xa9, 0x87, 0x6c, 0x12,
+  0xab, 0xb2, 0x2e, 0xd9, 0x2b, 0x8c, 0xa2, 0x4a, 0x67, 0xc2, 0x59, 0x1c,
+  0x68, 0x33, 0x63, 0xd9, 0xb2, 0x12, 0x5c, 0x5e, 0x5a, 0x17, 0x49, 0x79,
+  0x6e, 0x13, 0xcd, 0x85, 0x45, 0xc3, 0x32, 0x15, 0x1f, 0xa0, 0x28, 0x84,
+  0xa1, 0xf6, 0x4e, 0x88, 0x09, 0x2e, 0x80, 0x15, 0x1c, 0xa7, 0x49, 0x9c,
+  0x53, 0x69, 0x5b, 0xe0, 0xb4, 0xf6, 0x8c, 0xf1, 0x2d, 0xb2, 0x3a, 0xe4,
+  0x13, 0xd1, 0x06, 0x10, 0xd4, 0xc8, 0xa3, 0x60, 0x6f, 0xf6, 0x30, 0x9d,
+  0xd6, 0xe6, 0xea, 0xfc, 0x8b, 0x72, 0x6d, 0xaf, 0x11, 0xfc, 0xf7, 0x8d,
+  0xdf, 0x16, 0xd3, 0x53, 0x83, 0x32, 0x6c, 0x36, 0x87, 0x09, 0xea, 0x57,
+  0x2c, 0x91, 0xaf, 0x30, 0x00, 0xa5, 0x19, 0x4f, 0x6c, 0xea, 0x10, 0xae,
+  0xc0, 0x04, 0x2d, 0x6c, 0xbf, 0x72, 0xdb, 0x4a, 0x06, 0xcc, 0x87, 0xa5,
+  0x60, 0x87, 0xed, 0x15, 0xc2, 0x4e, 0xed, 0x49, 0x72, 0x17, 0xd3, 0x63,
+  0xd5, 0xbc, 0xec, 0x47, 0x9b, 0x22, 0x20, 0x4d, 0xd1, 0x5d, 0x9a, 0x91,
+  0xbe, 0x70, 0xd1, 0x48, 0xb4, 0xe4, 0xf2, 0x4e, 0x42, 0xf7, 0xa5, 0x44,
+  0xf4, 0x70, 0xd1, 0x94, 0xa2, 0xaf, 0xb8, 0x38, 0x1f, 0x02, 0x12, 0xc6,
+  0x87, 0x01, 0xc1, 0x74, 0x65, 0xe4, 0x46, 0x7a, 0xaa, 0x67, 0x00, 0x54,
+  0xd1, 0xf6, 0xc6, 0x26, 0x98, 0xde, 0x1b, 0x5b, 0xe8, 0xfa, 0x85, 0xff,
+  0x6e, 0x1b, 0x94, 0xcd, 0xc6, 0x31, 0xe1, 0x67, 0xc9, 0xbb, 0xc8, 0x8e,
+  0x12, 0x38, 0x4b, 0x77, 0x77, 0x01, 0x8c, 0xd4, 0x26, 0x6c, 0x40, 0xbc,
+  0x60, 0xaa, 0x96, 0x90, 0x94, 0x9c, 0x30, 0xf3, 0x22, 0x1f, 0x5a, 0xfa,
+  0x2c, 0xf8, 0xbd, 0x41, 0x04, 0x1e, 0x42, 0x18, 0x6a, 0x77, 0x7a, 0x90,
+  0x0d, 0x77, 0x31, 0x9d, 0x69, 0x13, 0x91, 0x2a, 0x82, 0xc2, 0x0e, 0x2b,
+  0xbd, 0x9b, 0x57, 0xc5, 0x8a, 0xbb, 0xac, 0x65, 0x97, 0xdc, 0xc5, 0x21,
+  0x55, 0x59, 0xa3, 0xf0, 0x14, 0xac, 0x7c, 0x24, 0xf5, 0x1e, 0xe6, 0xee,
+  0x01, 0x7f, 0x23, 0x11, 0xbd, 0xc3, 0xcc, 0xbf, 0xd0, 0x5c, 0x77, 0xfe,
+  0xd7, 0x76, 0xd0, 0xb7, 0xa1, 0xbd, 0xdd, 0x14, 0x01, 0x07, 0x55, 0x52,
+  0xab, 0x93, 0x36, 0xb2, 0x58, 0x68, 0x42, 0xf2, 0x7c, 0x28, 0x44, 0xc7,
+  0xbe, 0x2b, 0xeb, 0xcb, 0xaa, 0xd2, 0xb1, 0x60, 0xba, 0xce, 0xaa, 0x65,
+  0xb3, 0x19, 0x4f, 0x1e, 0x54, 0x14, 0x30, 0x5e, 0xa5, 0x34, 0xd9, 0x97,
+  0xbf, 0x78, 0xe1, 0x8d, 0xe3, 0xb7, 0x07, 0x62, 0x04, 0x53, 0x43, 0xfa,
+  0xb5, 0x86, 0x0b, 0x92, 0xc6, 0x30, 0x74, 0x15, 0xdd, 0x6e, 0x34, 0x63,
+  0x50, 0x0b, 0xba, 0x3b, 0xda, 0x37, 0x72, 0xe3, 0x7a, 0x9c, 0xcb, 0x14,
+  0x38, 0x8c, 0x37, 0xb6, 0xa6, 0xf0, 0x19, 0x8c, 0x45, 0x6b, 0x72, 0xcc,
+  0x49, 0x49, 0xe0, 0xd8, 0x06, 0x2a, 0x15, 0xc6, 0x10, 0xd0, 0xd9, 0xb5,
+  0x26, 0x12, 0x1d, 0xd4, 0xa8, 0xe9, 0x72, 0x57, 0x64, 0x14, 0xaf, 0xb8,
+  0xec, 0x36, 0x53, 0x10, 0x11, 0x90, 0x1f, 0x90, 0x10, 0xa6, 0xc0, 0xa2,
+  0x31, 0x4f, 0x76, 0xa0, 0x4d, 0x9c, 0x2c, 0x40, 0x27, 0xeb, 0xcf, 0xab,
+  0x94, 0xbe, 0xa4, 0x70, 0xab, 0xac, 0x30, 0x62, 0xc8, 0x9b, 0x88, 0x2c,
+  0x2a, 0xc2, 0x77, 0x8d, 0xb6, 0xb6, 0x5f, 0xec, 0x74, 0xf9, 0xef, 0xbb,
+  0x1b, 0x2f, 0x99, 0x17, 0x8f, 0x8f, 0xce, 0x5f, 0x47, 0xa3, 0x12, 0x4e,
+  0x42, 0xdb, 0x67, 0x8f, 0x3f, 0x8b, 0xd3, 0xa4, 0xbc, 0x02, 0xdb, 0x0d,
+  0xb1, 0xd5, 0x63, 0x6c, 0xf4, 0x1d, 0x6f, 0x6c, 0x84, 0xb2, 0x02, 0x7f,
+  0xe7, 0xc8, 0x4c, 0x93, 0xd7, 0x56, 0xb0, 0xef, 0xf0, 0x67, 0xff, 0xbe,
+  0x12, 0x65, 0x93, 0x64, 0xfa, 0xe8, 0x52, 0xed, 0xed, 0x56, 0xdd, 0x3e,
+  0x5a, 0x62, 0x31, 0x6e, 0xe3, 0xfc, 0x3e, 0x72, 0x4d, 0x86, 0x4d, 0xd4,
+  0x82, 0x91, 0xc7, 0x1b, 0x79, 0x58, 0xca, 0x1e, 0x6c, 0x1a, 0xf2, 0x1b,
+  0x01, 0x0f, 0x49, 0x5b, 0x5f, 0xb4, 0xc8, 0xc5, 0xab, 0x6c, 0xfd, 0xd5,
+  0xf7, 0x6b, 0x74, 0xff, 0xa0, 0xdf, 0x78, 0x30, 0xc1, 0x60, 0xcb, 0x48,
+  0x8d, 0xbf, 0x20, 0x44, 0x63, 0x25, 0x00, 0x54, 0x65, 0x8a, 0x7d, 0x26,
+  0x58, 0x8f, 0xce, 0x59, 0x46, 0x3f, 0xad, 0x05, 0x87, 0x25, 0x0b, 0xde,
+  0xc0, 0x5f, 0x38, 0xb4, 0x4d, 0xb1, 0x91, 0x2f, 0x79, 0x14, 0xfc, 0x0e,
+  0xf0, 0x8b, 0x1a, 0x70, 0xd0, 0x88, 0xe5, 0x70, 0x2a, 0xb8, 0x48, 0xfc,
+  0x6f, 0xd4, 0x6e, 0xbc, 0xdd, 0x20, 0x95, 0xe7, 0x89, 0xbb, 0x61, 0x95,
+  0x4b, 0x76, 0xd1, 0xd3, 0x44, 0x0d, 0x16, 0x63, 0xa0, 0xf8, 0x0c, 0x8f,
+  0x6a, 0x73, 0x16, 0x4b, 0x10, 0x88, 0x66, 0xda, 0x26, 0xd0, 0xaf, 0x49,
+  0x1f, 0xdc, 0x01, 0x8f, 0x3e, 0xf8, 0x50, 0x4c, 0x96, 0x15, 0xf5, 0x0c,
+  0x0f, 0x13, 0xe8, 0x5b, 0x17, 0x29, 0x94, 0x7a, 0x04, 0x20, 0xbe, 0xa5,
+  0xba, 0xb0, 0x41, 0xf5, 0xc8, 0xa6, 0x18, 0x4b, 0x82, 0xe3, 0x69, 0x6b,
+  0x64, 0x83, 0x77, 0x09, 0x99, 0x71, 0x03, 0xea, 0x28, 0x81, 0xf2, 0x0a,
+  0x8c, 0x52, 0xf4, 0x7e, 0x89, 0x42, 0x79, 0x81, 0x26, 0x31, 0x0a, 0x9c,
+  0x5a, 0x83, 0xcb, 0xea, 0x8d, 0xd0, 0xf1, 0x3d, 0x15, 0x8d, 0x3c, 0x75,
+  0xef, 0x0f, 0xcf, 0xce, 0xa3, 0xf3, 0x53, 0xd7, 0xc3, 0xc4, 0x98, 0x83,
+  0x04, 0xc9, 0x02, 0x46, 0x72, 0x19, 0x8e, 0xbb, 0xe8, 0x44, 0x6d, 0x3f,
+  0x6c, 0x71, 0xcf, 0xf0, 0x75, 0x4f, 0x45, 0x0e, 0x53, 0x41, 0xc6, 0x6b,
+  0x52, 0x2b, 0x00, 0x30, 0x41, 0xd4, 0x6b, 0xc7, 0x20, 0xd9, 0x02, 0x20,
+  0xcb, 0xad, 0x65, 0x07, 0x70, 0xf5, 0x50, 0xc4, 0xd3, 0xab, 0x02, 0x99,
+  0xb0, 0x5a, 0xee, 0x61, 0x20, 0x7a, 0x38, 0xad, 0x0f, 0xe7, 0x72, 0x93,
+  0x8c, 0xb3, 0x91, 0x43, 0x95, 0x60, 0xa8, 0x40, 0x50, 0xed, 0xf4, 0x19,
+  0x4a, 0xb5, 0xb9, 0xc4, 0x52, 0x2f, 0x26, 0x17, 0xd2, 0x4b, 0x3d, 0x00,
+  0x92, 0x54, 0x81, 0xa1, 0xb5, 0x71, 0x72, 0xe9, 0xdb, 0x98, 0x4e, 0x0e,
+  0x8f, 0x83, 0xc4, 0x51, 0xdb, 0xbd, 0xc4, 0xe9, 0xf9, 0xfb, 0x39, 0x0f,
+  0x85, 0x99, 0x76, 0x86, 0x1c, 0x57, 0xb8, 0x76, 0x4a, 0xc9, 0xcb, 0x10,
+  0xcd, 0x86, 0xfb, 0xfc, 0x14, 0x56, 0xc2, 0xb7, 0xf6, 0xf5, 0x49, 0x87,
+  0xaa, 0xc5, 0xde, 0x8d, 0xa3, 0x01, 0xea, 0x4f, 0xdd, 0x38, 0x6b, 0xfe,
+  0x19, 0x5b, 0x04, 0xd3, 0xf1, 0x32, 0x20, 0xfb, 0x69, 0xdc, 0x07, 0xa4,
+  0x8d, 0x11, 0x37, 0x4e, 0x77, 0xed, 0x28, 0xa5, 0xf7, 0x6d, 0x03, 0x3f,
+  0xf2, 0xf2, 0x91, 0x7b, 0x03, 0xef, 0x6e, 0xf8, 0x95, 0x8f, 0xc6, 0x40,
+  0x2e, 0x63, 0xce, 0xe1, 0x7a, 0x9f, 0x4e, 0x53, 0x92, 0x54, 0x4e, 0x3b,
+  0x06, 0xf7, 0xda, 0x34, 0x00, 0x92, 0xe4, 0xe7, 0x93, 0x73, 0xeb, 0x69,
+  0xab, 0x73, 0xf9, 0x89, 0xfd, 0xc1, 0xe2, 0xb2, 0x95, 0x96, 0xb5, 0x2a,
+  0x22, 0xb9, 0x60, 0x47, 0x8d, 0xe8, 0x6f, 0xde, 0xbf, 0xfe, 0x9b, 0xee,
+  0xd7, 0x5a, 0x57, 0xf8, 0xd6, 0xb3, 0xac, 0xf8, 0x3b, 0x4e, 0x2e, 0x89,
+  0x0d, 0xb0, 0x0b, 0xee, 0x6f, 0x63, 0xf9, 0xfc, 0x2f, 0x01, 0x5c, 0xf2,
+  0x81, 0x86, 0xb8, 0xa7, 0x65, 0xb4, 0x8a, 0x49, 0x3d, 0xf0, 0x5c, 0x5f,
+  0xbc, 0x5c, 0xdb, 0xbd, 0x5d, 0xf2, 0x29, 0xbf, 0x3e, 0xdc, 0xdd, 0xde,
+  0xda, 0x5c, 0xeb, 0x45, 0xab, 0xad, 0x8b, 0x7b, 0x2d, 0xb8, 0x4c, 0x77,
+  0x95, 0x4a, 0x78, 0x26, 0x75, 0x7a, 0x37, 0x45, 0x8e, 0x5e, 0x3d, 0xfa,
+  0xee, 0xec, 0x9d, 0xb7, 0x46, 0x58, 0x93, 0x97, 0xb6, 0x35, 0x6f, 0x8d,
+  0xd6, 0x4e, 0x69, 0x8c, 0xaf, 0x35, 0x31, 0x88, 0x39, 0x1b, 0x05, 0x12,
+  0xa3, 0x5e, 0x97, 0x19, 0xda, 0xd7, 0x1d, 0x24, 0x49, 0xe7, 0xa4, 0xc8,
+  0x47, 0x60, 0x9d, 0x9e, 0x62, 0x9b, 0x9f, 0xb4, 0x03, 0xc6, 0xf3, 0x83,
+  0xab, 0x7b, 0xec, 0x69, 0x69, 0x5e, 0x41, 0x39, 0x58, 0x10, 0x0b, 0x8e,
+  0x45, 0xfc, 0xb6, 0x4b, 0xef, 0xe6, 0x7e, 0x66, 0xf0, 0x5b, 0xfa, 0x21,
+  0xb5, 0xd5, 0x34, 0x70, 0x80, 0x57, 0x33, 0xf4, 0xcc, 0x60, 0xa8, 0xb0,
+  0x0e, 0x25, 0x49, 0x3c, 0x38, 0x45, 0xfa, 0x8c, 0x7b, 0xe4, 0xee, 0x62,
+  0x8a, 0x96, 0xa0, 0x93, 0x7e, 0x9f, 0x42, 0xcb, 0xa1, 0x54, 0x28, 0xb6,
+  0x58, 0xdf, 0xfe, 0xf5, 0xfc, 0x7c, 0x2d, 0x98, 0xac, 0x40, 0xaf, 0xaf,
+  0x6a, 0xb4, 0x7d, 0x8d, 0x55, 0x25, 0x4e, 0x43, 0x29, 0x3c, 0x5e, 0xe3,
+  0xbc, 0x04, 0x63, 0xd3, 0xd2, 0x63, 0xd6, 0x9b, 0x92, 0x35, 0x2b, 0x6a,
+  0x39, 0xe3, 0x83, 0x00, 0x88, 0xbb, 0x21, 0x0f, 0x88, 0x89, 0x2b, 0x1b,
+  0xdf, 0x05, 0xf7, 0xaf, 0x48, 0xf2, 0x66, 0x07, 0x3f, 0x12, 0x99, 0x74,
+  0x13, 0xa4, 0x77, 0x58, 0x47, 0x84, 0xf6, 0xf3, 0x33, 0xdf, 0xf2, 0x3b,
+  0x90, 0x42, 0x5a, 0x35, 0x74, 0x39, 0x4e, 0x60, 0x5a, 0xa2, 0xbe, 0xb6,
+  0x85, 0x15, 0xdd, 0x60, 0x7e, 0x40, 0xe8, 0xb6, 0xe6, 0x6c, 0x01, 0xbe,
+  0x88, 0xdb, 0xf9, 0x02, 0x6e, 0x7e, 0x00, 0x1d, 0x54, 0xcc, 0x10, 0x90,
+  0xe8, 0xbf, 0xef, 0x6a, 0x70, 0x32, 0x06, 0xe6, 0xa7, 0x0c, 0xb8, 0x49,
+  0x02, 0xad, 0x70, 0x7e, 0xdb, 0xf3, 0x66, 0x82, 0xfb, 0x0d, 0xde, 0xdf,
+  0x7d, 0x11, 0xe0, 0xfd, 0x77, 0xa7, 0xe7, 0x47, 0x7b, 0x74, 0xe9, 0x5b,
+  0x04, 0x77, 0xe9, 0xad, 0x2d, 0xb5, 0x07, 0x58, 0x2c, 0x9e, 0x0b, 0x5e,
+  0x0d, 0x0a, 0x49, 0xdd, 0xe8, 0x6e, 0x48, 0xe2, 0x50, 0x8d, 0x25, 0x9e,
+  0x52, 0x0e, 0xd5, 0xd5, 0x73, 0xfb, 0x16, 0x12, 0x72, 0x6c, 0xe6, 0x70,
+  0x0a, 0x6d, 0xb8, 0x8f, 0xc6, 0x4d, 0x90, 0xcd, 0x84, 0x82, 0xcc, 0x9a,
+  0xb7, 0xc7, 0x43, 0xac, 0x7f, 0x92, 0x8b, 0xa9, 0xf7, 0x88, 0x73, 0xe2,
+  0x1c, 0x8b, 0xb9, 0x21, 0xee, 0xf9, 0xca, 0xa3, 0x0d, 0x56, 0xf7, 0x5a,
+  0x87, 0x4d, 0x5c, 0x53, 0x18, 0xa1, 0x99, 0x83, 0x3d, 0x8f, 0x21, 0x1a,
+  0x3d, 0x57, 0x16, 0x1e, 0x5e, 0x1d, 0x54, 0x6a, 0x36, 0x8b, 0xf3, 0xc6,
+  0x44, 0x63, 0xe3, 0x13, 0xdf, 0xd9, 0x61, 0x3c, 0xb3, 0xa6, 0xd7, 0x7a,
+  0x97, 0x2d, 0x21, 0xec, 0xdd, 0x4e, 0xa8, 0x9d, 0xec, 0x05, 0x43, 0xad,
+  0xc1, 0xfa, 0x82, 0x30, 0x30, 0x02, 0x72, 0xe2, 0xde, 0xbb, 0xdc, 0xc4,
+  0xf5, 0xe6, 0x6a, 0xa8, 0x62, 0x4c, 0x92, 0xdf, 0x2e, 0x63, 0xb8, 0x60,
+  0xfa, 0xc0, 0xee, 0x86, 0xf3, 0x42, 0x8f, 0xc2, 0x4e, 0xa1, 0x46, 0x45,
+  0x36, 0x45, 0x2e, 0xde, 0x34, 0x78, 0xef, 0x19, 0xc1, 0x28, 0x4a, 0xbb,
+  0x94, 0x3f, 0xd8, 0xc2, 0x75, 0x76, 0x6c, 0xdb, 0x25, 0xe8, 0x42, 0x1f,
+  0xcc, 0xa4, 0x2b, 0x6f, 0x72, 0x51, 0xca, 0x45, 0xc9, 0x88, 0x20, 0xc9,
+  0x38, 0x9a, 0x53, 0x9f, 0xf2, 0x56, 0x76, 0x5b, 0x4a, 0x46, 0xd0, 0x7d,
+  0x20, 0x4f, 0xb2, 0xf9, 0x44, 0xd0, 0xf2, 0x63, 0xed, 0x09, 0x78, 0x7b,
+  0x55, 0x8c, 0xdd, 0xec, 0x3c, 0x4f, 0xc2, 0xd6, 0x84, 0xbc, 0xe3, 0xb6,
+  0xf9, 0x50, 0x38, 0x04, 0xd9, 0x77, 0xdc, 0x65, 0x0a, 0x93, 0x0c, 0x10,
+  0x9c, 0x32, 0xfa, 0xa9, 0x18, 0x88, 0x5f, 0x1b, 0x91, 0x7b, 0x2e, 0xbd,
+  0x4b, 0x18, 0x7d, 0x6e, 0xd4, 0x4c, 0x08, 0x2e, 0x62, 0x20, 0xc4, 0x68,
+  0xc6, 0x91, 0x34, 0x9c, 0x8f, 0x14, 0x2a, 0x52, 0xe9, 0x29, 0x05, 0xc4,
+  0xa3, 0x4b, 0xc2, 0xb3, 0xa6, 0x4a, 0x22, 0xc1, 0x87, 0xf3, 0x61, 0xb8,
+  0xb6, 0x10, 0x28, 0xce, 0xdd, 0xc6, 0x64, 0x88, 0x0e, 0x66, 0x18, 0x5a,
+  0xa0, 0x55, 0xb9, 0x6d, 0x8e, 0xad, 0xe7, 0x04, 0x02, 0xce, 0x64, 0x77,
+  0xbd, 0x44, 0x1f, 0x0d, 0x6d, 0xc1, 0xbb, 0xd4, 0xef, 0x98, 0x32, 0xba,
+  0x87, 0xb0, 0x7f, 0xc9, 0xf0, 0x5e, 0x75, 0x21, 0xab, 0x38, 0x48, 0x27,
+  0x17, 0xdb, 0x1d, 0xd9, 0x07, 0xb2, 0xd1, 0x49, 0x60, 0x66, 0x4f, 0x16,
+  0xc4, 0x6c, 0xfb, 0xbd, 0xd3, 0x6d, 0x0c, 0x2f, 0x6d, 0x2e, 0x93, 0x30,
+  0x63, 0xde, 0xda, 0xea, 0xbd, 0x5c, 0x16, 0xb1, 0x48, 0x42, 0x9d, 0xda,
+  0xf8, 0xa6, 0x21, 0xc4, 0xd2, 0x3a, 0xc1, 0xad, 0x5e, 0x04, 0xfe, 0x42,
+  0xc9, 0xe1, 0x29, 0xd8, 0x83, 0xb3, 0x8a, 0xb3, 0x5e, 0x5a, 0xc5, 0xba,
+  0x3a, 0x46, 0x64, 0x82, 0xbb, 0xed, 0x3a, 0x9d, 0xb7, 0xe6, 0x09, 0x75,
+  0xc8, 0x19, 0xf4, 0x4d, 0x83, 0x2a, 0x98, 0x89, 0x17, 0x5f, 0xf1, 0x33,
+  0x9e, 0xc3, 0xbd, 0x25, 0xc5, 0xfb, 0xb1, 0xdf, 0x2d, 0x00, 0x63, 0x8d,
+  0xb8, 0xe5, 0xe8, 0xce, 0x5b, 0x56, 0x0a, 0xe8, 0x64, 0xe8, 0x02, 0x5a,
+  0xec, 0x7f, 0x35, 0x38, 0x59, 0x61, 0xe1, 0x7e, 0x24, 0x68, 0xa9, 0xef,
+  0x0c, 0x9c, 0xd6, 0x6a, 0xff, 0xec, 0xdd, 0xd1, 0x57, 0xa7, 0x6b, 0x0f,
+  0x39, 0x51, 0x5d, 0x02, 0x9b, 0xfc, 0xe6, 0x44, 0xcb, 0x2a, 0x24, 0x93,
+  0x99, 0x14, 0x9c, 0xaf, 0xfa, 0xfd, 0xf8, 0xe0, 0xec, 0x98, 0xd4, 0x89,
+  0x7e, 0x1f, 0xfe, 0x32, 0xaf, 0x27, 0x25, 0x41, 0xf3, 0x63, 0xbc, 0xf8,
+  0x1b, 0x72, 0x6d, 0x2b, 0x0e, 0x85, 0xe4, 0x51, 0xa4, 0x54, 0x3f, 0x20,
+  0x89, 0xc1, 0x44, 0x67, 0x05, 0x97, 0xc3, 0x0f, 0xb4, 0xf5, 0xa6, 0xb3,
+  0xe3, 0x75, 0xfa, 0x16, 0x16, 0xaf, 0xd0, 0x82, 0xc2, 0x26, 0x90, 0x2a,
+  0xee, 0x66, 0x2d, 0xdc, 0x56, 0x81, 0xd2, 0xe6, 0x89, 0xf7, 0xb4, 0x7a,
+  0x06, 0xd4, 0x47, 0xbc, 0x0c, 0x30, 0xd6, 0x29, 0xc1, 0xce, 0x70, 0x81,
+  0x26, 0x23, 0xa1, 0x63, 0x75, 0x9c, 0x36, 0x21, 0x6a, 0xf9, 0xf2, 0x48,
+  0xd3, 0xe3, 0xae, 0x0e, 0xe3, 0xfb, 0x1e, 0xb5, 0x55, 0x22, 0xcb, 0xa4,
+  0x9d, 0x03, 0x1f, 0xcf, 0xa2, 0xbd, 0x15, 0x6e, 0xb3, 0x5c, 0xcc, 0x2e,
+  0xaf, 0x7c, 0x33, 0x4a, 0xd0, 0xa1, 0x34, 0x62, 0x2b, 0x12, 0x93, 0xb4,
+  0x3a, 0x98, 0xa5, 0x77, 0xf9, 0xd2, 0x8b, 0x2a, 0xdf, 0xca, 0x94, 0x35,
+  0x25, 0x92, 0x63, 0x72, 0x24, 0x1e, 0x4e, 0x70, 0x36, 0xd7, 0x76, 0xd4,
+  0x96, 0x2d, 0xe4, 0xcc, 0x66, 0x95, 0xa8, 0x14, 0x09, 0x13, 0x6e, 0xee,
+  0xb8, 0x24, 0xa7, 0x5b, 0x94, 0x37, 0x24, 0xc7, 0x92, 0x42, 0x63, 0x80,
+  0xa1, 0x72, 0x4a, 0xdf, 0xae, 0xc7, 0x74, 0x07, 0x82, 0x12, 0x41, 0x2e,
+  0x4b, 0x09, 0xb6, 0x10, 0x9e, 0x82, 0xf9, 0x42, 0xaf, 0x71, 0x68, 0xea,
+  0x72, 0x48, 0x0a, 0x17, 0xa7, 0xd5, 0x87, 0x80, 0x14, 0x5a, 0xf9, 0xe6,
+  0x15, 0x28, 0x08, 0xa0, 0xe3, 0x91, 0xee, 0x90, 0x77, 0x75, 0x8c, 0x2e,
+  0x68, 0xe7, 0x12, 0xab, 0xc4, 0x18, 0x01, 0x25, 0x7b, 0x0a, 0x47, 0x85,
+  0xdc, 0xbe, 0xd3, 0x04, 0x03, 0xc1, 0xab, 0xc9, 0xa0, 0x2a, 0xc6, 0xb3,
+  0x5a, 0x62, 0xc0, 0xe8, 0xb3, 0xc5, 0x62, 0xcb, 0xb5, 0x48, 0x5d, 0x29,
+  0x34, 0xb4, 0xcd, 0xaa, 0x0f, 0xb9, 0xe5, 0xc4, 0x48, 0xa5, 0x6a, 0x10,
+  0x13, 0xef, 0xe0, 0x88, 0xae, 0x48, 0x3d, 0xdc, 0x23, 0x67, 0xa0, 0x29,
+  0x25, 0xba, 0xdd, 0x68, 0x33, 0x83, 0x00, 0x2b, 0xe8, 0x96, 0x37, 0xc8,
+  0x63, 0xb0, 0xd8, 0xcb, 0xb4, 0x59, 0x27, 0xd4, 0xbc, 0x6a, 0xfc, 0x3c,
+  0xbb, 0x30, 0xc7, 0x69, 0x5a, 0xc8, 0x00, 0x8f, 0x1c, 0xa8, 0x75, 0xfa,
+  0x2d, 0xfe, 0x4c, 0x42, 0xc9, 0x61, 0xe6, 0xf2, 0x5c, 0x9e, 0x99, 0xcc,
+  0xb4, 0x79, 0xe1, 0x4f, 0x07, 0x31, 0xb5, 0x3b, 0xec, 0xb3, 0x8d, 0xce,
+  0xd5, 0xc3, 0xa6, 0x0d, 0x33, 0x08, 0xeb, 0x14, 0xf6, 0x2b, 0x16, 0x68,
+  0x24, 0xea, 0xf1, 0x34, 0x81, 0x56, 0xbe, 0x5f, 0xdf, 0x50, 0x44, 0x6b,
+  0xec, 0xd1, 0x77, 0x91, 0x50, 0x3a, 0xa5, 0x48, 0x0a, 0xe7, 0x2b, 0xa6,
+  0xa4, 0xb4, 0x58, 0x3e, 0x39, 0xa8, 0xb5, 0x01, 0xcb, 0x1d, 0x41, 0x4b,
+  0xf2, 0xde, 0x52, 0xa4, 0xb4, 0x3f, 0xf4, 0x54, 0x53, 0xb2, 0x44, 0xb9,
+  0xea, 0xa0, 0x1a, 0x9a, 0x56, 0x19, 0x4a, 0xaa, 0xd5, 0x8f, 0xf2, 0x17,
+  0xf8, 0xc8, 0xb7, 0x59, 0x0e, 0x7a, 0x1f, 0x58, 0xff, 0xb4, 0xe5, 0x9c,
+  0x4c, 0xe3, 0xcb, 0xa4, 0x72, 0xa5, 0x02, 0x45, 0x12, 0xe4, 0xa9, 0xcd,
+  0x47, 0xc5, 0x3b, 0x9b, 0xc3, 0x66, 0x06, 0xc4, 0xc6, 0xa6, 0x18, 0xa8,
+  0x1a, 0x5b, 0xdf, 0x4f, 0x33, 0x3f, 0xc1, 0x60, 0x2c, 0x89, 0x8c, 0x5c,
+  0x57, 0x42, 0x1d, 0xc9, 0xf2, 0xe8, 0x43, 0x9e, 0xdd, 0xd9, 0xb4, 0x0f,
+  0x03, 0xeb, 0xec, 0xfa, 0x5e, 0x19, 0xb5, 0x3c, 0x30, 0x3b, 0x2f, 0x84,
+  0x88, 0xd4, 0xa5, 0x35, 0xae, 0xee, 0xae, 0xd1, 0xd4, 0x2e, 0xea, 0xe9,
+  0xea, 0xe6, 0x1a, 0x7d, 0x4f, 0xc0, 0x6f, 0x28, 0xb1, 0x61, 0x4e, 0xab,
+  0xb3, 0x88, 0xc3, 0x85, 0x20, 0x15, 0x2c, 0xae, 0x3c, 0xc5, 0xc3, 0x11,
+  0x2d, 0x5a, 0xb0, 0xc5, 0x49, 0xa8, 0xd0, 0xd3, 0x26, 0x29, 0x17, 0x0b,
+  0x31, 0x02, 0x12, 0x8b, 0xa1, 0x7e, 0xa6, 0xd8, 0x6f, 0x89, 0x2a, 0xee,
+  0xab, 0x68, 0x35, 0x73, 0x3d, 0x64, 0xb9, 0x02, 0x9b, 0x00, 0xed, 0xc6,
+  0xa3, 0x98, 0xda, 0x62, 0x45, 0xd1, 0x65, 0x59, 0xf8, 0x0a, 0x00, 0x62,
+  0x22, 0x20, 0x0d, 0xd6, 0x14, 0x08, 0x2b, 0xcd, 0x6f, 0xb2, 0xb2, 0xc8,
+  0xa9, 0x9d, 0xc3, 0x4d, 0x52, 0x66, 0x94, 0x00, 0xd2, 0x79, 0x73, 0xfa,
+  0xf6, 0xa8, 0x63, 0x54, 0x5c, 0x42, 0x21, 0xe3, 0xec, 0x01, 0xaf, 0x9b,
+  0x8a, 0xbb, 0xa5, 0x01, 0xbf, 0x0a, 0x68, 0x2c, 0xc3, 0x6b, 0x4e, 0xa1,
+  0xcd, 0xa8, 0xec, 0x40, 0x01, 0x2a, 0xc0, 0xb8, 0x95, 0xa4, 0x10, 0xce,
+  0xaa, 0x43, 0x9f, 0xae, 0xb2, 0x17, 0x5d, 0xee, 0x68, 0xf9, 0x84, 0xba,
+  0x3f, 0xd1, 0x6f, 0xa9, 0x43, 0x7a, 0x21, 0xce, 0x28, 0xca, 0x97, 0xe6,
+  0x5c, 0x18, 0x76, 0x69, 0x92, 0x4f, 0x9a, 0x18, 0xc0, 0xde, 0xe3, 0x2b,
+  0x93, 0x7b, 0x2f, 0x91, 0x35, 0x1d, 0x5f, 0xac, 0x34, 0xf8, 0x2e, 0x5a,
+  0xa9, 0xd0, 0x9e, 0xa8, 0x57, 0x94, 0xb8, 0x94, 0x16, 0x6d, 0x2f, 0x1d,
+  0x0f, 0x34, 0x67, 0xde, 0xc7, 0x99, 0xaf, 0x27, 0xf7, 0xd4, 0x33, 0xd7,
+  0x8c, 0xce, 0x83, 0x3f, 0x45, 0x32, 0x2c, 0x56, 0x3f, 0x4d, 0xf5, 0xd4,
+  0x83, 0x78, 0x98, 0x89, 0x2d, 0x3b, 0xb6, 0xa6, 0xa4, 0xe6, 0x6f, 0x5a,
+  0x67, 0x00, 0x36, 0xe5, 0xf5, 0xbd, 0x37, 0xb0, 0x8c, 0x62, 0xc8, 0xd0,
+  0xbf, 0x36, 0x44, 0x2e, 0x49, 0xc7, 0x8a, 0x46, 0x49, 0x77, 0xaf, 0x3a,
+  0xcd, 0xf5, 0x2e, 0xc3, 0xe1, 0xe6, 0xf5, 0x09, 0xea, 0x72, 0x1b, 0x29,
+  0x8d, 0xd6, 0x64, 0x25, 0x42, 0x36, 0xda, 0x64, 0x00, 0xf9, 0x4e, 0xd7,
+  0x05, 0x37, 0x11, 0x57, 0xaf, 0xdf, 0x7c, 0xcb, 0x66, 0x3a, 0x99, 0x7d,
+  0xe7, 0xfe, 0x5a, 0xdc, 0xfd, 0xc9, 0x24, 0xa0, 0x68, 0x31, 0x9a, 0xc7,
+  0xaf, 0x48, 0x49, 0x21, 0xa5, 0x66, 0xf8, 0x60, 0x1e, 0x41, 0xcd, 0x51,
+  0x21, 0xce, 0x87, 0x35, 0x77, 0x31, 0xc2, 0x89, 0xe1, 0x55, 0x2f, 0x35,
+  0x70, 0xd8, 0x42, 0x2f, 0xe4, 0x07, 0xa4, 0xe2, 0x2a, 0x5e, 0x99, 0xf4,
+  0x85, 0xad, 0x66, 0xe5, 0x0d, 0xc1, 0x3a, 0xdc, 0x30, 0x6c, 0x27, 0x77,
+  0x21, 0x32, 0xdb, 0x61, 0xf7, 0x21, 0xa4, 0xbc, 0x34, 0xa6, 0x88, 0x29,
+  0xce, 0xa5, 0x80, 0xa1, 0x46, 0x5f, 0xc9, 0x3c, 0x64, 0x7e, 0x9a, 0xe1,
+  0x66, 0x90, 0xda, 0xbc, 0x22, 0xa5, 0xa2, 0xa2, 0xb6, 0x38, 0x35, 0xd8,
+  0xcc, 0xf6, 0x2f, 0x71, 0x52, 0x0d, 0xb3, 0x4c, 0x94, 0x37, 0x0c, 0xfd,
+  0x60, 0x16, 0x42, 0xa0, 0x2f, 0x63, 0xc3, 0x27, 0xaa, 0x1d, 0xa7, 0x47,
+  0x05, 0x57, 0xa1, 0x71, 0xda, 0x13, 0xa5, 0xfd, 0x71, 0xee, 0x0f, 0xd5,
+  0x5b, 0x9b, 0x98, 0x0d, 0x30, 0xaf, 0x5f, 0x62, 0x80, 0x7d, 0x21, 0xe1,
+  0x28, 0xcd, 0xc1, 0xa5, 0xba, 0xbd, 0xbd, 0xdd, 0xec, 0x35, 0xc2, 0xbb,
+  0x4c, 0x82, 0x18, 0x51, 0x49, 0xab, 0x9a, 0xae, 0x76, 0x78, 0x66, 0xab,
+  0xb7, 0xe0, 0xc6, 0x5c, 0x6c, 0x70, 0x07, 0x4e, 0xd8, 0xa3, 0x3e, 0x12,
+  0x3c, 0xb5, 0xc7, 0x8b, 0x86, 0x6b, 0xff, 0x0a, 0x4e, 0xf8, 0xa2, 0x6e,
+  0x1d, 0xdb, 0x2d, 0xa0, 0xcd, 0xbc, 0x88, 0x93, 0xf1, 0x34, 0x9f, 0xd3,
+  0xa4, 0x03, 0xc3, 0x06, 0x24, 0xc3, 0x89, 0x5d, 0x0e, 0x4e, 0xce, 0xde,
+  0x11, 0x38, 0x33, 0xf6, 0x70, 0xcc, 0x2b, 0xce, 0x8e, 0xc1, 0x9f, 0x91,
+  0xc5, 0xe3, 0xc0, 0xf4, 0x7b, 0xae, 0x55, 0x0a, 0xf0, 0x06, 0x91, 0x20,
+  0x39, 0xb1, 0x2d, 0x8f, 0x08, 0xb7, 0xcf, 0x58, 0xa2, 0xa2, 0x7b, 0xab,
+  0xb5, 0xd8, 0x5e, 0x0e, 0x7c, 0xb3, 0x17, 0x99, 0x4f, 0x6b, 0x0f, 0xda,
+  0xc4, 0x0c, 0x4f, 0x6f, 0xb7, 0x71, 0xcc, 0x0d, 0x00, 0xb5, 0x57, 0xc1,
+  0x56, 0xa7, 0x06, 0xeb, 0x5c, 0x1c, 0x05, 0x26, 0xdc, 0x2b, 0x69, 0xae,
+  0x92, 0x1a, 0x44, 0xb4, 0x56, 0x60, 0x9c, 0xe5, 0xb5, 0x32, 0x26, 0xf5,
+  0xb2, 0xea, 0x58, 0x11, 0xe7, 0xd3, 0xbc, 0x8d, 0x05, 0xab, 0x63, 0x35,
+  0xab, 0x94, 0xa5, 0x22, 0xc8, 0xcb, 0xb8, 0x7b, 0x54, 0xdd, 0x32, 0xee,
+  0x6c, 0x6f, 0x01, 0xab, 0xbc, 0xeb, 0xf2, 0x77, 0x07, 0x33, 0x94, 0x8b,
+  0xad, 0x2f, 0x08, 0x9f, 0xb0, 0x16, 0xcb, 0x4f, 0x50, 0x27, 0xbb, 0x0b,
+  0x07, 0x2d, 0x13, 0xf1, 0x10, 0xd2, 0x64, 0x02, 0x5a, 0x55, 0xae, 0xf5,
+  0x44, 0x04, 0x15, 0x5a, 0x65, 0x5e, 0xd6, 0xfd, 0x2c, 0x11, 0x41, 0x6d,
+  0xb5, 0xad, 0x56, 0x89, 0x11, 0x7f, 0x83, 0x2e, 0x0f, 0x1e, 0x5c, 0x46,
+  0x8f, 0x42, 0x45, 0xcb, 0x0d, 0xd1, 0xa9, 0x51, 0x01, 0xce, 0xb2, 0x11,
+  0xeb, 0x45, 0x06, 0xd1, 0xd6, 0x77, 0xe4, 0x17, 0xc2, 0x4e, 0x77, 0x30,
+  0x05, 0x1f, 0xb3, 0x44, 0x93, 0xfb, 0xb1, 0xc7, 0x30, 0x6c, 0x22, 0x37,
+  0xf1, 0x54, 0x98, 0x05, 0x7a, 0x1d, 0x5b, 0x30, 0xde, 0xa4, 0xd4, 0x41,
+  0xeb, 0x83, 0x26, 0x1c, 0xce, 0xc5, 0x5e, 0xd6, 0x4e, 0x56, 0x9c, 0x2d,
+  0x8b, 0xb3, 0x32, 0x04, 0x0c, 0x56, 0xbb, 0x44, 0x66, 0xb3, 0xb9, 0x40,
+  0x47, 0xec, 0xcb, 0x4b, 0x27, 0x93, 0x91, 0xb5, 0x14, 0xc5, 0x08, 0xc5,
+  0xa8, 0x93, 0xd8, 0x93, 0xde, 0x25, 0x30, 0xa3, 0xf3, 0x83, 0x96, 0x37,
+  0x7d, 0x13, 0xf9, 0x21, 0xcd, 0xa9, 0x64, 0xa8, 0xb9, 0x95, 0x4f, 0x60,
+  0x76, 0x19, 0xf1, 0x01, 0x5f, 0x97, 0x03, 0xe0, 0xb3, 0x88, 0xa7, 0xa4,
+  0xb6, 0xdb, 0x82, 0xfd, 0x48, 0xea, 0x94, 0x51, 0x9c, 0x09, 0x93, 0xc8,
+  0x2d, 0xb0, 0xe8, 0x85, 0xf4, 0x3d, 0x9b, 0x40, 0xa9, 0x3d, 0x87, 0xe0,
+  0x07, 0x93, 0x45, 0x98, 0xf2, 0xbf, 0x1d, 0xc5, 0xed, 0x5a, 0x1c, 0xa2,
+  0x9b, 0x1f, 0x3e, 0x81, 0xe0, 0x76, 0xc0, 0x07, 0x69, 0x9e, 0xcf, 0x15,
+  0xf9, 0xaf, 0x0c, 0x23, 0xa6, 0xd1, 0x3b, 0x5f, 0xde, 0xbf, 0x0b, 0x88,
+  0x7b, 0x22, 0x9c, 0x87, 0x96, 0x12, 0x2d, 0x90, 0xf6, 0x0e, 0x98, 0x4b,
+  0x4b, 0x58, 0xbf, 0x43, 0xd1, 0x0e, 0x7f, 0xf8, 0x58, 0x2e, 0x8f, 0x14,
+  0xf3, 0xa4, 0xd1, 0x7b, 0x9d, 0x06, 0xda, 0xca, 0xfa, 0x6f, 0x2c, 0xe7,
+  0xf3, 0xc7, 0x8b, 0x79, 0x93, 0xfb, 0xae, 0x22, 0xdd, 0x97, 0xf4, 0xb9,
+  0x27, 0xe8, 0x19, 0x8e, 0xe2, 0x37, 0x11, 0xf3, 0xf8, 0xc1, 0x69, 0x59,
+  0x5c, 0x62, 0x5a, 0x09, 0x7a, 0xad, 0x3d, 0x51, 0x7f, 0x6a, 0x02, 0x6e,
+  0x5c, 0x6e, 0x88, 0x68, 0x61, 0xda, 0xf6, 0x96, 0xde, 0x8a, 0xe8, 0x2d,
+  0x15, 0xa9, 0xda, 0xa5, 0x64, 0x32, 0xa3, 0x98, 0x91, 0x57, 0xd8, 0x63,
+  0x4f, 0x64, 0x94, 0x30, 0x46, 0x59, 0x8e, 0x4d, 0x0d, 0xcb, 0x5c, 0xfa,
+  0x59, 0xb9, 0xd9, 0xb2, 0x70, 0x63, 0x98, 0x63, 0x4f, 0x55, 0xa3, 0x71,
+  0xe5, 0x3b, 0x4d, 0xab, 0x8c, 0x40, 0x29, 0x82, 0x7e, 0x13, 0x5b, 0x44,
+  0x56, 0xab, 0x4b, 0x60, 0xce, 0x49, 0x6e, 0x1c, 0x65, 0x6e, 0x0a, 0xbb,
+  0xf0, 0x30, 0x37, 0x49, 0xc6, 0x27, 0xda, 0x9c, 0xa3, 0x16, 0x65, 0x08,
+  0xd6, 0xe8, 0x09, 0x5c, 0xd5, 0xfa, 0x46, 0x5c, 0x30, 0xe8, 0xee, 0xd3,
+  0xa1, 0x96, 0x99, 0xd7, 0xaa, 0xae, 0xa1, 0x5a, 0x13, 0x93, 0xfd, 0xb9,
+  0xc7, 0x18, 0x72, 0x24, 0xb2, 0x51, 0x18, 0x63, 0x4c, 0x65, 0x07, 0x4e,
+  0x79, 0xa5, 0x52, 0x99, 0x8d, 0x87, 0x5d, 0xd1, 0xfd, 0x8e, 0x5f, 0x51,
+  0x77, 0x2e, 0x6a, 0x6f, 0xed, 0x80, 0x37, 0xfb, 0xdd, 0x08, 0x4c, 0x52,
+  0x46, 0x25, 0x1d, 0xb1, 0xf3, 0xd4, 0x45, 0x1c, 0xa6, 0x0e, 0x5f, 0xce,
+  0x76, 0x72, 0x26, 0x83, 0xb6, 0xa4, 0x9f, 0xd3, 0xb6, 0x1b, 0x0d, 0x48,
+  0x81, 0x42, 0xb9, 0x9a, 0x21, 0x36, 0x3b, 0x4a, 0x13, 0xee, 0x09, 0xc2,
+  0x41, 0x6b, 0x38, 0x65, 0x38, 0xe7, 0xe6, 0x84, 0x3d, 0x16, 0xa3, 0x0e,
+  0x5c, 0x18, 0xdc, 0x98, 0x48, 0x15, 0xed, 0xa0, 0x2c, 0xae, 0x53, 0x16,
+  0x6a, 0xe4, 0x96, 0x20, 0x50, 0x56, 0xb5, 0x9b, 0x38, 0xde, 0x9a, 0x8d,
+  0xb9, 0xc7, 0x33, 0xa6, 0x82, 0x78, 0x4e, 0x14, 0x3a, 0xd9, 0x0a, 0xfd,
+  0x65, 0x15, 0x81, 0x8c, 0x5e, 0x27, 0xcc, 0x2d, 0x6d, 0xcb, 0xcc, 0xe7,
+  0x78, 0x88, 0x29, 0x89, 0xbf, 0xe3, 0x45, 0x65, 0x76, 0xdd, 0xbd, 0xa8,
+  0x02, 0x3b, 0xba, 0x3c, 0x47, 0xdb, 0x91, 0x1f, 0xba, 0xb1, 0xc8, 0xf3,
+  0x1f, 0xed, 0xf3, 0x29, 0xb8, 0xbb, 0xa7, 0xa2, 0xd6, 0xb6, 0x7b, 0xff,
+  0x10, 0xb3, 0xc1, 0x62, 0xf5, 0x49, 0x8c, 0xa4, 0x9a, 0xfb, 0x42, 0x4a,
+  0x0f, 0x91, 0x84, 0x9c, 0x04, 0x8a, 0xce, 0x31, 0xe3, 0xc2, 0xe0, 0xe6,
+  0xcc, 0x58, 0x94, 0x73, 0x11, 0x68, 0x6d, 0xcf, 0xbd, 0xbe, 0x8d, 0xf7,
+  0x5a, 0xdc, 0x5c, 0x64, 0xa9, 0xe3, 0x9e, 0x12, 0x50, 0x66, 0x56, 0xd9,
+  0x94, 0xe5, 0x7f, 0xc7, 0xac, 0x55, 0x0c, 0xd6, 0xa7, 0x65, 0x9b, 0x6d,
+  0xf8, 0xdb, 0xd4, 0xcb, 0x31, 0xad, 0x6c, 0x49, 0x24, 0x83, 0x99, 0x59,
+  0x7c, 0x46, 0x6a, 0x3f, 0xaf, 0x9a, 0x8f, 0x84, 0x18, 0xa8, 0x7d, 0x74,
+  0x9b, 0xb8, 0xe8, 0xe8, 0xe0, 0xcd, 0x54, 0x10, 0x38, 0x5a, 0x6f, 0x26,
+  0xfd, 0x22, 0x39, 0x8b, 0x4f, 0x7c, 0x79, 0x89, 0xa6, 0xe7, 0xf1, 0x24,
+  0x40, 0x49, 0xf2, 0xd2, 0x41, 0x09, 0x0c, 0x5c, 0xdb, 0x98, 0x70, 0x0e,
+  0x9c, 0x78, 0x72, 0xf4, 0x07, 0x54, 0x52, 0x96, 0x8e, 0x2f, 0x7a, 0x91,
+  0x62, 0x81, 0xa8, 0x03, 0x25, 0x54, 0xb6, 0x35, 0x26, 0x23, 0x55, 0xea,
+  0x56, 0x68, 0x46, 0xec, 0xf2, 0xc0, 0x1f, 0x77, 0xed, 0x5f, 0xf7, 0x5e,
+  0x6c, 0x30, 0x05, 0x10, 0xe0, 0xd8, 0x3e, 0xe0, 0x75, 0x4c, 0xaa, 0xb9,
+  0xb5, 0x00, 0x3c, 0x04, 0xff, 0x35, 0xcf, 0xcd, 0xe9, 0x26, 0xf7, 0xbc,
+  0xb7, 0xbb, 0x8d, 0xf9, 0x01, 0x61, 0xf7, 0x35, 0x13, 0xd5, 0x75, 0x55,
+  0x1a, 0x5f, 0x65, 0xb8, 0x4c, 0x64, 0xe4, 0x1a, 0xc1, 0xcc, 0x88, 0xab,
+  0x2b, 0x79, 0xf1, 0x91, 0xfe, 0xca, 0x3e, 0xbf, 0x95, 0x77, 0xa7, 0x1f,
+  0xcf, 0xde, 0x9f, 0x7e, 0xf7, 0xb7, 0x95, 0x35, 0x4d, 0x4a, 0x2b, 0xd3,
+  0x15, 0x3f, 0xa3, 0x38, 0xec, 0x21, 0xe5, 0x0f, 0x70, 0xb2, 0xa3, 0xb0,
+  0xa3, 0x3a, 0x41, 0x38, 0x1d, 0x86, 0xd2, 0xbe, 0x3c, 0x22, 0xf3, 0x54,
+  0x68, 0xd7, 0x81, 0x9d, 0x3b, 0x1d, 0xfc, 0x53, 0x97, 0x09, 0x7b, 0xb5,
+  0xfc, 0x79, 0xe4, 0x01, 0x3b, 0x0e, 0x36, 0x77, 0xe7, 0xa1, 0x83, 0x59,
+  0x8f, 0x27, 0xf1, 0xed, 0xe0, 0x81, 0x40, 0xf5, 0xf9, 0xc9, 0x5b, 0xb8,
+  0xff, 0xb1, 0x70, 0x56, 0xca, 0xfb, 0xb1, 0x3b, 0xbc, 0xbc, 0x4d, 0x17,
+  0x35, 0x87, 0x54, 0xae, 0xc8, 0x0b, 0xe6, 0x97, 0x06, 0x05, 0x22, 0xb2,
+  0x06, 0xed, 0x41, 0xfc, 0x8f, 0x06, 0xac, 0x1b, 0x46, 0xa4, 0x78, 0x21,
+  0x82, 0xf0, 0x8c, 0xb3, 0x60, 0x29, 0xab, 0x96, 0x57, 0xa4, 0x77, 0xe9,
+  0x70, 0x46, 0x95, 0xa6, 0x68, 0xbb, 0x21, 0xd0, 0xd4, 0x13, 0xe2, 0x53,
+  0xbc, 0xfe, 0x5f, 0x58, 0x8c, 0xcb, 0x84, 0x68, 0x84, 0x38, 0xe1, 0x07,
+  0xbd, 0x16, 0x9d, 0x4d, 0x0d, 0xae, 0xd2, 0x95, 0x09, 0xeb, 0x45, 0x1b,
+  0x58, 0x46, 0xd1, 0xef, 0x9a, 0xbf, 0xf2, 0x32, 0x01, 0xa9, 0xda, 0x0c,
+  0x95, 0x44, 0x38, 0x16, 0xd9, 0x65, 0xce, 0xfa, 0xf5, 0xdb, 0x6c, 0x58,
+  0x16, 0x55, 0x71, 0x21, 0x75, 0x8c, 0x56, 0xf1, 0x3e, 0x3e, 0xee, 0x47,
+  0xb7, 0xe9, 0x40, 0xc1, 0x32, 0x7a, 0x7e, 0x20, 0x90, 0x45, 0x21, 0x06,
+  0xca, 0xcb, 0x2c, 0xad, 0x71, 0x43, 0xb4, 0x22, 0x0b, 0x31, 0x5f, 0xf1,
+  0xa5, 0x54, 0x40, 0x08, 0xc9, 0x74, 0x87, 0x31, 0x87, 0x63, 0xba, 0x94,
+  0xa7, 0xa9, 0xcf, 0xdc, 0x63, 0x56, 0x4f, 0xcc, 0x8d, 0xea, 0x64, 0x6b,
+  0x10, 0x22, 0x91, 0x54, 0xe9, 0x66, 0x25, 0xca, 0x4e, 0xb4, 0x00, 0x24,
+  0xce, 0x73, 0x8d, 0xc1, 0x85, 0xe2, 0xc2, 0x0b, 0x5f, 0x4a, 0x71, 0x81,
+  0xd1, 0x06, 0xa4, 0x46, 0x35, 0xcd, 0x47, 0x45, 0x49, 0x69, 0x6d, 0x78,
+  0xe4, 0xe4, 0x97, 0xd8, 0x02, 0x78, 0x56, 0x62, 0x01, 0x33, 0x35, 0x95,
+  0xf0, 0xdb, 0x2f, 0xdd, 0x5e, 0xd1, 0xfd, 0x21, 0xbc, 0x6d, 0x75, 0x61,
+  0xaa, 0x91, 0x95, 0x4e, 0xc0, 0x24, 0xd7, 0xed, 0x45, 0xeb, 0x6e, 0x54,
+  0x10, 0x00, 0x5e, 0xf6, 0xc3, 0x22, 0x4d, 0xe0, 0x89, 0x81, 0xcd, 0x79,
+  0x95, 0x5d, 0x86, 0x50, 0x1f, 0x0c, 0x12, 0x11, 0x61, 0x7a, 0x59, 0x85,
+  0x93, 0x66, 0x24, 0xfa, 0x42, 0x29, 0x32, 0xa2, 0xc9, 0x07, 0x0c, 0x0a,
+  0x19, 0x00, 0x4f, 0x0b, 0x73, 0xdf, 0x52, 0x19, 0x4b, 0x82, 0x9e, 0x22,
+  0x0d, 0x71, 0xcb, 0xaa, 0x36, 0xf7, 0xe8, 0xaf, 0x91, 0x5a, 0x80, 0xa7,
+  0xe0, 0xa9, 0x47, 0xcd, 0x18, 0x5a, 0xce, 0x1a, 0xcd, 0xd1, 0xb2, 0xf6,
+  0x95, 0xe3, 0x49, 0xb3, 0x80, 0x7f, 0x5e, 0xce, 0xff, 0x43, 0xf6, 0xd5,
+  0x9c, 0x9b, 0x47, 0x12, 0x1c, 0x02, 0x85, 0x26, 0x6e, 0xde, 0x04, 0xff,
+  0x7b, 0x44, 0xdb, 0x2e, 0xff, 0x90, 0x34, 0x08, 0x57, 0x24, 0x14, 0xf8,
+  0x83, 0xad, 0x78, 0x90, 0x82, 0x7e, 0x5c, 0x46, 0xfb, 0x35, 0xea, 0xa0,
+  0x8b, 0x6a, 0x34, 0xb9, 0x36, 0x44, 0xfb, 0x25, 0xb9, 0x19, 0xd8, 0x5f,
+  0xf2, 0x10, 0xe7, 0xa4, 0xc5, 0x22, 0xe7, 0x9c, 0x62, 0x19, 0x5e, 0xb4,
+  0xe5, 0x75, 0x3a, 0x55, 0x58, 0x96, 0x96, 0xc0, 0x39, 0x6f, 0x8f, 0xa1,
+  0xbc, 0x41, 0x69, 0x88, 0xa0, 0x6c, 0xfc, 0x34, 0xcb, 0xe7, 0xf6, 0xbd,
+  0xb6, 0x28, 0x46, 0xac, 0xcc, 0x88, 0x86, 0xc2, 0x25, 0x40, 0x8d, 0x8a,
+  0x04, 0x44, 0x9e, 0x51, 0x8f, 0x62, 0x1c, 0xfb, 0xf9, 0x13, 0x30, 0x71,
+  0x0b, 0x6b, 0x60, 0x62, 0x4a, 0xa1, 0x9a, 0xa3, 0xc6, 0x64, 0x05, 0x81,
+  0x53, 0x3e, 0x8f, 0xc6, 0x06, 0xdb, 0x9b, 0x7c, 0x64, 0x87, 0x43, 0x42,
+  0x5d, 0xbc, 0x64, 0xbf, 0xc2, 0xfb, 0xd7, 0x87, 0xad, 0xe1, 0x9e, 0x3d,
+  0xdf, 0xdd, 0xf8, 0xa3, 0x33, 0x4c, 0x9b, 0x9c, 0xd0, 0x99, 0xbc, 0xfe,
+  0xf8, 0xb2, 0xf7, 0xe5, 0xee, 0x45, 0xbc, 0xd3, 0xdb, 0xfc, 0xcf, 0xbf,
+  0xbf, 0xed, 0x2c, 0xd9, 0xf8, 0xb6, 0xdd, 0x82, 0x8f, 0xed, 0x78, 0x04,
+  0x31, 0x8a, 0xf6, 0xe1, 0x8f, 0xcf, 0x17, 0x77, 0x81, 0xd2, 0x1d, 0x53,
+  0x35, 0xcb, 0x46, 0xe8, 0x8d, 0xf6, 0xc9, 0xe9, 0xda, 0x26, 0xe0, 0xec,
+  0x35, 0xbe, 0x07, 0x93, 0x76, 0xd4, 0xe5, 0x4b, 0x39, 0x3e, 0x65, 0x0c,
+  0x1f, 0xec, 0xb3, 0x1e, 0x6b, 0x21, 0x4a, 0x5c, 0x74, 0xcd, 0xb4, 0x68,
+  0xbf, 0x82, 0x34, 0x3b, 0x37, 0xf5, 0x82, 0xf2, 0xa4, 0x33, 0x93, 0xca,
+  0x86, 0xfb, 0x51, 0x0f, 0xff, 0xf0, 0xfe, 0x84, 0x23, 0x70, 0xc6, 0x97,
+  0x5c, 0x4c, 0x43, 0x12, 0xda, 0xc0, 0x13, 0x69, 0x89, 0x1b, 0x23, 0x6f,
+  0xce, 0xa6, 0x20, 0x29, 0xea, 0x6c, 0xec, 0x24, 0x53, 0x3d, 0x08, 0x41,
+  0xd9, 0xc8, 0x27, 0xa5, 0x0e, 0x7a, 0xce, 0xfc, 0x4c, 0x04, 0x9f, 0x40,
+  0x91, 0x14, 0x15, 0x4b, 0x22, 0x7a, 0x21, 0xe7, 0x31, 0xb5, 0xc6, 0x13,
+  0x58, 0xc2, 0x38, 0xc6, 0xac, 0x54, 0x20, 0x17, 0x65, 0x1c, 0xe3, 0x85,
+  0x2c, 0x40, 0x75, 0x8f, 0x4e, 0x84, 0x36, 0x15, 0x85, 0x6d, 0x3e, 0xb5,
+  0x53, 0xa6, 0xb9, 0x7a, 0x24, 0xc2, 0xb9, 0xff, 0x22, 0x3e, 0xb6, 0x9c,
+  0xd6, 0xa9, 0x27, 0xd3, 0x0e, 0x6c, 0xff, 0xb2, 0xc2, 0xdd, 0xe3, 0x17,
+  0x12, 0x9f, 0xff, 0xe9, 0xfc, 0x94, 0x41, 0x38, 0x62, 0x41, 0xdd, 0x9e,
+  0xd7, 0x87, 0xf2, 0x79, 0xf3, 0x10, 0xb8, 0x1c, 0x17, 0x04, 0x6d, 0xfd,
+  0xb6, 0x44, 0x38, 0x19, 0x8d, 0x22, 0x14, 0xf2, 0x90, 0x8b, 0xaa, 0x55,
+  0xd5, 0x23, 0xcc, 0x82, 0x45, 0xa2, 0x53, 0x2e, 0x76, 0xa9, 0xfe, 0x8c,
+  0x7f, 0xfc, 0xd3, 0x77, 0x8a, 0x7d, 0xff, 0x23, 0xa5, 0x49, 0xa4, 0xa8,
+  0x52, 0x98, 0xed, 0x50, 0x55, 0xa2, 0x6a, 0xa8, 0x2a, 0x7f, 0x9f, 0x15,
+  0x92, 0xb4, 0x28, 0x71, 0xf6, 0x39, 0x7d, 0xc1, 0xf1, 0x7e, 0x5f, 0xf9,
+  0xd3, 0x8a, 0xc4, 0x83, 0xd5, 0x95, 0x2a, 0xc5, 0x01, 0xa2, 0x97, 0xcb,
+  0xac, 0xcd, 0x46, 0x97, 0xa4, 0x4c, 0x7a, 0xe1, 0x14, 0x63, 0xb7, 0x48,
+  0x54, 0x7b, 0x40, 0xd5, 0xa1, 0x84, 0x94, 0xe2, 0x54, 0x4a, 0x4a, 0xef,
+  0x01, 0x45, 0xc1, 0xd6, 0xbc, 0x00, 0x98, 0xa5, 0xa7, 0x9a, 0xd1, 0xef,
+  0x53, 0x32, 0x5a, 0x7b, 0x8c, 0x3f, 0x94, 0xe5, 0x73, 0x42, 0xb7, 0x1d,
+  0x64, 0x08, 0xe0, 0x87, 0x7f, 0x80, 0xd0, 0xec, 0xd6, 0xb7, 0xc5, 0x3f,
+  0xdd, 0xf0, 0x69, 0x07, 0x7d, 0x62, 0x1d, 0x5c, 0xc4, 0xc7, 0x3f, 0x6d,
+  0x62, 0x71, 0x7b, 0xe7, 0x13, 0xff, 0x8e, 0x98, 0x11, 0x7a, 0x02, 0x4b,
+  0x62, 0x63, 0xf7, 0x2d, 0xea, 0x62, 0x64, 0x3e, 0x89, 0x90, 0x41, 0x5d,
+  0xb4, 0x86, 0xff, 0xd9, 0xc3, 0x3f, 0xbf, 0xdf, 0x8c, 0x77, 0x7f, 0xb4,
+  0x9f, 0xfd, 0xd3, 0xe6, 0xc7, 0x3f, 0x6d, 0x75, 0x42, 0xb8, 0x05, 0x16,
+  0x26, 0xcc, 0x49, 0x57, 0xaf, 0xa8, 0x40, 0x42, 0x0a, 0x03, 0x25, 0xfd,
+  0xcb, 0x96, 0x6a, 0x90, 0x48, 0x0a, 0xec, 0x24, 0x06, 0xb1, 0x3c, 0xfb,
+  0x5b, 0x80, 0x57, 0x35, 0x4b, 0x10, 0xa8, 0xc2, 0xef, 0x2b, 0x98, 0x1a,
+  0x9e, 0x03, 0x11, 0x59, 0x9e, 0x22, 0x93, 0x3b, 0x01, 0x77, 0xea, 0x91,
+  0x5a, 0x5b, 0x3c, 0x3e, 0x9f, 0x1e, 0x72, 0x52, 0x41, 0xc9, 0x4d, 0xa2,
+  0x46, 0x2c, 0xba, 0x88, 0x06, 0x83, 0xc8, 0x09, 0x41, 0x7f, 0x12, 0x50,
+  0x71, 0x48, 0x8c, 0x91, 0x37, 0x4b, 0x2f, 0xf1, 0xa2, 0x91, 0xff, 0x20,
+  0xdc, 0x51, 0x09, 0xc8, 0x30, 0xa3, 0xc0, 0xd2, 0x45, 0xec, 0xf9, 0x52,
+  0x7e, 0x22, 0x88, 0x6c, 0x27, 0xe6, 0x29, 0x62, 0xb7, 0x40, 0x21, 0x66,
+  0x32, 0x50, 0xe8, 0x67, 0x7a, 0x2a, 0x40, 0x3c, 0xa0, 0xe6, 0xcb, 0xf0,
+  0x6d, 0xed, 0xd9, 0x0d, 0x40, 0x47, 0x6b, 0x48, 0x75, 0xa2, 0x07, 0xc9,
+  0x94, 0x81, 0x85, 0x46, 0x4e, 0xaa, 0x39, 0x04, 0x71, 0x49, 0xe1, 0x96,
+  0xec, 0x31, 0xa1, 0x88, 0x38, 0x73, 0x8d, 0x3f, 0xd6, 0x66, 0x5c, 0x99,
+  0x6d, 0x2b, 0x5a, 0xf8, 0xa7, 0xbc, 0x42, 0xce, 0x17, 0xd1, 0x5b, 0xc2,
+  0xcb, 0xc4, 0xa2, 0x1b, 0x77, 0x74, 0x0f, 0x62, 0x8d, 0xbb, 0xc4, 0xf4,
+  0x8c, 0x8a, 0xa7, 0x3e, 0x53, 0xbd, 0x30, 0xab, 0x68, 0x25, 0x5e, 0x89,
+  0x56, 0x8d, 0xcb, 0x6a, 0x94, 0x54, 0x57, 0x6b, 0xc1, 0x5b, 0xc5, 0x44,
+  0x01, 0xad, 0x5c, 0x93, 0x66, 0xb4, 0xa4, 0xef, 0xb2, 0x40, 0x0b, 0xb4,
+  0x19, 0x24, 0x55, 0x98, 0xb1, 0x0f, 0x1c, 0xf0, 0x95, 0x62, 0x94, 0x91,
+  0x81, 0x70, 0x2f, 0xbe, 0x74, 0x5b, 0xdd, 0x63, 0xef, 0x5d, 0xbf, 0x10,
+  0x65, 0x7d, 0x94, 0xde, 0xac, 0xe7, 0xb3, 0xf1, 0x78, 0xef, 0x11, 0xb4,
+  0x07, 0x4a, 0x9b, 0xe7, 0xdb, 0x8f, 0x9f, 0xb2, 0x13, 0x55, 0x12, 0x0c,
+  0x89, 0xd7, 0xe1, 0xb1, 0xbd, 0x47, 0x0d, 0x0a, 0x0f, 0x2e, 0x59, 0x6f,
+  0x51, 0xcc, 0xcf, 0xf3, 0xff, 0x35, 0xa4, 0xda, 0x2f, 0x17, 0x53, 0x4b,
+  0xce, 0x5a, 0x7f, 0xb7, 0x15, 0xca, 0x37, 0x99, 0x7f, 0x21, 0x7b, 0xf7,
+  0x71, 0xeb, 0x9f, 0x58, 0x13, 0xee, 0x5f, 0xd1, 0x1e, 0xa8, 0xad, 0xbd,
+  0xb1, 0x1d, 0xbd, 0x14, 0x3d, 0x3f, 0xe3, 0x71, 0x3a, 0x8e, 0xb3, 0xc9,
+  0x04, 0x18, 0xc9, 0x2f, 0x97, 0xa0, 0x62, 0x81, 0x11, 0xd5, 0x12, 0xe9,
+  0xb3, 0x36, 0xaa, 0xd0, 0x2c, 0x1e, 0x92, 0x8b, 0x4c, 0x33, 0xa0, 0xc2,
+  0x4d, 0x32, 0x24, 0x5f, 0x40, 0xee, 0x5d, 0xc1, 0x71, 0x64, 0x10, 0x44,
+  0x54, 0xcf, 0x28, 0x60, 0x05, 0xba, 0x20, 0x41, 0xbc, 0xb8, 0x4d, 0x1f,
+  0xb1, 0xed, 0x74, 0xe2, 0x25, 0x4c, 0xf1, 0x7c, 0x10, 0x1c, 0x18, 0x3d,
+  0x96, 0x2e, 0x2a, 0xe4, 0x6d, 0x92, 0x69, 0x3c, 0x42, 0x20, 0x34, 0x11,
+  0x88, 0xcc, 0xc6, 0x43, 0xd8, 0x36, 0x6a, 0x0f, 0x47, 0x0a, 0x3c, 0xde,
+  0x2a, 0xa2, 0x2e, 0xdc, 0xa1, 0xc1, 0x41, 0x29, 0x11, 0x8c, 0xa4, 0x2c,
+  0xd0, 0x21, 0x6e, 0x7c, 0xfc, 0x8f, 0x46, 0x63, 0x7f, 0x40, 0x1d, 0xf4,
+  0x37, 0x38, 0x8a, 0xff, 0x6b, 0x11, 0x73, 0x6e, 0x2e, 0xe4, 0xdc, 0xf9,
+  0xee, 0xb7, 0xff, 0xea, 0x3a, 0x5f, 0x53, 0x37, 0x9c, 0x7e, 0x7c, 0x92,
+  0xdc, 0x35, 0xa3, 0x62, 0x2f, 0x9a, 0xe6, 0x91, 0xfb, 0x60, 0xb0, 0x24,
+  0x93, 0x51, 0xdc, 0xaa, 0x6b, 0xa6, 0xdc, 0xa8, 0x08, 0x32, 0x23, 0xab,
+  0x82, 0xcd, 0x99, 0x74, 0xa3, 0x05, 0x4d, 0xc5, 0x10, 0xc5, 0xb7, 0x2c,
+  0xc6, 0x55, 0xa3, 0x84, 0x9a, 0x21, 0xcf, 0xe8, 0x7a, 0x35, 0xdc, 0xc2,
+  0xdf, 0xac, 0x32, 0xe4, 0x8b, 0x24, 0x0f, 0xd4, 0xbe, 0x55, 0x81, 0x7c,
+  0xbc, 0xdf, 0x9e, 0x15, 0x7c, 0x63, 0x4d, 0x71, 0x40, 0xe0, 0x7b, 0x01,
+  0x93, 0xfa, 0xb1, 0xbc, 0x82, 0xbb, 0xb0, 0xb9, 0xb1, 0x31, 0x8f, 0x53,
+  0x2e, 0x96, 0x80, 0x6f, 0x69, 0x6c, 0xc6, 0xa2, 0x6e, 0xd5, 0x8d, 0x07,
+  0x17, 0x24, 0xbf, 0x0b, 0xa8, 0x01, 0x21, 0xf3, 0xd9, 0x0d, 0x62, 0xf1,
+  0x20, 0xbc, 0x47, 0xd8, 0x25, 0xf0, 0x4f, 0xa6, 0xad, 0xaf, 0xa9, 0x94,
+  0xe9, 0x25, 0x42, 0xef, 0xa2, 0x27, 0x06, 0x31, 0xfb, 0x40, 0x5f, 0xc9,
+  0xd3, 0xf2, 0x7f, 0xcc, 0x49, 0xfe, 0xf5, 0x0e, 0xef, 0x82, 0xd6, 0xe1,
+  0xe8, 0x17, 0x8c, 0xf6, 0xa7, 0x57, 0x65, 0x52, 0xf9, 0xbd, 0xb0, 0xfa,
+  0xfd, 0x37, 0x11, 0xc5, 0xaa, 0xcf, 0xe0, 0x29, 0x7e, 0xc6, 0xe8, 0x8b,
+  0x4e, 0x6b, 0x9f, 0x3f, 0xda, 0xa3, 0x43, 0x6b, 0xe0, 0x04, 0x6f, 0xe9,
+  0x44, 0xf3, 0x88, 0xb2, 0x41, 0xac, 0x44, 0x8a, 0x93, 0x2a, 0xf6, 0x44,
+  0x06, 0x66, 0x6e, 0xbb, 0xf9, 0xee, 0x5c, 0x1c, 0x90, 0x63, 0x67, 0xba,
+  0x0a, 0xb3, 0x98, 0x73, 0xc4, 0x87, 0x86, 0x0d, 0x5e, 0xef, 0xf5, 0xd6,
+  0xd1, 0x42, 0x5a, 0x87, 0xff, 0x88, 0x45, 0x48, 0x1e, 0x94, 0xd6, 0x70,
+  0xa8, 0x51, 0xe3, 0xb7, 0x30, 0xfe, 0x8e, 0x59, 0x7c, 0xe3, 0x7b, 0x17,
+  0x90, 0xe6, 0xef, 0x33, 0xd0, 0x27, 0x09, 0x2e, 0x25, 0x2d, 0x09, 0x9d,
+  0x31, 0x9d, 0xb4, 0xdc, 0x68, 0x9e, 0xc3, 0x87, 0x53, 0xfa, 0x2a, 0x81,
+  0x98, 0x25, 0xf3, 0xd1, 0x45, 0x50, 0xe1, 0xe2, 0x65, 0x42, 0x03, 0xcc,
+  0x6a, 0x0d, 0xde, 0x12, 0x7e, 0x67, 0xf2, 0x04, 0x4e, 0x54, 0x1a, 0x85,
+  0x88, 0x89, 0x04, 0x80, 0xff, 0x0f, 0x96, 0xe8, 0x3a, 0x79, 0x97, 0x47,
+  0x0b, 0xd8, 0x6e, 0x67, 0xab, 0xc5, 0x76, 0x19, 0x1c, 0xc5, 0xd1, 0x74,
+  0x36, 0xa0, 0x16, 0x60, 0x57, 0x40, 0x84, 0x00, 0x0c, 0x06, 0xa7, 0x49,
+  0x70, 0x26, 0x7d, 0xbb, 0x0d, 0x07, 0xf7, 0x73, 0x34, 0x67, 0x51, 0xa3,
+  0x08, 0x66, 0xf3, 0x57, 0x3d, 0x2f, 0x01, 0x7f, 0x64, 0x0d, 0x87, 0x20,
+  0xfc, 0x17, 0xf6, 0xe6, 0x4e, 0x53, 0xd3, 0xe3, 0x5e, 0xbc, 0xa8, 0x09,
+  0x17, 0xa9, 0x51, 0x6c, 0x42, 0x2a, 0x4a, 0xc8, 0x13, 0xe7, 0x63, 0x13,
+  0x73, 0x14, 0xd8, 0x98, 0x06, 0xce, 0x14, 0x60, 0xcd, 0xd8, 0x9f, 0x0d,
+  0xf6, 0x15, 0xfb, 0xa1, 0xb1, 0x87, 0x94, 0x22, 0xc4, 0x68, 0xc4, 0xb2,
+  0xdd, 0xea, 0x43, 0x6d, 0x62, 0x9c, 0xe6, 0xd9, 0x0e, 0x45, 0x53, 0x90,
+  0x6e, 0xd5, 0x55, 0xb2, 0xb5, 0xfb, 0x4c, 0xa6, 0xad, 0x5d, 0x0f, 0xc8,
+  0x11, 0xb1, 0xc2, 0xbf, 0x5a, 0x5f, 0xe7, 0x68, 0x2a, 0x86, 0xf5, 0x3c,
+  0x0b, 0x87, 0x42, 0xfa, 0xf8, 0xec, 0xa7, 0x2b, 0x73, 0xa0, 0x71, 0xd4,
+  0x83, 0xce, 0xf8, 0xfb, 0x11, 0xa5, 0xae, 0x51, 0x31, 0x69, 0xa3, 0x25,
+  0x78, 0xd7, 0x4d, 0xf8, 0x62, 0xac, 0xd4, 0x64, 0x41, 0xa7, 0x6c, 0x01,
+  0xa4, 0xc5, 0x31, 0x51, 0x6e, 0x2b, 0x96, 0x1b, 0x36, 0xf8, 0x72, 0xc8,
+  0x43, 0x79, 0x02, 0x20, 0x19, 0x29, 0xf4, 0xef, 0x01, 0x55, 0x48, 0x95,
+  0x27, 0xee, 0x88, 0x33, 0xb2, 0xc0, 0x84, 0x66, 0xb5, 0xeb, 0xf0, 0xe3,
+  0x6c, 0x52, 0x8e, 0x97, 0xd3, 0x6e, 0xce, 0x06, 0x1e, 0xcc, 0x95, 0x7c,
+  0xd3, 0x74, 0xe3, 0xa2, 0x9b, 0xc2, 0xa9, 0x86, 0xb5, 0xa7, 0xd1, 0x02,
+  0x43, 0x39, 0x04, 0xf0, 0xdc, 0x2f, 0x8d, 0x66, 0x94, 0x06, 0x0b, 0x8a,
+  0xf3, 0xaf, 0xee, 0x29, 0xa1, 0xd5, 0x23, 0x38, 0xf0, 0xc2, 0x3a, 0x32,
+  0x82, 0x04, 0x3d, 0x3c, 0xe3, 0xec, 0x79, 0x6f, 0xfb, 0x65, 0x6f, 0x63,
+  0x4f, 0x3b, 0xb7, 0x75, 0xa3, 0xaf, 0xf2, 0x19, 0x6e, 0x07, 0xae, 0xf9,
+  0xab, 0xfe, 0xd7, 0x59, 0xed, 0xbf, 0xb0, 0xb3, 0x8d, 0x2f, 0xbc, 0xeb,
+  0xf3, 0x43, 0xb7, 0xc5, 0xf8, 0x02, 0x5e, 0x0c, 0x3c, 0xf6, 0x1c, 0x1f,
+  0x03, 0x7e, 0x1b, 0xd5, 0x1e, 0x4e, 0x9a, 0x30, 0xd8, 0xfc, 0x49, 0xed,
+  0xec, 0x04, 0x26, 0xd5, 0x5d, 0xf6, 0xa3, 0x6d, 0xcb, 0x92, 0x14, 0x6b,
+  0x64, 0xb2, 0x41, 0x32, 0xbc, 0x26, 0x86, 0x22, 0x0c, 0x19, 0xd3, 0xfb,
+  0xf0, 0x8f, 0xae, 0xfd, 0x6f, 0x88, 0x26, 0xf8, 0xdf, 0x52, 0xa6, 0x69,
+  0xeb, 0x75, 0x73, 0x52, 0x87, 0xe9, 0xe6, 0xe6, 0x8b, 0xc1, 0xee, 0xe6,
+  0x8b, 0x97, 0xcf, 0x2f, 0x76, 0x76, 0x76, 0xb7, 0x46, 0xc3, 0x95, 0x65,
+  0x03, 0x0d, 0x2d, 0xe8, 0x2e, 0x01, 0x5c, 0x0d, 0xe7, 0x12, 0x9c, 0xb7,
+  0x1b, 0x1b, 0x4f, 0xd1, 0x71, 0x40, 0x0d, 0xfc, 0xb6, 0xb6, 0x37, 0xd7,
+  0x9f, 0xf5, 0x76, 0x7a, 0x5b, 0xa6, 0xae, 0x92, 0x01, 0xd0, 0x6a, 0xaa,
+  0x16, 0x09, 0x64, 0x5b, 0x51, 0xd9, 0x4e, 0x96, 0x0b, 0x72, 0xac, 0xf9,
+  0x09, 0x45, 0x1c, 0x6c, 0xd9, 0x12, 0x62, 0xc9, 0x6e, 0xba, 0x98, 0x29,
+  0x14, 0xe8, 0xf2, 0x5a, 0xce, 0xe4, 0x31, 0x4e, 0xc2, 0x84, 0x97, 0x71,
+  0x33, 0x07, 0xd9, 0xdf, 0x67, 0x59, 0x0d, 0x9a, 0x35, 0xc5, 0x3c, 0xd2,
+  0x81, 0x69, 0xb1, 0x4b, 0xee, 0x27, 0x5a, 0x83, 0xb6, 0xd1, 0xf2, 0x45,
+  0xb0, 0x56, 0xd0, 0x3b, 0x10, 0x7e, 0x84, 0x6a, 0x92, 0x91, 0x70, 0xc6,
+  0x27, 0xaa, 0xac, 0xaa, 0x41, 0xa4, 0x82, 0x08, 0x7a, 0x53, 0xdc, 0x22,
+  0xcf, 0x74, 0xa9, 0x12, 0x2b, 0x80, 0xa9, 0x4a, 0xf8, 0xa6, 0x9a, 0x5f,
+  0xa6, 0xf8, 0xc3, 0x4e, 0x73, 0x5a, 0xa9, 0xa7, 0x61, 0xec, 0x5c, 0x0e,
+  0x37, 0x37, 0x16, 0xbc, 0x58, 0xad, 0x94, 0xae, 0xae, 0x08, 0x0c, 0xc2,
+  0x09, 0x51, 0xb6, 0x38, 0xbf, 0x09, 0x25, 0xbe, 0xf4, 0x25, 0xcd, 0x8c,
+  0xe0, 0x82, 0xa5, 0xc4, 0xa3, 0xa8, 0x83, 0x82, 0xa8, 0xb3, 0x64, 0x62,
+  0x85, 0x60, 0xf5, 0x76, 0x2d, 0x50, 0x2f, 0xdb, 0x77, 0x73, 0xe6, 0x67,
+  0x5e, 0x78, 0x32, 0x13, 0x6e, 0xff, 0xfa, 0x4c, 0xb8, 0xf5, 0x3f, 0x9f,
+  0x09, 0x95, 0x07, 0x93, 0x85, 0x1c, 0xa8, 0x98, 0x6b, 0xd1, 0xbf, 0x0e,
+  0x13, 0x6e, 0xfd, 0x7a, 0x4c, 0xb8, 0xb9, 0x2c, 0x13, 0x6e, 0x3f, 0x86,
+  0x09, 0x61, 0xbf, 0xc7, 0xa8, 0x4c, 0x34, 0x98, 0x70, 0xe7, 0xd7, 0x65,
+  0x42, 0x84, 0x0f, 0x6f, 0xec, 0x09, 0x16, 0xb6, 0x1c, 0x84, 0x73, 0x03,
+  0x1e, 0xbf, 0xdb, 0x09, 0x0d, 0xab, 0xa3, 0x7a, 0x88, 0x41, 0xcc, 0xea,
+  0xbf, 0xe7, 0x5e, 0x6f, 0xff, 0x26, 0x02, 0x67, 0xf3, 0xa1, 0xbd, 0x2e,
+  0x53, 0xce, 0xd1, 0xf9, 0x5e, 0x73, 0xa5, 0xe0, 0x5b, 0x3f, 0x92, 0xe3,
+  0x76, 0x0f, 0xf5, 0x87, 0x1f, 0xdb, 0xd6, 0x97, 0xf4, 0x9b, 0xb1, 0x96,
+  0x42, 0xff, 0xf4, 0xf0, 0xeb, 0xbe, 0x24, 0xfa, 0x88, 0x32, 0xa7, 0xca,
+  0x1e, 0x7b, 0x11, 0xa9, 0xbe, 0x8e, 0xd0, 0xf7, 0xfc, 0x48, 0x23, 0x55,
+  0x7d, 0xc0, 0x3c, 0xee, 0xba, 0x26, 0x35, 0x06, 0x7b, 0x00, 0xe4, 0x91,
+  0xde, 0x07, 0xd4, 0xc9, 0x82, 0x31, 0xbe, 0x28, 0x9e, 0x22, 0x43, 0x57,
+  0x61, 0xff, 0x84, 0x3b, 0x17, 0x89, 0xe9, 0xe4, 0xf6, 0x95, 0xd5, 0xfa,
+  0xaa, 0x24, 0x60, 0x14, 0x7a, 0x6c, 0xcd, 0x74, 0x24, 0x78, 0x60, 0x76,
+  0x32, 0xab, 0x37, 0xd4, 0x21, 0x6d, 0x5a, 0xa6, 0x9a, 0x10, 0x1b, 0x70,
+  0x22, 0x99, 0xdf, 0x6a, 0xd8, 0x31, 0x84, 0xfc, 0x28, 0x60, 0xfa, 0x0e,
+  0xbd, 0xf1, 0x3d, 0xaf, 0x68, 0x31, 0xbb, 0x73, 0x21, 0x9f, 0xd1, 0x63,
+  0x0b, 0x6c, 0x9b, 0x13, 0xae, 0x87, 0xe6, 0x5e, 0x9a, 0x31, 0x2a, 0xc5,
+  0xc1, 0xc1, 0x4e, 0xe8, 0xd5, 0x0e, 0x0c, 0xd9, 0x0e, 0x59, 0xf1, 0x2f,
+  0x12, 0xfc, 0x8d, 0xfc, 0x63, 0x17, 0x3f, 0x4c, 0x70, 0x21, 0xfc, 0xcf,
+  0x2b, 0xfa, 0x37, 0x7e, 0x52, 0x01, 0xe2, 0x9d, 0x7d, 0x1e, 0x06, 0x09,
+  0xad, 0x72, 0x9a, 0x1d, 0x39, 0x8c, 0x2f, 0xf8, 0xae, 0xb0, 0x38, 0xe8,
+  0xee, 0x9a, 0xd1, 0x07, 0xc0, 0xcd, 0x85, 0x02, 0xce, 0x6d, 0x47, 0xca,
+  0xd3, 0xc8, 0x3b, 0x73, 0xf3, 0x16, 0xdc, 0xf6, 0x3b, 0x8a, 0xde, 0x67,
+  0x3f, 0x23, 0x6e, 0x03, 0x77, 0x0b, 0xba, 0xdc, 0xb8, 0xc9, 0x2f, 0xff,
+  0xc6, 0x2e, 0xdf, 0x32, 0xf3, 0xcd, 0x8d, 0x17, 0xbe, 0xcb, 0xef, 0x43,
+  0x25, 0xdd, 0x3e, 0x6c, 0x2b, 0x19, 0xca, 0xa0, 0x27, 0xfc, 0x82, 0x81,
+  0xc5, 0x2e, 0x09, 0x7d, 0x14, 0xe3, 0xeb, 0x01, 0xb7, 0x05, 0x02, 0x73,
+  0x15, 0x62, 0x73, 0x22, 0x15, 0x44, 0xc4, 0x24, 0xcd, 0xe6, 0xdb, 0xe8,
+  0x7c, 0xc9, 0xa4, 0x6c, 0x1c, 0xf4, 0x71, 0xce, 0xe8, 0xf6, 0xb2, 0x1d,
+  0xd0, 0x77, 0xa7, 0x29, 0x7a, 0x5f, 0xd8, 0x0e, 0x12, 0x7f, 0xde, 0xd9,
+  0xc0, 0x3d, 0xd5, 0x41, 0xe0, 0x00, 0x15, 0xe3, 0x42, 0x60, 0x23, 0xff,
+  0xbc, 0x9d, 0xfc, 0xe1, 0x9e, 0x25, 0x15, 0x37, 0x86, 0x05, 0xf9, 0x30,
+  0x29, 0x92, 0x42, 0x7c, 0x17, 0x49, 0x1c, 0x09, 0xff, 0x63, 0x7e, 0xbc,
+  0x9c, 0x66, 0xbf, 0xdb, 0xf4, 0x8d, 0xfc, 0xa9, 0xeb, 0x16, 0xc8, 0x0c,
+  0x92, 0x32, 0xe0, 0x23, 0x15, 0x8d, 0x44, 0x51, 0x4a, 0x15, 0x91, 0xd3,
+  0x54, 0xce, 0x24, 0xec, 0x96, 0xa0, 0xc9, 0x98, 0x1f, 0xc2, 0x50, 0x91,
+  0xdf, 0x59, 0xdb, 0xa4, 0x5c, 0x70, 0xaa, 0x31, 0x7b, 0x97, 0xba, 0x1e,
+  0xf4, 0x7e, 0x32, 0xee, 0x72, 0x3d, 0x4e, 0xd8, 0x7d, 0x6a, 0xbf, 0x42,
+  0x9f, 0x19, 0x95, 0xc9, 0xad, 0xe3, 0x19, 0x61, 0x64, 0xe9, 0x0b, 0xca,
+  0xa8, 0x30, 0x19, 0xff, 0xf0, 0x7b, 0x4c, 0x9d, 0xad, 0x02, 0xe9, 0xcb,
+  0xd5, 0xb0, 0x4c, 0x25, 0xd7, 0x0c, 0x9b, 0xbb, 0x54, 0xdc, 0x87, 0x72,
+  0x88, 0x85, 0x22, 0x97, 0xa9, 0x62, 0x53, 0xda, 0xfe, 0x96, 0x82, 0x8c,
+  0x49, 0x70, 0x98, 0xbd, 0x40, 0xad, 0xbc, 0xe3, 0x3e, 0x36, 0x05, 0x56,
+  0xa8, 0x37, 0x31, 0x7e, 0x26, 0xbe, 0xde, 0x95, 0x32, 0x15, 0xd3, 0x52,
+  0x66, 0x9a, 0x60, 0xd1, 0xc6, 0x55, 0x36, 0x6d, 0x6b, 0x15, 0xf1, 0x67,
+  0xc5, 0x67, 0xf1, 0x9a, 0x9c, 0xad, 0xe2, 0x26, 0xad, 0xc8, 0x8c, 0x65,
+  0x98, 0x12, 0x38, 0xea, 0x57, 0xe4, 0x96, 0x93, 0xfb, 0x96, 0xf0, 0x45,
+  0xb0, 0xc0, 0x95, 0xfc, 0x1d, 0x94, 0xb8, 0x31, 0x07, 0x4b, 0x95, 0x73,
+  0xb8, 0x58, 0xd0, 0xa2, 0x0b, 0x0f, 0x68, 0x75, 0xc1, 0xc5, 0x69, 0xe8,
+  0xfe, 0x89, 0x30, 0xdd, 0x58, 0xfa, 0xe0, 0x71, 0x9e, 0x42, 0x31, 0xfd,
+  0x57, 0xf7, 0x62, 0xff, 0xe9, 0xa1, 0x74, 0x24, 0xe2, 0xf1, 0xba, 0x88,
+  0x55, 0x96, 0xee, 0xab, 0x18, 0xfe, 0xfc, 0x41, 0x24, 0x0d, 0x23, 0xb0,
+  0x2f, 0xc4, 0xa3, 0x86, 0xc2, 0x8a, 0xf0, 0x59, 0xb8, 0xed, 0xdf, 0xf0,
+  0x2a, 0x9d, 0x70, 0x9f, 0x2d, 0x1f, 0x15, 0x05, 0x54, 0xa0, 0x9c, 0xf7,
+  0x1d, 0x93, 0x5b, 0x72, 0xe3, 0x76, 0x88, 0x9c, 0x76, 0x18, 0x02, 0xd1,
+  0x2e, 0x58, 0xdf, 0xd1, 0x21, 0x0c, 0x7f, 0xf4, 0xf1, 0xc3, 0xbb, 0xfe,
+  0x87, 0xb3, 0xd8, 0xeb, 0x64, 0xf1, 0xfe, 0xfc, 0xe8, 0x15, 0xd6, 0x32,
+  0x9c, 0x9f, 0x1e, 0x9e, 0x9e, 0x44, 0xab, 0x9b, 0x6b, 0x0b, 0x37, 0xc6,
+  0x6c, 0x85, 0xe9, 0xc6, 0x63, 0x23, 0x39, 0x2c, 0x68, 0xcc, 0x2c, 0x56,
+  0x91, 0x78, 0xfe, 0x68, 0xdf, 0x0a, 0xff, 0xb6, 0x9c, 0xbe, 0xe2, 0xc6,
+  0xba, 0x84, 0x8b, 0xb0, 0x22, 0x6f, 0xa1, 0x8c, 0xe2, 0xe6, 0x7e, 0x53,
+  0x69, 0x8a, 0xd7, 0xff, 0x0d, 0xa3, 0xcc, 0x18, 0x38, 0xa5, 0x1c, 0x51,
+  0x17, 0x63, 0x67, 0x79, 0x59, 0xe9, 0x6e, 0x27, 0x17, 0x85, 0x5e, 0x58,
+  0xa1, 0xf8, 0x80, 0x10, 0xdc, 0xd9, 0x6d, 0xb9, 0x37, 0x68, 0x34, 0xd2,
+  0x77, 0x2d, 0x6b, 0x54, 0x8b, 0x79, 0x83, 0x51, 0x51, 0xa9, 0x05, 0xa2,
+  0x79, 0x83, 0xda, 0xfe, 0x4a, 0x46, 0x11, 0xe1, 0xf8, 0xb1, 0x02, 0x0d,
+  0x0a, 0xc8, 0x59, 0x59, 0xf8, 0x39, 0x79, 0xf4, 0x0a, 0x50, 0x20, 0xcf,
+  0xf8, 0xda, 0x93, 0x89, 0x18, 0x3c, 0x39, 0xc9, 0x4e, 0x86, 0x07, 0xf0,
+  0xb7, 0xce, 0x26, 0x10, 0x6c, 0x91, 0xdf, 0xfc, 0x86, 0x5e, 0x46, 0xa2,
+  0x22, 0xe0, 0x8e, 0x9d, 0x14, 0x0e, 0x87, 0x57, 0x0b, 0x35, 0x4a, 0x99,
+  0x7f, 0x2d, 0x75, 0x05, 0x84, 0x94, 0xe4, 0x09, 0x29, 0x7d, 0x78, 0x9e,
+  0x59, 0xcd, 0x73, 0x16, 0x33, 0x27, 0x13, 0xab, 0x49, 0x44, 0x4c, 0x1e,
+  0xe8, 0xe2, 0xae, 0x74, 0x79, 0x6b, 0xe4, 0xde, 0x5a, 0xb0, 0x3b, 0x5f,
+  0x36, 0xdb, 0x22, 0x48, 0xe9, 0x3f, 0x4e, 0x85, 0x67, 0xc5, 0x08, 0x4f,
+  0x34, 0x9b, 0x2e, 0xa1, 0x02, 0xe1, 0xe4, 0x5e, 0x9b, 0xb9, 0x79, 0xf5,
+  0xb6, 0x9c, 0xbd, 0xb2, 0xaa, 0xe0, 0x91, 0xcf, 0x76, 0x7b, 0x5b, 0x6b,
+  0x3d, 0x37, 0xef, 0x06, 0xd3, 0x1b, 0x80, 0x54, 0x7f, 0x49, 0x0c, 0x5c,
+  0x14, 0x57, 0x7e, 0xf1, 0x32, 0x3c, 0xbb, 0x9b, 0x65, 0xa1, 0x83, 0x92,
+  0xab, 0xed, 0xe6, 0x68, 0xa7, 0x2e, 0x8b, 0x62, 0x24, 0xd8, 0x94, 0x8c,
+  0x45, 0xf9, 0x34, 0x7e, 0x66, 0xe2, 0x7d, 0xd6, 0x22, 0xdc, 0x03, 0x42,
+  0xed, 0x17, 0x73, 0x2c, 0xfb, 0xa2, 0x28, 0xd0, 0x71, 0xd1, 0xb8, 0xc0,
+  0xda, 0xd7, 0xdb, 0x99, 0x79, 0x8b, 0x78, 0x2a, 0x45, 0x98, 0x1b, 0xae,
+  0xe6, 0x4b, 0x2f, 0x48, 0x3f, 0x25, 0xfc, 0xaa, 0x2e, 0xfd, 0x92, 0x32,
+  0xb6, 0x4c, 0x11, 0xd0, 0xa8, 0x1b, 0x82, 0x19, 0xc2, 0x31, 0x92, 0xa1,
+  0xab, 0xef, 0x1b, 0x44, 0xfb, 0x15, 0xd8, 0x8a, 0x95, 0xae, 0x81, 0x65,
+  0x1b, 0xdf, 0x53, 0x36, 0x47, 0x86, 0x99, 0x13, 0xd4, 0x2b, 0xea, 0xe7,
+  0xb4, 0x2c, 0xfc, 0xfc, 0x41, 0xd2, 0x23, 0x14, 0xda, 0x1b, 0xf4, 0xfe,
+  0x83, 0x1b, 0x90, 0x2d, 0x94, 0x0e, 0x69, 0x7e, 0x88, 0x5f, 0xf5, 0x58,
+  0xf8, 0x2f, 0xb0, 0x36, 0x04, 0xdd, 0x12, 0x49, 0x67, 0x66, 0x93, 0x11,
+  0x8a, 0x7f, 0xa6, 0x39, 0x5f, 0xce, 0x91, 0x1a, 0x23, 0xbe, 0xd6, 0x3d,
+  0x43, 0x75, 0x79, 0x06, 0x32, 0xa9, 0xa0, 0x23, 0x34, 0xa9, 0x6c, 0x21,
+  0xb3, 0x09, 0xa1, 0x5f, 0x70, 0x2f, 0x6c, 0x81, 0x1f, 0x17, 0x9d, 0xd2,
+  0x17, 0xbd, 0x71, 0x14, 0xbd, 0x4a, 0xf3, 0xfb, 0xe6, 0x84, 0xb0, 0x54,
+  0x07, 0xf4, 0x00, 0x0e, 0x78, 0x48, 0x3b, 0x08, 0x4a, 0x40, 0x23, 0x74,
+  0x7c, 0x6c, 0x07, 0x62, 0xa6, 0xe8, 0x4f, 0xa9, 0x39, 0xe7, 0x90, 0x20,
+  0xf8, 0xcc, 0x90, 0x41, 0x11, 0x28, 0x5d, 0x62, 0xac, 0x52, 0x47, 0x0e,
+  0x4d, 0x59, 0xa3, 0x4f, 0x3e, 0x86, 0x0c, 0xd4, 0x00, 0x80, 0x2c, 0xcb,
+  0x6a, 0x36, 0xf8, 0x49, 0x1a, 0x63, 0xa1, 0x5f, 0xa4, 0x14, 0x2a, 0x88,
+  0x55, 0x0f, 0xbb, 0x0a, 0x0f, 0x70, 0xd0, 0xb3, 0xc6, 0x1a, 0xc0, 0xd0,
+  0x70, 0x94, 0x4b, 0x97, 0x39, 0x99, 0xde, 0x51, 0xb3, 0xa4, 0x74, 0x11,
+  0x7a, 0x91, 0xb7, 0xeb, 0x7a, 0x7e, 0xe2, 0x0b, 0x3c, 0x69, 0x5c, 0x33,
+  0xd4, 0xba, 0x23, 0x99, 0x96, 0x5c, 0x02, 0x67, 0x2a, 0x3f, 0xf1, 0xf1,
+  0xb9, 0x63, 0xa9, 0xe0, 0xab, 0xba, 0x7f, 0xc1, 0xff, 0xf8, 0x6b, 0x68,
+  0x96, 0xb1, 0x22, 0x4c, 0x89, 0x08, 0x1f, 0x7c, 0x9c, 0xa4, 0x1a, 0xbd,
+  0x3e, 0xef, 0x03, 0x8e, 0x70, 0x58, 0x3c, 0x36, 0x39, 0x3d, 0x96, 0xf8,
+  0xc0, 0x07, 0xd1, 0x54, 0x1c, 0x2e, 0xc7, 0xbf, 0x52, 0x3f, 0x4f, 0xd4,
+  0x5f, 0xa5, 0xee, 0x5f, 0x81, 0xc0, 0xc4, 0x2e, 0xab, 0xb0, 0x17, 0x3a,
+  0x79, 0x1c, 0xbc, 0xe6, 0xc1, 0x17, 0x58, 0x2f, 0x5b, 0xe2, 0x1f, 0xb8,
+  0xbb, 0x94, 0x48, 0xac, 0x4d, 0x07, 0xb5, 0x6a, 0x73, 0x5a, 0xd4, 0xdc,
+  0x01, 0x71, 0x8c, 0xb1, 0x2c, 0xd0, 0x51, 0x4a, 0x74, 0x8a, 0xe2, 0x67,
+  0xc3, 0x97, 0x65, 0xd7, 0x51, 0xa9, 0x71, 0x64, 0xf2, 0x80, 0xcd, 0xa6,
+  0x54, 0xdc, 0x20, 0x25, 0x3e, 0xda, 0x26, 0xce, 0xd1, 0x4a, 0x02, 0xaa,
+  0x30, 0x57, 0x06, 0x91, 0x77, 0xcd, 0xf4, 0x4f, 0xbc, 0x29, 0xb2, 0xd1,
+  0xa2, 0x7e, 0x38, 0x5e, 0x8f, 0xe2, 0x60, 0x46, 0xbe, 0x2d, 0xe4, 0x4d,
+  0x2a, 0x17, 0xd3, 0xc6, 0x07, 0xcd, 0xb0, 0x09, 0xc0, 0x94, 0x5a, 0x92,
+  0x63, 0xe0, 0x31, 0x4f, 0x6a, 0x3d, 0x60, 0x8e, 0x88, 0xc6, 0x69, 0x12,
+  0x06, 0x6c, 0x8e, 0x26, 0xd3, 0x30, 0xf5, 0x4b, 0xe8, 0x6c, 0x73, 0xee,
+  0x27, 0x5d, 0x3c, 0x2e, 0x57, 0x75, 0x2b, 0xe0, 0xef, 0x65, 0x3d, 0x6b,
+  0xce, 0xed, 0x65, 0x4a, 0x25, 0xad, 0x7e, 0xd6, 0x52, 0xb5, 0xee, 0xee,
+  0xb5, 0x66, 0x6a, 0xe1, 0x75, 0x35, 0x25, 0x40, 0x41, 0xd8, 0xd8, 0xac,
+  0x26, 0x66, 0x69, 0x95, 0x99, 0x6a, 0x89, 0x24, 0x85, 0x97, 0x51, 0x16,
+  0x78, 0xcd, 0x38, 0x73, 0x0d, 0x0e, 0xbb, 0xd5, 0x4c, 0x5c, 0x77, 0x42,
+  0xea, 0x8d, 0xf8, 0xae, 0xb8, 0xb1, 0xad, 0xd3, 0x23, 0x18, 0x79, 0x00,
+  0xc3, 0xc5, 0x61, 0xa7, 0xec, 0xba, 0xc9, 0x9b, 0x05, 0x66, 0xcd, 0x47,
+  0x31, 0xc8, 0xa4, 0xe9, 0x13, 0x88, 0x6e, 0x89, 0x60, 0xfe, 0x4d, 0x95,
+  0x4e, 0xb6, 0x7e, 0x6e, 0x84, 0x06, 0x3f, 0xeb, 0xe9, 0x4b, 0xed, 0xc6,
+  0x5d, 0x57, 0x47, 0x34, 0x7f, 0xe1, 0xd2, 0xb6, 0x46, 0x15, 0xeb, 0xa8,
+  0x55, 0xb9, 0xd8, 0x78, 0xf2, 0x41, 0xa3, 0x68, 0x6e, 0xef, 0xdc, 0xc8,
+  0xdd, 0x10, 0xdd, 0x80, 0x50, 0x6d, 0x99, 0xed, 0x19, 0x26, 0xdb, 0xf0,
+  0x81, 0xa1, 0x8e, 0x68, 0x4c, 0x32, 0x13, 0x73, 0xa9, 0xbb, 0x76, 0xbe,
+  0xc5, 0x46, 0xab, 0xb7, 0x2f, 0x98, 0x99, 0x2a, 0x2d, 0x52, 0xf9, 0x39,
+  0xb9, 0x73, 0x6d, 0xff, 0xaa, 0xf6, 0x24, 0x17, 0x74, 0x73, 0xa4, 0x6b,
+  0x80, 0x3e, 0x84, 0x13, 0xcb, 0xd2, 0xea, 0x69, 0x9b, 0xcb, 0x0b, 0xf9,
+  0x1d, 0xb6, 0x36, 0x84, 0xc2, 0x3c, 0x6f, 0x73, 0x87, 0x09, 0x26, 0x39,
+  0x84, 0xcb, 0x64, 0xfa, 0x22, 0x89, 0x62, 0x7d, 0x0a, 0xef, 0x3c, 0x12,
+  0x71, 0x59, 0xee, 0x3a, 0x7b, 0x29, 0x17, 0xe5, 0x29, 0x89, 0x66, 0xee,
+  0x0c, 0x0e, 0x0f, 0x18, 0xc5, 0xb6, 0x46, 0xd0, 0xbd, 0x3b, 0x43, 0x84,
+  0xa5, 0x48, 0xd2, 0x2a, 0x1a, 0x1d, 0x26, 0x98, 0x49, 0x43, 0xae, 0x72,
+  0xfe, 0x88, 0xfc, 0x95, 0xf2, 0x6b, 0x88, 0x38, 0x96, 0x7a, 0xbd, 0x47,
+  0xfb, 0xc7, 0x1a, 0x83, 0x4b, 0x91, 0xdd, 0x7c, 0xba, 0xd1, 0x43, 0xbf,
+  0x11, 0xdd, 0x68, 0xec, 0x75, 0x2a, 0x35, 0x58, 0xb7, 0xf5, 0x68, 0x4f,
+  0x25, 0x9e, 0x15, 0xdc, 0x66, 0x53, 0xba, 0x8d, 0x48, 0x83, 0xe0, 0xa1,
+  0xeb, 0xaa, 0x7a, 0x4a, 0x24, 0x58, 0x95, 0x97, 0x82, 0x31, 0x87, 0x66,
+  0x30, 0x66, 0x5c, 0xdf, 0x4f, 0xd3, 0x68, 0x1f, 0xff, 0x5c, 0x40, 0x37,
+  0xf3, 0xe0, 0x6f, 0x43, 0x3a, 0x33, 0x3c, 0x66, 0x49, 0xb9, 0x3f, 0xe5,
+  0x84, 0xab, 0xa7, 0x90, 0xf0, 0x61, 0x86, 0xa1, 0x73, 0x86, 0x7f, 0x7e,
+  0x2f, 0x47, 0xfe, 0xc7, 0xb9, 0x04, 0x38, 0xea, 0x0a, 0x11, 0x7e, 0xbb,
+  0xf5, 0xff, 0x96, 0x2b, 0xcd, 0xa6, 0x57, 0x68, 0x57, 0xed, 0x87, 0x60,
+  0x5f, 0x9c, 0x4d, 0x96, 0xc7, 0x7e, 0x9b, 0x25, 0xca, 0xe0, 0x47, 0x87,
+  0xaf, 0xde, 0x1c, 0xc5, 0xf0, 0x67, 0xff, 0x20, 0x3e, 0x38, 0xea, 0x6f,
+  0xed, 0x3e, 0x8b, 0x0f, 0x0f, 0xdf, 0xbe, 0xf8, 0x8d, 0x16, 0x5e, 0x8e,
+  0x2d, 0xa4, 0xfd, 0x82, 0x85, 0xcb, 0x63, 0xbf, 0xcd, 0xc2, 0x65, 0xf0,
+  0x32, 0xfd, 0x89, 0x5a, 0xf1, 0x3c, 0x55, 0x9e, 0x3e, 0xb8, 0x58, 0xbe,
+  0x51, 0x82, 0x7a, 0x81, 0xaf, 0x18, 0xbc, 0x92, 0xf2, 0xf8, 0xe6, 0xa5,
+  0x7b, 0xcb, 0xf1, 0xc6, 0xa7, 0xe9, 0x05, 0x52, 0x71, 0xef, 0x2b, 0x06,
+  0xf2, 0x2d, 0x7c, 0xb7, 0xed, 0x5e, 0x68, 0x68, 0x06, 0x4f, 0x22, 0xaf,
+  0x7c, 0xf5, 0x0f, 0xba, 0xc5, 0x49, 0x85, 0xf0, 0xb7, 0x82, 0x6b, 0x6e,
+  0xa2, 0x7d, 0xfe, 0xef, 0xfa, 0x17, 0x21, 0xf6, 0x33, 0x70, 0x24, 0xa8,
+  0xc7, 0x4a, 0x95, 0x0e, 0x77, 0x7b, 0x67, 0xac, 0x60, 0x31, 0xa1, 0x4d,
+  0x0b, 0x73, 0xb7, 0x7b, 0x29, 0xbe, 0xea, 0x59, 0x5f, 0x8a, 0x7e, 0xd3,
+  0x33, 0x55, 0x93, 0xa6, 0xdd, 0x8b, 0x49, 0x32, 0x45, 0x07, 0x44, 0xea,
+  0x7c, 0xb0, 0x32, 0xe8, 0xee, 0x21, 0x7c, 0x63, 0x4c, 0x44, 0xb8, 0x49,
+  0x08, 0x0f, 0xce, 0xe9, 0x13, 0xf5, 0x06, 0x49, 0x22, 0xf3, 0xc5, 0x13,
+  0x23, 0x35, 0x83, 0x7a, 0x54, 0x88, 0x79, 0xc2, 0x7d, 0xe8, 0xd9, 0xd6,
+  0x1d, 0x73, 0x85, 0x6a, 0x74, 0x78, 0xfa, 0xee, 0xdd, 0xd1, 0x61, 0x3b,
+  0x6f, 0xc2, 0x62, 0x72, 0x10, 0x4a, 0xb1, 0xb8, 0x0e, 0x82, 0x35, 0x4d,
+  0xd2, 0xab, 0xd6, 0x84, 0xc1, 0x79, 0x06, 0xf0, 0xaf, 0x5b, 0x81, 0xa8,
+  0xa1, 0x5f, 0x0b, 0xd6, 0x8d, 0x34, 0x30, 0x62, 0x7e, 0xf3, 0x90, 0xd3,
+  0x03, 0xdc, 0x67, 0x5d, 0x9c, 0x14, 0xf6, 0xad, 0x66, 0xa5, 0x80, 0xa5,
+  0x91, 0x3f, 0x4c, 0x67, 0x40, 0xd3, 0x4d, 0x46, 0xa3, 0x75, 0xa9, 0xe0,
+  0x15, 0xc8, 0x2b, 0xf8, 0xf0, 0xbc, 0x93, 0xc3, 0x8d, 0x50, 0x10, 0x38,
+  0x25, 0x2e, 0x2e, 0xb8, 0xc7, 0xea, 0x24, 0x29, 0xaf, 0x31, 0x05, 0xc8,
+  0xa9, 0x4b, 0x26, 0xfc, 0x30, 0x6a, 0x58, 0x32, 0x1a, 0x85, 0x30, 0x59,
+  0x29, 0xa0, 0xe7, 0x42, 0x3a, 0xc8, 0x84, 0x48, 0x54, 0xe5, 0xf5, 0x1e,
+  0x66, 0x78, 0xeb, 0xeb, 0x79, 0x7a, 0x8b, 0x9f, 0x61, 0xf8, 0x6d, 0xc4,
+  0x56, 0xf5, 0x7b, 0x2b, 0x70, 0x77, 0x3e, 0x8e, 0x94, 0xde, 0x3b, 0x8e,
+  0xdd, 0x09, 0x37, 0x10, 0x06, 0x9e, 0xa3, 0xc6, 0x6e, 0x82, 0x8b, 0xe2,
+  0xd1, 0xea, 0x0d, 0x33, 0x53, 0x23, 0x01, 0xdb, 0x4b, 0x45, 0x37, 0xc0,
+  0xfb, 0x83, 0x54, 0x99, 0x9c, 0xe4, 0xd9, 0x3c, 0x34, 0x72, 0xdb, 0xe9,
+  0x83, 0x02, 0x73, 0x55, 0x63, 0x00, 0xdd, 0xda, 0x64, 0x4e, 0x36, 0x43,
+  0x1f, 0x5b, 0x10, 0x92, 0x13, 0x8e, 0x04, 0xe6, 0x6e, 0xbb, 0xdf, 0x15,
+  0xfa, 0x07, 0xb0, 0x4b, 0x17, 0x75, 0x01, 0x2d, 0x2f, 0x67, 0x0c, 0x64,
+  0x85, 0x80, 0x1b, 0x74, 0x58, 0xe3, 0x40, 0x58, 0x24, 0x62, 0xe0, 0x25,
+  0x75, 0x2b, 0x53, 0x6e, 0x06, 0x90, 0x17, 0x37, 0x42, 0x88, 0xaf, 0xa1,
+  0x33, 0x8e, 0x6f, 0xca, 0x01, 0xce, 0xf2, 0xa9, 0xd7, 0xa1, 0x9c, 0xdb,
+  0x43, 0x30, 0xb6, 0xed, 0x17, 0x71, 0xbb, 0xad, 0x2e, 0x3a, 0xec, 0xdc,
+  0x3d, 0xa5, 0xeb, 0x83, 0x3c, 0x89, 0x55, 0x3d, 0xca, 0xf2, 0x47, 0xfb,
+  0x3d, 0xac, 0xe3, 0x43, 0xea, 0xa4, 0x39, 0x9b, 0xc5, 0x32, 0xeb, 0x3a,
+  0xb9, 0x2a, 0xdb, 0xbc, 0x60, 0xde, 0x52, 0x11, 0xb1, 0x74, 0xc2, 0xac,
+  0x2b, 0x03, 0x3b, 0xdf, 0xc5, 0xaf, 0x31, 0xf3, 0x25, 0x7e, 0x07, 0x24,
+  0xdc, 0x8b, 0xfe, 0xb3, 0x48, 0x3b, 0x4e, 0x94, 0x7c, 0xbe, 0x68, 0x7e,
+  0xcc, 0xd0, 0x98, 0xe2, 0x10, 0x1f, 0x5c, 0x12, 0xbf, 0xc3, 0xf9, 0x9c,
+  0x96, 0x59, 0xf5, 0x2b, 0x8e, 0xfe, 0x06, 0xa4, 0xc2, 0xde, 0xe3, 0x86,
+  0x5b, 0x90, 0xa5, 0x4b, 0x28, 0x90, 0xad, 0xeb, 0x21, 0xcb, 0x29, 0x06,
+  0x91, 0xce, 0x53, 0x48, 0xae, 0x51, 0xc2, 0xea, 0x43, 0xbf, 0x8d, 0x56,
+  0x62, 0x46, 0xff, 0x4d, 0x54, 0x91, 0xeb, 0xf4, 0xfe, 0x51, 0x66, 0x85,
+  0x79, 0xee, 0x37, 0x59, 0xa3, 0x19, 0x1d, 0x53, 0xed, 0x9d, 0x1f, 0x46,
+  0x14, 0xda, 0xff, 0xad, 0x16, 0x1e, 0xed, 0xc3, 0x1f, 0x0b, 0x97, 0xfc,
+  0x9b, 0xad, 0xf6, 0x37, 0x5c, 0xd8, 0xbc, 0xa6, 0x6a, 0xc1, 0x62, 0x1c,
+  0xd2, 0xfa, 0x1e, 0xec, 0xaf, 0x46, 0xf7, 0xbd, 0x17, 0xc4, 0x73, 0x74,
+  0xcf, 0x85, 0xda, 0xa6, 0xc5, 0x7b, 0x72, 0x15, 0xce, 0x40, 0x02, 0x5c,
+  0x68, 0x22, 0x92, 0x59, 0xf1, 0x8b, 0x95, 0x4f, 0xa7, 0x59, 0xd7, 0xaf,
+  0xab, 0x7f, 0x2e, 0xaf, 0x72, 0x22, 0x0e, 0xd7, 0xe3, 0xf7, 0xc6, 0x47,
+  0xb7, 0xfb, 0x65, 0xba, 0x3f, 0xa1, 0x80, 0x35, 0x34, 0x7f, 0xfa, 0x44,
+  0x83, 0xce, 0x8f, 0x51, 0xba, 0x1e, 0x47, 0x75, 0xc2, 0x31, 0x5b, 0x40,
+  0xf0, 0x65, 0xe5, 0xb5, 0x47, 0xf7, 0x36, 0x98, 0x58, 0x63, 0x37, 0x7c,
+  0xda, 0x2f, 0xaa, 0x99, 0xb4, 0x27, 0x9f, 0x9e, 0xfa, 0x4d, 0x8e, 0x7e,
+  0xb3, 0xde, 0xf1, 0xf7, 0x10, 0x07, 0xff, 0x3a, 0xe5, 0x7a, 0x4e, 0x80,
+  0x20, 0x50, 0xaf, 0xf7, 0xbf, 0xe5, 0x7a, 0xff, 0x5b, 0xae, 0xf7, 0xcb,
+  0xcb, 0xf5, 0x7e, 0xf7, 0x8a, 0x33, 0xff, 0x8c, 0x3d, 0xa1, 0xee, 0xcc,
+  0x1f, 0xe4, 0x57, 0xac, 0x3e, 0xdb, 0x7d, 0x19, 0x12, 0x0b, 0xc8, 0x67,
+  0xd9, 0x50, 0xb0, 0xc3, 0xf6, 0xe7, 0xf6, 0x90, 0x34, 0x28, 0x4e, 0x8d,
+  0xc4, 0x61, 0x27, 0x05, 0x4e, 0xc6, 0x61, 0xb3, 0xcb, 0x3a, 0x17, 0x7c,
+  0xfc, 0x05, 0x39, 0x02, 0x4f, 0x8a, 0xa9, 0xb6, 0xe7, 0xdb, 0xa9, 0xae,
+  0xca, 0xd9, 0x00, 0x8e, 0xf6, 0x7d, 0x67, 0xa9, 0x5b, 0xdb, 0x4d, 0x5a,
+  0xdb, 0x0e, 0x52, 0xa5, 0x1a, 0xc7, 0xb4, 0x54, 0xc4, 0x18, 0xf4, 0x3c,
+  0x74, 0xf6, 0x82, 0x68, 0x3d, 0xf7, 0xdb, 0xdc, 0x15, 0xed, 0x8f, 0xfc,
+  0x26, 0xd7, 0x03, 0x7d, 0x64, 0x56, 0x17, 0xf1, 0x70, 0x9c, 0x81, 0x04,
+  0x21, 0xff, 0xf6, 0xe2, 0x65, 0xb7, 0x1e, 0xfe, 0x0d, 0xd7, 0xde, 0xfe,
+  0xd2, 0x2f, 0x24, 0xc0, 0xf3, 0xe7, 0x21, 0x02, 0xd4, 0xe3, 0x6a, 0x73,
+  0xdb, 0xfa, 0xdd, 0xe5, 0x2f, 0x33, 0x44, 0xb9, 0x0b, 0xf9, 0xe0, 0xf9,
+  0xaa, 0xec, 0x1b, 0xf0, 0x47, 0x49, 0x4f, 0xa0, 0xb7, 0x28, 0xba, 0x9e,
+  0x56, 0xea, 0xbd, 0x35, 0x99, 0x35, 0x2a, 0xe0, 0x02, 0x98, 0x00, 0x04,
+  0x5d, 0xeb, 0x52, 0x8d, 0x74, 0x3b, 0xac, 0xfe, 0x57, 0xbd, 0xa6, 0xa2,
+  0xeb, 0x62, 0xb3, 0xb7, 0xcd, 0xf0, 0xa3, 0x0a, 0xf5, 0x2e, 0xf3, 0xf4,
+  0xda, 0x7d, 0xd0, 0x04, 0xa8, 0x43, 0xb0, 0xba, 0x14, 0x6f, 0x92, 0x71,
+  0x36, 0xd2, 0xe7, 0x7b, 0xd1, 0x7b, 0x74, 0x59, 0x60, 0xe7, 0x40, 0x9c,
+  0x0f, 0xdd, 0x44, 0x30, 0x76, 0x24, 0xbf, 0x0f, 0x0d, 0xe7, 0x36, 0x6e,
+  0x24, 0xd9, 0xfa, 0xe1, 0xfd, 0x89, 0x9f, 0xb6, 0xa8, 0x5b, 0x41, 0xc5,
+  0x06, 0x55, 0xba, 0x3e, 0x2a, 0x86, 0xd5, 0x3a, 0xee, 0xa2, 0x7e, 0xf8,
+  0xaa, 0x9e, 0x8c, 0x17, 0x23, 0x6a, 0x66, 0xac, 0x7b, 0x20, 0x96, 0x9e,
+  0x69, 0x54, 0x69, 0xcb, 0x9f, 0x88, 0x3d, 0x32, 0x07, 0x86, 0x16, 0x7e,
+  0xef, 0x35, 0xec, 0xa0, 0x72, 0x67, 0x58, 0x10, 0xfc, 0x3f, 0xea, 0xb2,
+  0x8e, 0x89, 0x51, 0x01, 0x24, 0xc2, 0xc4, 0xe9, 0x79, 0xe7, 0x94, 0x33,
+  0xfb, 0x7b, 0xc3, 0xf8, 0x5d, 0x75, 0x79, 0x8f, 0x89, 0xba, 0x74, 0xd7,
+  0xca, 0x66, 0xb4, 0x76, 0xdc, 0x14, 0x45, 0x30, 0xc8, 0x19, 0x73, 0x56,
+  0xfb, 0xf2, 0x16, 0x16, 0x9b, 0x93, 0x59, 0xf2, 0xbb, 0x97, 0x47, 0xf8,
+  0xcc, 0x0f, 0x6b, 0xfb, 0x78, 0x70, 0xd4, 0xff, 0xb8, 0xb9, 0xf5, 0xe2,
+  0xe3, 0x57, 0x87, 0x6f, 0x3f, 0xf6, 0xdf, 0x1c, 0xa0, 0x5e, 0xf4, 0x44,
+  0x09, 0xfb, 0x6c, 0x73, 0xce, 0x71, 0x43, 0xcd, 0xfc, 0x31, 0x2e, 0x07,
+  0xf7, 0xd1, 0xdf, 0x44, 0xc8, 0xb8, 0x1f, 0xe8, 0xbf, 0x3f, 0xfb, 0x6d,
+  0x04, 0x2c, 0x7c, 0xc4, 0x94, 0xf5, 0xec, 0x73, 0xcd, 0xce, 0xc2, 0x25,
+  0x9b, 0x87, 0x7f, 0xab, 0x25, 0x9b, 0x0f, 0x34, 0xad, 0xb0, 0x5f, 0x7d,
+  0xd5, 0x64, 0xee, 0x05, 0x35, 0x8b, 0xc6, 0x7a, 0xe9, 0xb1, 0xdf, 0x6a,
+  0xad, 0x34, 0x78, 0x35, 0x41, 0xdb, 0xf6, 0xb7, 0x5a, 0xe6, 0xcd, 0xe6,
+  0xbc, 0xd5, 0x51, 0x1d, 0x2c, 0x3d, 0xf1, 0x9b, 0xad, 0x0f, 0x86, 0xfe,
+  0x75, 0xd7, 0xf5, 0xa1, 0xdb, 0x34, 0xd7, 0xf7, 0x1b, 0x08, 0xe4, 0xde,
+  0x46, 0x3a, 0xd8, 0xda, 0x0e, 0xb2, 0x74, 0xa3, 0x92, 0x8d, 0xef, 0x42,
+  0xab, 0x19, 0x3e, 0x00, 0x0e, 0x3f, 0x17, 0xfd, 0x9d, 0x9b, 0x98, 0x28,
+  0xaa, 0x61, 0xbf, 0x7f, 0x76, 0x1c, 0x6b, 0x6f, 0x2e, 0x86, 0xca, 0xe7,
+  0xc6, 0x08, 0x5c, 0x35, 0xa3, 0xed, 0x40, 0xde, 0xcd, 0x51, 0x43, 0x29,
+  0x2b, 0x3a, 0xe4, 0x5a, 0xa9, 0x35, 0xb0, 0x45, 0x72, 0x1f, 0x91, 0x78,
+  0x34, 0x1e, 0x8b, 0x7d, 0x6f, 0xfd, 0xcc, 0xc3, 0x05, 0x2b, 0x27, 0xeb,
+  0x8a, 0xee, 0x77, 0xb7, 0x15, 0xc6, 0xc0, 0xc4, 0xfa, 0xe8, 0x22, 0x6a,
+  0x5f, 0xb8, 0x6c, 0xdf, 0x3a, 0x95, 0x74, 0xce, 0x9d, 0xb0, 0x17, 0x75,
+  0xe2, 0x0f, 0xd1, 0x5e, 0xc7, 0x23, 0xd1, 0x29, 0x56, 0x18, 0x55, 0x75,
+  0x3a, 0xa1, 0xc0, 0x5c, 0x49, 0xd8, 0xa6, 0xd8, 0x70, 0xb0, 0xd1, 0x56,
+  0xf0, 0x0a, 0x7b, 0x65, 0x58, 0x9f, 0x90, 0xea, 0xf5, 0xe5, 0xa5, 0x97,
+  0xe9, 0xc7, 0x01, 0x16, 0x36, 0x0e, 0x61, 0xcf, 0xb0, 0x05, 0x20, 0xa9,
+  0x1d, 0x18, 0x5a, 0xb2, 0x2d, 0xa6, 0xc9, 0x2c, 0xcc, 0x29, 0x15, 0x59,
+  0x92, 0xb9, 0x31, 0x1b, 0x79, 0x18, 0x28, 0x1e, 0xe0, 0xa4, 0xd4, 0x8a,
+  0x47, 0x9c, 0x16, 0x55, 0x95, 0x0d, 0xb0, 0xff, 0xab, 0x5c, 0xa8, 0x55,
+  0xca, 0x05, 0x19, 0x8c, 0xda, 0x87, 0xb4, 0x74, 0x3a, 0xdd, 0x61, 0x42,
+  0x67, 0x9b, 0x44, 0xb4, 0x52, 0x0a, 0xab, 0x39, 0x21, 0x30, 0x98, 0x1d,
+  0xdf, 0x85, 0x37, 0x19, 0x0e, 0xcf, 0x0c, 0x97, 0x44, 0x83, 0x32, 0x4b,
+  0x2f, 0xa2, 0x49, 0xc1, 0xa4, 0x27, 0x83, 0xb2, 0x7d, 0x2b, 0x8f, 0x11,
+  0x4c, 0x7c, 0xd4, 0x8b, 0xfa, 0x58, 0xe1, 0x58, 0x61, 0xf7, 0x37, 0xaa,
+  0x7b, 0xa5, 0xe2, 0x2f, 0x5b, 0x53, 0x5b, 0xa6, 0x98, 0x2d, 0x7d, 0x93,
+  0xca, 0xb6, 0x26, 0xda, 0xb6, 0x7b, 0x4e, 0x49, 0x5e, 0x69, 0xba, 0x1f,
+  0x53, 0x7d, 0x3a, 0xb5, 0x7e, 0xd0, 0xf3, 0x4f, 0x5f, 0x8c, 0xf0, 0xd8,
+  0x6b, 0xd9, 0xa4, 0x45, 0x63, 0xed, 0xfd, 0x2b, 0x28, 0x05, 0x86, 0x9f,
+  0xf7, 0xa6, 0x8f, 0xf5, 0x8a, 0x3a, 0x51, 0xf8, 0xa7, 0x97, 0x77, 0xcf,
+  0x2f, 0x76, 0x6e, 0x56, 0xbc, 0x7a, 0x90, 0xf9, 0xe1, 0x32, 0xe7, 0x0b,
+  0xec, 0x6b, 0xfe, 0xae, 0xf0, 0x5b, 0xc9, 0xb4, 0x2b, 0x86, 0x8b, 0x52,
+  0xdd, 0x90, 0x86, 0x78, 0x35, 0xe1, 0xd1, 0x12, 0xcc, 0xa4, 0x9b, 0xdc,
+  0xfa, 0xc1, 0x53, 0x39, 0x6d, 0x15, 0x74, 0xa3, 0xee, 0xd9, 0x96, 0x3d,
+  0x23, 0x2b, 0xd8, 0xa2, 0x67, 0x42, 0x08, 0xe0, 0x2c, 0x81, 0x04, 0x67,
+  0xe0, 0xeb, 0x88, 0xd8, 0xbd, 0x79, 0x6e, 0xc9, 0xf3, 0x27, 0xf3, 0xab,
+  0xc6, 0x4d, 0xca, 0xf6, 0x4d, 0x96, 0x98, 0xad, 0xb2, 0xab, 0x65, 0x7a,
+  0x44, 0xd4, 0xc8, 0x41, 0x20, 0x34, 0xe7, 0xe5, 0x9e, 0x71, 0x63, 0x84,
+  0x00, 0x9c, 0xd1, 0xbb, 0x7e, 0xdf, 0x2f, 0x5d, 0xce, 0xcb, 0x74, 0x58,
+  0x5c, 0xe6, 0xd9, 0xcf, 0xd4, 0x44, 0x00, 0x93, 0xdc, 0xda, 0x95, 0x79,
+  0x8d, 0xea, 0xf1, 0xc8, 0xc9, 0x0a, 0xc6, 0xcc, 0x70, 0x5f, 0xfe, 0x71,
+  0x57, 0x23, 0xbc, 0x95, 0xb0, 0x44, 0x06, 0x41, 0x3e, 0x84, 0x10, 0x15,
+  0x25, 0x4a, 0x50, 0xd9, 0x44, 0x6a, 0xda, 0x45, 0x49, 0xd9, 0x1f, 0x7f,
+  0xd8, 0xdb, 0x1d, 0xdd, 0x56, 0x41, 0x27, 0xff, 0x17, 0x28, 0xf5, 0x0e,
+  0xb7, 0xcb, 0x20, 0xf8, 0x7b, 0x64, 0xed, 0x70, 0xaf, 0x26, 0xd3, 0x25,
+  0x38, 0x0d, 0x5d, 0x3f, 0x4a, 0x63, 0xbe, 0x69, 0xdd, 0xa6, 0x4c, 0x73,
+  0xdb, 0x30, 0xa9, 0x31, 0x93, 0x84, 0xfa, 0x2c, 0x35, 0x5b, 0x32, 0x99,
+  0x4c, 0x8d, 0x87, 0xbb, 0x2e, 0x1d, 0x60, 0x2a, 0x82, 0xa2, 0xf7, 0x4b,
+  0x4e, 0x00, 0xda, 0x5c, 0x82, 0x06, 0x99, 0x72, 0xcb, 0x23, 0x9c, 0x94,
+  0x3d, 0x53, 0x7c, 0xe2, 0xa8, 0x46, 0xca, 0xeb, 0x8b, 0x93, 0xa8, 0x25,
+  0x38, 0x48, 0x15, 0xab, 0x85, 0x78, 0x0a, 0xa6, 0x81, 0x03, 0xf4, 0xb0,
+  0x11, 0x0f, 0x22, 0x65, 0x68, 0xfa, 0x01, 0xfc, 0x1a, 0xb1, 0x37, 0x94,
+  0x2b, 0xda, 0xac, 0x65, 0x7b, 0xa3, 0x9b, 0x29, 0x72, 0x9e, 0xba, 0xe4,
+  0x29, 0x24, 0x5a, 0xde, 0xd4, 0xbc, 0xe3, 0xb8, 0x0b, 0x9f, 0xc7, 0x5a,
+  0x02, 0x45, 0x4e, 0x6a, 0xc2, 0x0c, 0x0c, 0x7c, 0x6c, 0x8a, 0xc0, 0x90,
+  0x0f, 0x86, 0x57, 0xba, 0x28, 0x3e, 0x58, 0x24, 0x4b, 0x38, 0x26, 0x9e,
+  0xaa, 0x98, 0x6c, 0x2f, 0xf6, 0x5e, 0x06, 0x99, 0x63, 0x1c, 0xfe, 0xbf,
+  0x81, 0x10, 0x70, 0x6e, 0x66, 0x8e, 0xd7, 0x86, 0x2f, 0xe7, 0xa9, 0xfe,
+  0x03, 0x3d, 0xd1, 0x5c, 0xe8, 0x71, 0x0b, 0xe2, 0x40, 0xf0, 0xe4, 0xf9,
+  0xb5, 0xd6, 0x70, 0xe1, 0xc3, 0x84, 0x0d, 0xf0, 0x28, 0xa5, 0xa5, 0x5d,
+  0x1a, 0xa2, 0x32, 0x72, 0x55, 0xa4, 0xc6, 0xda, 0x1c, 0x64, 0xf7, 0x14,
+  0xd1, 0xd1, 0x90, 0x70, 0x74, 0x4f, 0xfe, 0xc5, 0x6c, 0xc9, 0xbf, 0x84,
+  0x45, 0xdf, 0x08, 0xa8, 0x3d, 0x0a, 0xd4, 0x40, 0x5e, 0x04, 0x63, 0x3d,
+  0xda, 0x77, 0x6e, 0xeb, 0xcf, 0x1f, 0xbc, 0xae, 0xe9, 0x10, 0xe3, 0x6b,
+  0x72, 0x39, 0x36, 0x85, 0xa9, 0x4a, 0x53, 0xf2, 0xea, 0xf8, 0x9d, 0xa5,
+  0xcd, 0x30, 0x22, 0x49, 0x8d, 0xec, 0xc4, 0x5a, 0x23, 0x7c, 0x7f, 0x8e,
+  0xf4, 0xd4, 0x9e, 0x84, 0xc6, 0x81, 0x03, 0xd7, 0xc5, 0x20, 0xad, 0x6f,
+  0xd3, 0x54, 0x9c, 0x53, 0xba, 0x4b, 0x8e, 0x88, 0x11, 0xfa, 0x83, 0x8e,
+  0x12, 0xaa, 0x02, 0xc3, 0x73, 0x9a, 0xa9, 0xb4, 0xe2, 0x1e, 0x99, 0xc6,
+  0x83, 0xa7, 0x79, 0x6f, 0xde, 0xd1, 0x66, 0x1c, 0xed, 0xe0, 0x9a, 0xee,
+  0x8d, 0x80, 0x13, 0xda, 0x68, 0xf1, 0x63, 0x03, 0xad, 0x41, 0x6b, 0x29,
+  0xe4, 0xc1, 0xcd, 0x27, 0x6d, 0x36, 0x7e, 0x60, 0x99, 0x18, 0xaa, 0x15,
+  0x3f, 0x22, 0x6e, 0x82, 0xd1, 0x2a, 0x8b, 0xa1, 0xc3, 0x23, 0x2a, 0xdf,
+  0x36, 0x32, 0x2d, 0xbd, 0x6c, 0x31, 0xcc, 0x89, 0x0a, 0xa5, 0xe5, 0xcd,
+  0x13, 0x8e, 0xec, 0xcd, 0x94, 0xdf, 0x26, 0x53, 0xf8, 0x59, 0xc2, 0x05,
+  0xc0, 0x93, 0x64, 0x94, 0x46, 0xa1, 0x0c, 0x54, 0x07, 0x3e, 0x87, 0x27,
+  0xd6, 0xca, 0x4a, 0xa4, 0xad, 0xf7, 0xbb, 0x07, 0x0b, 0x44, 0xcf, 0xd8,
+  0x8b, 0x56, 0xa1, 0x98, 0x93, 0xc2, 0x66, 0x71, 0xd1, 0x6a, 0x02, 0xa2,
+  0x24, 0x1b, 0xb8, 0x4a, 0x81, 0x74, 0xc1, 0xca, 0x05, 0x0e, 0xc8, 0x6f,
+  0x49, 0xdc, 0x58, 0x64, 0xf1, 0x40, 0xb3, 0x80, 0xf6, 0xfc, 0xa5, 0x04,
+  0x4a, 0xb2, 0xb8, 0x9a, 0xfe, 0x4e, 0xbc, 0x84, 0x3d, 0xb7, 0xb1, 0xb4,
+  0x11, 0xd0, 0x17, 0xa4, 0x7b, 0xa9, 0x8c, 0x1f, 0xcb, 0x72, 0xe2, 0x07,
+  0xb2, 0xc2, 0x16, 0xf2, 0x96, 0xec, 0xcc, 0x2f, 0x0a, 0xd1, 0xbb, 0x25,
+  0x22, 0x8e, 0xb8, 0x91, 0x50, 0x74, 0x20, 0xf7, 0x66, 0xb5, 0x8f, 0xb5,
+  0xe8, 0xfd, 0xc3, 0xb3, 0xb5, 0xe8, 0xac, 0x15, 0x65, 0x96, 0x36, 0x36,
+  0xcd, 0xdb, 0x89, 0x6f, 0x3d, 0xe9, 0xff, 0x36, 0x3f, 0x20, 0xa9, 0x6d,
+  0x43, 0x4d, 0x13, 0x45, 0x4a, 0xea, 0xfb, 0xd5, 0xc5, 0x75, 0x6b, 0x2d,
+  0x07, 0x04, 0x35, 0xcc, 0xe8, 0x8f, 0x62, 0x88, 0xbb, 0xf2, 0x05, 0xa3,
+  0x1b, 0x88, 0xcf, 0x42, 0x4d, 0x2c, 0x34, 0x44, 0xab, 0xa1, 0xd5, 0xb1,
+  0x57, 0x35, 0x46, 0x84, 0xd0, 0x12, 0x65, 0x07, 0xc0, 0x99, 0xd6, 0x42,
+  0x48, 0x77, 0x78, 0x0f, 0xf1, 0x9d, 0xd6, 0x58, 0x04, 0x18, 0xda, 0x79,
+  0x1a, 0x02, 0xe5, 0xbf, 0x27, 0xf5, 0x46, 0x0e, 0xcc, 0xa8, 0xd7, 0x6e,
+  0x19, 0xed, 0x04, 0x91, 0x65, 0x72, 0x59, 0x61, 0xbb, 0x73, 0xcf, 0xe9,
+  0x13, 0xc7, 0x9a, 0x2f, 0x58, 0xb2, 0x08, 0x02, 0x4f, 0xdd, 0x9f, 0xc9,
+  0xd2, 0x19, 0x16, 0xd3, 0x7b, 0x24, 0x06, 0x3c, 0x56, 0x55, 0x57, 0x5b,
+  0x20, 0xf0, 0xb6, 0x7a, 0x2f, 0x18, 0x11, 0xea, 0x0a, 0x54, 0x98, 0x40,
+  0x1f, 0x4c, 0xce, 0x0a, 0xe6, 0x36, 0xac, 0xed, 0xf1, 0xc4, 0x36, 0xe9,
+  0xad, 0x2d, 0xcb, 0xd7, 0xcc, 0x78, 0xb4, 0xf9, 0xf0, 0xf7, 0xa8, 0x5a,
+  0x80, 0x91, 0x1e, 0xff, 0x15, 0x79, 0x97, 0x5b, 0x0e, 0xed, 0x8b, 0x85,
+  0xee, 0x71, 0x2b, 0x32, 0x6b, 0x84, 0x2c, 0x8b, 0x6d, 0xe6, 0xd2, 0x7c,
+  0xc4, 0x19, 0xaa, 0x83, 0xac, 0xa6, 0x76, 0xef, 0x6a, 0xd7, 0x37, 0x85,
+  0x0a, 0xbe, 0x83, 0xa1, 0xff, 0xd7, 0x5e, 0x5a, 0x38, 0x47, 0xfe, 0x7b,
+  0xd1, 0x5f, 0xe9, 0xa3, 0xf2, 0x36, 0xe3, 0x4d, 0x50, 0x0a, 0xed, 0x97,
+  0x47, 0xaf, 0x4f, 0xdf, 0x1f, 0x35, 0xf1, 0x73, 0x6a, 0x06, 0x5d, 0xa7,
+  0x14, 0xd1, 0xf6, 0xec, 0xb8, 0x75, 0x8c, 0x00, 0x0e, 0x92, 0xf0, 0xcc,
+  0xf2, 0x0c, 0x3d, 0x31, 0xd1, 0xd9, 0xb7, 0xaf, 0xcc, 0xec, 0x50, 0x2f,
+  0xcb, 0x69, 0x56, 0x3a, 0x68, 0x97, 0x77, 0xb1, 0xad, 0x4c, 0xa1, 0xde,
+  0xb5, 0xd6, 0x43, 0x41, 0xc6, 0xe9, 0xaf, 0x3a, 0x3f, 0x4a, 0xcd, 0xe5,
+  0x84, 0x6a, 0x85, 0xbb, 0xa3, 0xc6, 0xcd, 0x55, 0x85, 0xf0, 0x75, 0x66,
+  0x50, 0xcf, 0xd2, 0x60, 0x7b, 0x94, 0x51, 0xb3, 0xb9, 0xa2, 0x34, 0x89,
+  0xa8, 0x45, 0x0b, 0x76, 0x6d, 0xe9, 0x45, 0xfe, 0x87, 0x34, 0x95, 0x98,
+  0xbe, 0x12, 0xba, 0x6a, 0xae, 0xb0, 0xf2, 0x97, 0x22, 0xd3, 0xac, 0x02,
+  0xa0, 0x0b, 0x0c, 0x0f, 0x84, 0xa9, 0xef, 0xea, 0x72, 0x3b, 0x1d, 0x49,
+  0x2c, 0x70, 0x09, 0x19, 0xc8, 0x6d, 0x83, 0x6f, 0xae, 0x56, 0x6b, 0xdd,
+  0xc6, 0x54, 0xcd, 0x6f, 0x22, 0xf5, 0x39, 0xac, 0xfc, 0x65, 0xc5, 0x22,
+  0x13, 0x90, 0x66, 0x02, 0x52, 0xd8, 0xb3, 0x64, 0xd8, 0x18, 0x46, 0xbb,
+  0x1a, 0x99, 0xe5, 0xa1, 0xac, 0x7f, 0x5d, 0x71, 0xef, 0x51, 0xa8, 0x1e,
+  0x55, 0x5d, 0x4c, 0x51, 0x6b, 0x62, 0xd0, 0x3a, 0x6c, 0x90, 0x36, 0x2b,
+  0x53, 0xda, 0x27, 0x07, 0x04, 0x2d, 0x0a, 0x76, 0x42, 0xce, 0xf2, 0x59,
+  0x4a, 0xcd, 0xc2, 0x73, 0x05, 0x66, 0xd2, 0xe5, 0xe1, 0x30, 0x20, 0xec,
+  0x64, 0xe9, 0xee, 0x6f, 0x78, 0xdd, 0xd8, 0xe7, 0x21, 0x60, 0x05, 0x64,
+  0xd5, 0x75, 0xb4, 0xfa, 0xef, 0xb0, 0xc0, 0x53, 0xed, 0x75, 0xdf, 0xd5,
+  0x91, 0x25, 0xaf, 0x45, 0xb2, 0xd7, 0x75, 0x9e, 0x44, 0x13, 0x6a, 0x9b,
+  0x19, 0x2c, 0xc2, 0x56, 0x4a, 0xb0, 0xd8, 0x45, 0x3f, 0x62, 0xe9, 0x34,
+  0x88, 0x33, 0xe2, 0x97, 0xb2, 0x49, 0x02, 0x0a, 0x33, 0x35, 0xb3, 0xe7,
+  0x58, 0x28, 0x9e, 0xce, 0xea, 0x3e, 0xaf, 0x51, 0x8c, 0xb1, 0xc4, 0x1d,
+  0x16, 0x25, 0xdd, 0xfd, 0xc8, 0xfa, 0xf6, 0xb0, 0x55, 0x84, 0x2f, 0xf9,
+  0x72, 0xf7, 0x25, 0x50, 0xda, 0xc7, 0xc9, 0xcb, 0x39, 0xb8, 0x8b, 0xaf,
+  0x48, 0x6f, 0x58, 0x4a, 0x35, 0x2a, 0x18, 0x22, 0xcb, 0x65, 0x90, 0x8a,
+  0x61, 0x24, 0x08, 0x60, 0x23, 0x45, 0xc4, 0x15, 0xff, 0x0e, 0xef, 0x3b,
+  0xc3, 0x3c, 0xb1, 0x40, 0xde, 0xcf, 0xa5, 0x27, 0x91, 0x44, 0xcd, 0x69,
+  0xc5, 0x1f, 0xae, 0x0a, 0x68, 0x2f, 0xfa, 0x90, 0x53, 0x39, 0x87, 0x70,
+  0xa1, 0xdc, 0x48, 0x59, 0x0e, 0xdb, 0x06, 0xdb, 0x0c, 0x77, 0x52, 0x40,
+  0x24, 0xfd, 0xbd, 0x29, 0x8a, 0x44, 0x1c, 0xb7, 0x12, 0x73, 0xe8, 0x08,
+  0x8b, 0x90, 0x33, 0x42, 0x2c, 0x8a, 0x5e, 0x83, 0x98, 0x0d, 0xa4, 0xe6,
+  0xb3, 0x17, 0x07, 0x96, 0x43, 0x63, 0x63, 0xee, 0x55, 0x3a, 0x1e, 0xc7,
+  0xdc, 0x27, 0x19, 0x5b, 0xbb, 0xa2, 0x71, 0xc5, 0x18, 0x5e, 0x54, 0x04,
+  0xe1, 0x1a, 0x9e, 0xde, 0x1d, 0x46, 0x50, 0x64, 0xd4, 0x24, 0x4c, 0x01,
+  0x3c, 0xa5, 0x54, 0x59, 0x83, 0xe4, 0x88, 0x40, 0x63, 0x9d, 0x51, 0x44,
+  0x1c, 0x5e, 0x12, 0xae, 0xc9, 0x73, 0x7b, 0xe3, 0x1a, 0xbd, 0xc0, 0x76,
+  0x82, 0x84, 0x46, 0x6f, 0x30, 0x6b, 0x0d, 0x61, 0x94, 0x08, 0xb2, 0x4b,
+  0xf8, 0x49, 0x73, 0x50, 0xaa, 0xb4, 0xae, 0xac, 0xb6, 0x90, 0x90, 0x44,
+  0xa4, 0x5d, 0x53, 0x56, 0x99, 0x3f, 0x1c, 0xd2, 0x69, 0xc4, 0x20, 0x45,
+  0xfc, 0x18, 0xf3, 0x7c, 0x3e, 0x62, 0xa5, 0x79, 0x9f, 0x66, 0x93, 0xde,
+  0x91, 0xb2, 0x07, 0x0c, 0xf2, 0xb9, 0x74, 0x99, 0x1a, 0xcc, 0x19, 0x0e,
+  0xa9, 0x00, 0x0a, 0x42, 0x59, 0x57, 0x8c, 0x6a, 0x42, 0xaf, 0xb3, 0x6f,
+  0xa0, 0x62, 0x00, 0x29, 0xe9, 0x62, 0x37, 0xfe, 0x78, 0x99, 0xd6, 0xf8,
+  0xdb, 0xd5, 0xed, 0x35, 0x24, 0x47, 0x78, 0xb8, 0x29, 0x02, 0xb9, 0x11,
+  0xd8, 0x54, 0x73, 0x1a, 0x06, 0x7c, 0x0a, 0x54, 0x1f, 0x27, 0xe9, 0x62,
+  0xbb, 0xb7, 0xe1, 0x5d, 0xd4, 0xc3, 0xab, 0xcb, 0x72, 0x1a, 0x5d, 0x82,
+  0xb6, 0x3c, 0x7d, 0x80, 0xaa, 0xfc, 0xa4, 0x47, 0x53, 0x7e, 0xf5, 0xf8,
+  0x95, 0x4b, 0x4b, 0x21, 0x1b, 0xd0, 0x2d, 0x3c, 0x9c, 0xb4, 0x4f, 0xc3,
+  0x2c, 0x43, 0x21, 0xa7, 0x72, 0xad, 0x19, 0xcd, 0x1a, 0xb7, 0x42, 0x7c,
+  0xfa, 0x4d, 0x78, 0xb8, 0xc6, 0x96, 0xf0, 0x08, 0x3a, 0x2c, 0x9d, 0xbf,
+  0x11, 0x0c, 0x35, 0x49, 0xf8, 0x84, 0x5d, 0x82, 0xe4, 0xd3, 0x8f, 0xf8,
+  0xd5, 0x4b, 0x57, 0x93, 0x62, 0x84, 0xe8, 0x2d, 0xe9, 0x83, 0xb4, 0xc0,
+  0x07, 0x95, 0x16, 0x02, 0x7a, 0x53, 0xb9, 0xeb, 0xa2, 0x41, 0xe0, 0xe4,
+  0xeb, 0x4e, 0xfb, 0xb0, 0xa5, 0x6d, 0xf3, 0x5b, 0xea, 0x5b, 0x70, 0x78,
+  0x7a, 0xd9, 0x5d, 0x42, 0x1e, 0x15, 0xc3, 0xda, 0x59, 0x01, 0x3e, 0x30,
+  0x87, 0x61, 0xe9, 0xee, 0x0a, 0xac, 0x0c, 0x21, 0x50, 0xc8, 0x4d, 0xf2,
+  0xd0, 0xca, 0xf0, 0x41, 0x6f, 0x97, 0xe1, 0x87, 0xb6, 0x87, 0x9e, 0xb3,
+  0xc5, 0xbc, 0x39, 0xe1, 0xe1, 0x9a, 0x1b, 0xac, 0x3b, 0x4c, 0x73, 0x08,
+  0x6d, 0xb0, 0x74, 0xd0, 0xf5, 0x15, 0x64, 0xeb, 0xf4, 0x61, 0xea, 0x98,
+  0x07, 0xe7, 0x6e, 0xb0, 0x7c, 0xc3, 0xa3, 0xc2, 0x38, 0x87, 0xc3, 0x37,
+  0x2b, 0x87, 0xe9, 0x47, 0x9a, 0x1b, 0x37, 0x41, 0xfd, 0xb8, 0x98, 0x20,
+  0x63, 0x41, 0x50, 0xbc, 0x9f, 0xa0, 0xee, 0x6b, 0x25, 0xb0, 0xf4, 0xc9,
+  0x4b, 0x04, 0x51, 0x10, 0xf4, 0x73, 0xfa, 0x3d, 0x9b, 0xba, 0x73, 0xd8,
+  0xde, 0x7e, 0x8f, 0x7b, 0xeb, 0x71, 0xb2, 0xcd, 0xb4, 0x80, 0x79, 0x6b,
+  0xbb, 0x5f, 0xba, 0xa0, 0x9d, 0x39, 0xe2, 0x63, 0x73, 0x08, 0x12, 0x74,
+  0x4f, 0x4e, 0xae, 0x11, 0xab, 0xc4, 0xe8, 0x59, 0x1f, 0x73, 0x3f, 0x6c,
+  0xe7, 0x2c, 0x8e, 0x9f, 0xd6, 0xdd, 0xe6, 0x25, 0x09, 0x56, 0x90, 0xa9,
+  0xc4, 0x6f, 0x88, 0x40, 0xf8, 0xf9, 0x9c, 0xd9, 0xb8, 0x1f, 0x34, 0x27,
+  0xd2, 0x9b, 0xdd, 0xa3, 0x45, 0x38, 0x3f, 0x19, 0x96, 0xe0, 0x0d, 0x78,
+  0x25, 0x47, 0x8e, 0x2f, 0x60, 0xc3, 0xa5, 0xe5, 0xf8, 0x70, 0x9e, 0xcc,
+  0x45, 0x25, 0x07, 0xef, 0x32, 0x12, 0xe2, 0xf0, 0xdd, 0x3f, 0x5e, 0x84,
+  0x63, 0x68, 0x50, 0x5d, 0xb6, 0xb7, 0x56, 0x2a, 0xa9, 0x7e, 0x47, 0x75,
+  0x9c, 0x83, 0xaa, 0x18, 0xcf, 0xd0, 0x91, 0x92, 0xd4, 0x57, 0xbc, 0x43,
+  0x17, 0x3a, 0xcf, 0xb9, 0xfb, 0x99, 0xd7, 0xbe, 0xde, 0xee, 0xed, 0x28,
+  0x3c, 0x86, 0xc3, 0x31, 0xcb, 0x0a, 0x87, 0xcf, 0xdf, 0x56, 0x79, 0xda,
+  0x4e, 0x91, 0xf5, 0x10, 0xbb, 0x29, 0x65, 0x80, 0xf1, 0xe6, 0xdf, 0x21,
+  0xf2, 0xd5, 0xd6, 0x1d, 0x32, 0x4a, 0x31, 0x82, 0xc3, 0xdc, 0x41, 0x49,
+  0xed, 0xe6, 0x36, 0x8a, 0x1e, 0x3a, 0x9b, 0x73, 0x19, 0xb7, 0x9c, 0x3c,
+  0xc0, 0xb0, 0xf0, 0x80, 0x5d, 0x15, 0x43, 0x9a, 0x9a, 0x55, 0x79, 0xa2,
+  0x4e, 0x18, 0x70, 0x0e, 0xe5, 0xe7, 0xcd, 0xa0, 0x71, 0xb0, 0x17, 0xcd,
+  0xc4, 0x3d, 0xd3, 0xee, 0x64, 0x2c, 0x69, 0x51, 0x81, 0xc7, 0xff, 0x98,
+  0x99, 0xcd, 0xe1, 0xf5, 0xfb, 0xd6, 0x7b, 0x42, 0x9e, 0xae, 0x13, 0xe5,
+  0x20, 0xef, 0x00, 0xba, 0x52, 0x7c, 0xde, 0x50, 0x99, 0xb9, 0x94, 0xcc,
+  0x45, 0x9f, 0xd5, 0xd8, 0x91, 0x6b, 0x9e, 0x27, 0x41, 0x5c, 0x08, 0xac,
+  0x3d, 0x76, 0x5e, 0x1d, 0x9d, 0x1c, 0x11, 0x3d, 0x3b, 0x81, 0x3e, 0x6b,
+  0x17, 0x45, 0xe1, 0x78, 0xbb, 0x70, 0xe6, 0xa0, 0x6b, 0x2e, 0xc0, 0x36,
+  0x70, 0x72, 0x68, 0x0c, 0xe3, 0x50, 0x53, 0xe4, 0x8c, 0x32, 0x41, 0xa8,
+  0xf6, 0x81, 0x4a, 0xac, 0xd0, 0x29, 0xa2, 0x26, 0x0f, 0x35, 0x26, 0x18,
+  0xa5, 0xa5, 0x47, 0x44, 0xb0, 0x60, 0xf8, 0x93, 0x9c, 0x1f, 0xcf, 0x0d,
+  0xe7, 0x30, 0x97, 0x41, 0xd4, 0x6e, 0xb2, 0x22, 0xb8, 0xe1, 0x22, 0x5b,
+  0xc9, 0xfa, 0x38, 0xec, 0xce, 0x25, 0x18, 0x38, 0x6d, 0x9b, 0xc7, 0x2b,
+  0x53, 0x40, 0x85, 0xbb, 0xd5, 0xd3, 0x35, 0xbd, 0x1c, 0xc5, 0xc2, 0x5d,
+  0x4f, 0x49, 0xf0, 0x76, 0x49, 0x84, 0x69, 0xdd, 0x59, 0x75, 0xb5, 0xd8,
+  0x8d, 0x5d, 0x76, 0xf9, 0x2d, 0x10, 0x62, 0xfb, 0xf4, 0x9f, 0x60, 0xc1,
+  0x3e, 0x99, 0x69, 0xa4, 0xf3, 0xbf, 0x3e, 0x3e, 0x39, 0x5a, 0x8b, 0xde,
+  0x4b, 0x0a, 0x07, 0xda, 0x46, 0xf7, 0x35, 0x76, 0xa2, 0xc4, 0x01, 0x56,
+  0xb3, 0x1e, 0xe8, 0x3f, 0x5c, 0xa0, 0x8d, 0x86, 0x06, 0xf6, 0x9e, 0x0e,
+  0x25, 0xc4, 0xac, 0x49, 0xe2, 0x07, 0xfb, 0xf6, 0xd7, 0x37, 0x7b, 0x9b,
+  0x5d, 0xd7, 0x97, 0x63, 0xda, 0x02, 0x90, 0x53, 0x2b, 0x31, 0x5d, 0x6c,
+  0xf1, 0xd3, 0x6d, 0xcf, 0xe0, 0x7b, 0xfc, 0x70, 0xe5, 0x87, 0xb7, 0x28,
+  0x44, 0x66, 0xdd, 0x00, 0xb7, 0xc9, 0xbd, 0x6f, 0xe0, 0x6d, 0xc4, 0x3b,
+  0x2f, 0x5f, 0x36, 0x54, 0xb8, 0xca, 0x69, 0x01, 0xbc, 0xbb, 0xb1, 0x41,
+  0x6b, 0xf3, 0xe0, 0xe8, 0xe0, 0x17, 0xf1, 0x4b, 0x7a, 0xb1, 0xf9, 0x5a,
+  0x95, 0xc2, 0xc6, 0x8e, 0xe6, 0xbf, 0x17, 0xe3, 0x6f, 0x02, 0x9f, 0xa3,
+  0x1b, 0x71, 0xee, 0x5b, 0x2f, 0xf1, 0x73, 0x81, 0xb7, 0xe8, 0x61, 0xa6,
+  0x63, 0x71, 0x71, 0x81, 0x8e, 0x6d, 0x7c, 0x52, 0x01, 0x98, 0x6f, 0x93,
+  0x72, 0xe4, 0x2f, 0x77, 0xa3, 0x1b, 0x6f, 0xce, 0x5b, 0x2e, 0x65, 0xcd,
+  0x50, 0xfa, 0x3d, 0xee, 0x27, 0x7a, 0x5f, 0x56, 0xff, 0x7d, 0x8d, 0xc1,
+  0x1a, 0xda, 0x03, 0x6d, 0xc2, 0x8c, 0x36, 0x5f, 0xbe, 0xec, 0xe2, 0xcc,
+  0x76, 0x5f, 0xbe, 0x9c, 0x0b, 0xf6, 0xe7, 0x7c, 0xe6, 0xb6, 0xb0, 0x0e,
+  0x63, 0x7c, 0xdd, 0x32, 0x4d, 0x05, 0x9f, 0x89, 0xc2, 0xdf, 0xc1, 0xdf,
+  0x44, 0x9f, 0x45, 0xef, 0x4e, 0xcf, 0x8f, 0x1c, 0x5f, 0x2a, 0x9d, 0x5a,
+  0x4e, 0x7c, 0x70, 0x7c, 0x21, 0x94, 0x0c, 0x32, 0xc5, 0xfc, 0x66, 0xf6,
+  0x25, 0x81, 0x6d, 0xef, 0xbb, 0x68, 0x08, 0x38, 0x40, 0x23, 0x04, 0x5a,
+  0xd0, 0xae, 0x52, 0x80, 0x6f, 0x5b, 0xca, 0x53, 0xc1, 0x46, 0x6f, 0x78,
+  0xd7, 0xe0, 0x99, 0xfa, 0xb7, 0x28, 0x3a, 0x4b, 0xca, 0xca, 0xaf, 0x0b,
+  0x44, 0x5f, 0x85, 0x7a, 0x66, 0xc4, 0xf7, 0x55, 0x94, 0x13, 0xe3, 0x34,
+  0x36, 0x81, 0x08, 0x31, 0xa3, 0xe5, 0xdf, 0xd9, 0x20, 0x1b, 0x67, 0xf5,
+  0xfd, 0x1c, 0x17, 0x0d, 0xf6, 0x3b, 0x2c, 0x03, 0x29, 0x69, 0x08, 0x42,
+  0x98, 0x5d, 0x66, 0xb5, 0x8b, 0x1a, 0xbe, 0x0a, 0x5c, 0xb8, 0x46, 0x1e,
+  0x4d, 0x4e, 0x4a, 0x97, 0x68, 0xf5, 0x4a, 0x85, 0x10, 0x00, 0x5c, 0x62,
+  0x85, 0xff, 0x28, 0xa6, 0x2b, 0x9e, 0xeb, 0x25, 0x1d, 0x8f, 0xd8, 0xa8,
+  0xb1, 0x2f, 0xc4, 0xf4, 0xa4, 0x9c, 0x63, 0x72, 0xee, 0xdc, 0x51, 0x14,
+  0x32, 0xa1, 0x3e, 0x31, 0xee, 0xc7, 0x03, 0xae, 0x2a, 0x02, 0xda, 0xa6,
+  0x4c, 0x38, 0x45, 0xef, 0xc0, 0x61, 0xdc, 0x1a, 0xac, 0x15, 0x87, 0x20,
+  0xc6, 0xd1, 0x9f, 0x23, 0x83, 0x78, 0x2d, 0x3c, 0x38, 0x90, 0x39, 0x4a,
+  0xa7, 0x5a, 0xab, 0x94, 0x37, 0xc7, 0x81, 0x43, 0x76, 0x91, 0x5d, 0xce,
+  0xca, 0x70, 0xfd, 0x0b, 0xb9, 0xa9, 0x24, 0xd5, 0x4c, 0x3b, 0x71, 0x27,
+  0xb7, 0x89, 0x82, 0x58, 0x50, 0xf7, 0x74, 0x15, 0x3a, 0xea, 0x30, 0x52,
+  0xd0, 0x08, 0x6c, 0x93, 0xee, 0xed, 0x0a, 0xc2, 0x7c, 0x80, 0x52, 0x8d,
+  0xfe, 0x35, 0x49, 0x91, 0x94, 0x76, 0xe0, 0x49, 0x6d, 0x91, 0x3b, 0x24,
+  0x16, 0x81, 0x5c, 0x88, 0x3a, 0x08, 0x35, 0xa3, 0x21, 0x12, 0x04, 0xb2,
+  0xe0, 0x69, 0xf9, 0x1a, 0xc1, 0xc4, 0xa7, 0xc9, 0xbd, 0x7a, 0x55, 0x20,
+  0x48, 0x3a, 0xc8, 0x4b, 0x94, 0x8f, 0x3e, 0x56, 0x28, 0x0a, 0x45, 0xda,
+  0x51, 0x96, 0x8f, 0xbc, 0x4d, 0xf0, 0xfc, 0x6d, 0x3e, 0x2e, 0x92, 0x91,
+  0xf5, 0x96, 0x4e, 0xb5, 0x14, 0x4c, 0x40, 0xef, 0x65, 0x73, 0xbd, 0xc4,
+  0x3a, 0xdc, 0x6b, 0xde, 0xe5, 0x68, 0xd5, 0x41, 0xb2, 0xa5, 0xc3, 0xe3,
+  0x78, 0xe0, 0x58, 0x80, 0x22, 0xaf, 0x30, 0x2e, 0xeb, 0x5a, 0x8f, 0xe6,
+  0x12, 0xc0, 0x48, 0xe7, 0xfd, 0x32, 0xdd, 0xe3, 0xd3, 0xbb, 0x1a, 0xfe,
+  0x99, 0x8e, 0x5c, 0x8f, 0x60, 0xd4, 0x3f, 0xfe, 0xaf, 0xa3, 0x3f, 0x3a,
+  0xb0, 0xcf, 0x94, 0xdb, 0xda, 0x8a, 0x77, 0x76, 0x1e, 0x88, 0xe4, 0x97,
+  0xc9, 0xad, 0x41, 0xab, 0xf9, 0x96, 0x7b, 0xc6, 0x48, 0x84, 0xdd, 0xc0,
+  0xad, 0x26, 0x63, 0x71, 0xfa, 0x01, 0xf5, 0x38, 0x9a, 0x4a, 0x79, 0x20,
+  0xc4, 0xb5, 0x17, 0x41, 0x2f, 0x31, 0x61, 0xca, 0x94, 0x36, 0xe6, 0x40,
+  0x55, 0x93, 0x04, 0x33, 0xc2, 0xf1, 0x03, 0xe6, 0x8a, 0x09, 0x45, 0x22,
+  0xc8, 0x17, 0x88, 0x81, 0x28, 0x46, 0x2e, 0x8f, 0xfc, 0x38, 0x29, 0xf5,
+  0x16, 0xc1, 0x49, 0xc1, 0x5c, 0x97, 0x27, 0xc4, 0xed, 0x62, 0x02, 0x48,
+  0xd7, 0x6d, 0x4c, 0x0c, 0x28, 0xa3, 0xfd, 0x0f, 0xef, 0x4f, 0xe6, 0x20,
+  0xf9, 0xf4, 0x69, 0xdf, 0x71, 0x83, 0x3a, 0xef, 0x53, 0xc2, 0xf0, 0x2f,
+  0x41, 0x62, 0x5e, 0x82, 0x3a, 0xe7, 0xb4, 0x4d, 0x50, 0xcd, 0x9e, 0x88,
+  0x24, 0x7e, 0xcd, 0x90, 0x97, 0x16, 0xef, 0x71, 0x3d, 0xb6, 0x78, 0xa7,
+  0xd9, 0x6c, 0x1f, 0x17, 0x7e, 0xe7, 0x62, 0x9c, 0x08, 0x85, 0x67, 0x25,
+  0x66, 0x69, 0xd1, 0xfe, 0xf8, 0x4c, 0xa9, 0x91, 0x05, 0xea, 0xa3, 0xe3,
+  0xb6, 0xe9, 0x71, 0xba, 0xc9, 0x27, 0x53, 0xe4, 0xdb, 0xa8, 0xf3, 0x29,
+  0x86, 0x10, 0x3b, 0x3a, 0xcd, 0x38, 0xf5, 0xd3, 0x1b, 0x94, 0x14, 0x98,
+  0xef, 0x53, 0x17, 0x0e, 0x6e, 0x49, 0x33, 0xf8, 0x88, 0xb3, 0xd6, 0x34,
+  0x9a, 0xf4, 0x26, 0x23, 0xd4, 0x58, 0x78, 0xa5, 0x5d, 0x54, 0x4e, 0xd9,
+  0x01, 0x08, 0x67, 0xcc, 0x0d, 0x93, 0x30, 0x91, 0x30, 0x3a, 0x91, 0xf9,
+  0xed, 0x49, 0x2c, 0x9a, 0x15, 0x4e, 0x9d, 0x5a, 0x23, 0x61, 0x33, 0xb4,
+  0xd8, 0x64, 0x8c, 0x7d, 0xe0, 0x4d, 0x08, 0x02, 0xd7, 0x28, 0x82, 0x0d,
+  0xe7, 0x94, 0xe4, 0x26, 0x64, 0xd5, 0xd8, 0xda, 0x3f, 0xbc, 0xea, 0x53,
+  0xe9, 0xda, 0x51, 0x6e, 0xbc, 0x00, 0xca, 0x6a, 0xb6, 0x4d, 0x67, 0x89,
+  0xca, 0xcf, 0x85, 0x03, 0x09, 0x11, 0xe3, 0x93, 0xa7, 0x0c, 0xb8, 0xf8,
+  0xe5, 0xb9, 0x21, 0xfb, 0x03, 0x24, 0x33, 0x7a, 0xb2, 0xe2, 0xe4, 0x92,
+  0x82, 0x6d, 0x58, 0x54, 0xef, 0xf0, 0xb1, 0x13, 0xc8, 0x77, 0x1b, 0xd9,
+  0x3b, 0x9d, 0xeb, 0xe7, 0xf4, 0xf2, 0x72, 0xb6, 0xa7, 0xa6, 0x32, 0x73,
+  0xe2, 0xd9, 0x53, 0x67, 0x0c, 0xf1, 0xe1, 0xe8, 0xd1, 0x13, 0x65, 0x29,
+  0x18, 0x24, 0x8d, 0x9d, 0x72, 0xf4, 0x43, 0x86, 0x51, 0x8a, 0x5f, 0x65,
+  0x70, 0x57, 0x57, 0x8c, 0x2e, 0x4e, 0xb6, 0x13, 0x03, 0x01, 0xa9, 0x7c,
+  0x62, 0x38, 0xad, 0xd8, 0x6f, 0xe2, 0xc1, 0xcd, 0xa3, 0x12, 0xfb, 0x8a,
+  0x89, 0xb2, 0xc3, 0x11, 0x08, 0x73, 0x9a, 0xad, 0xd2, 0x36, 0xda, 0x62,
+  0x62, 0x3d, 0x3e, 0x44, 0x33, 0x53, 0xcf, 0x2e, 0x58, 0xb9, 0x98, 0xbe,
+  0x19, 0xa0, 0x8e, 0x42, 0x7e, 0x73, 0x06, 0x68, 0x15, 0x99, 0x9a, 0x41,
+  0x2e, 0x83, 0xf3, 0x5d, 0x21, 0x94, 0xda, 0x6f, 0xc1, 0x95, 0xda, 0xfa,
+  0x1d, 0x4c, 0xea, 0xb6, 0xc4, 0x6b, 0x8f, 0xfd, 0x87, 0x9a, 0x65, 0x2b,
+  0x30, 0x51, 0x43, 0x18, 0xb6, 0xe7, 0x64, 0xbd, 0xaa, 0xc9, 0x42, 0x65,
+  0xde, 0x73, 0x93, 0xb4, 0xee, 0x1b, 0x8b, 0xa3, 0x02, 0x09, 0xf7, 0xb0,
+  0x61, 0xd4, 0x35, 0x2f, 0x04, 0x97, 0x39, 0x94, 0xb1, 0x45, 0x99, 0xa8,
+  0xf8, 0x88, 0xab, 0x72, 0x70, 0xf2, 0x61, 0xf4, 0xe7, 0xd8, 0xf6, 0x65,
+  0x5e, 0xbd, 0x4f, 0xc1, 0xca, 0xb2, 0x09, 0x8c, 0x64, 0xea, 0x7f, 0x32,
+  0xc7, 0xad, 0x26, 0x0a, 0x8d, 0x9d, 0x06, 0x9a, 0xb7, 0x4e, 0x3e, 0x08,
+  0x13, 0x1e, 0x14, 0x2e, 0x2a, 0x2a, 0xc8, 0xd3, 0x3b, 0x6c, 0x60, 0x38,
+  0x7f, 0x38, 0xdf, 0xd0, 0xfa, 0xf6, 0xe0, 0xfd, 0xbb, 0xe3, 0x77, 0x5f,
+  0xed, 0xa1, 0x30, 0x48, 0xcb, 0x21, 0x2a, 0xcc, 0xd1, 0x4f, 0xb3, 0x51,
+  0x36, 0x64, 0xf1, 0x28, 0x3d, 0x56, 0x1a, 0xe5, 0xed, 0xa9, 0x04, 0xab,
+  0x08, 0xa3, 0xdb, 0xeb, 0xfd, 0x41, 0x75, 0x2b, 0x58, 0x9d, 0x5f, 0x16,
+  0x97, 0x33, 0xc3, 0x41, 0x43, 0xd2, 0xfa, 0x28, 0x3c, 0x49, 0x49, 0x2d,
+  0xb8, 0x2d, 0xcc, 0xb8, 0xe8, 0xbf, 0x07, 0x9d, 0xec, 0xd5, 0xc9, 0x49,
+  0xa0, 0x5d, 0x18, 0x17, 0x4b, 0x08, 0x8f, 0x71, 0xf6, 0x2b, 0x0d, 0x64,
+  0xaa, 0x2b, 0x30, 0x0b, 0x03, 0xb4, 0x2c, 0x14, 0xb1, 0x0d, 0x51, 0x0f,
+  0x26, 0xc2, 0xb7, 0x7e, 0xd5, 0x02, 0x95, 0xd4, 0x50, 0xa6, 0x3a, 0xed,
+  0x70, 0x46, 0xc5, 0x61, 0x65, 0x8d, 0xbd, 0x93, 0x2e, 0x6a, 0xd4, 0x44,
+  0x97, 0xbc, 0xa9, 0x4f, 0xff, 0x33, 0xd8, 0x74, 0x9a, 0xfc, 0x2f, 0x8e,
+  0xb6, 0x62, 0xcf, 0x3d, 0xd6, 0x39, 0x2f, 0x8a, 0x80, 0x5e, 0xb1, 0xc9,
+  0xec, 0x66, 0xce, 0x49, 0x42, 0x0a, 0xd5, 0x79, 0x00, 0x73, 0xb3, 0x2e,
+  0x0f, 0x47, 0x96, 0x22, 0xb4, 0xfe, 0xd1, 0x18, 0xa5, 0xa0, 0x79, 0x88,
+  0xa5, 0x55, 0xe1, 0x5d, 0xe3, 0xcb, 0x9e, 0xdb, 0xb4, 0x14, 0xff, 0x88,
+  0x41, 0x07, 0x83, 0x9b, 0xa2, 0x17, 0xf5, 0x0b, 0x78, 0x3e, 0xa4, 0x15,
+  0x27, 0x0c, 0x6c, 0xa6, 0xf8, 0xeb, 0xb4, 0x0f, 0x5c, 0x77, 0x62, 0x92,
+  0x8d, 0xf1, 0xe6, 0xe5, 0xb4, 0x88, 0xe6, 0x7a, 0xfd, 0x74, 0x1c, 0x3a,
+  0x48, 0x83, 0xd4, 0x28, 0x6d, 0xf8, 0x05, 0x8a, 0x5d, 0x23, 0xab, 0x75,
+  0x62, 0x90, 0xcd, 0x1d, 0xdc, 0xa2, 0x38, 0xce, 0x0b, 0x77, 0xa4, 0xa5,
+  0x75, 0xa8, 0x26, 0xd1, 0x43, 0xfe, 0x2b, 0xea, 0x51, 0x1f, 0xfe, 0xb9,
+  0x6d, 0x4f, 0xef, 0x91, 0xaf, 0xcd, 0xf0, 0x25, 0x96, 0x0e, 0x6b, 0xa2,
+  0x1a, 0x21, 0x7c, 0xb0, 0x4b, 0xc4, 0xf1, 0x8c, 0x53, 0x3c, 0xda, 0xc9,
+  0x8d, 0xa1, 0x5f, 0xdd, 0xa6, 0x68, 0x61, 0x78, 0xd9, 0x54, 0xa7, 0xdc,
+  0x42, 0x41, 0x1e, 0x72, 0xe1, 0xf4, 0xdc, 0x97, 0xe5, 0xe6, 0xef, 0x5a,
+  0x6f, 0x1a, 0x17, 0x15, 0xd7, 0x1e, 0x06, 0xc8, 0x85, 0x9f, 0x3e, 0x74,
+  0x6e, 0x02, 0x69, 0xa6, 0x97, 0x54, 0x72, 0x63, 0x73, 0xaa, 0xe7, 0xca,
+  0x64, 0x2d, 0x30, 0x6e, 0xeb, 0x4b, 0xc4, 0x1e, 0xc6, 0x1d, 0xab, 0x43,
+  0x25, 0x91, 0x53, 0x7c, 0xec, 0xe6, 0xa6, 0x48, 0xba, 0x06, 0xa1, 0x17,
+  0x06, 0x86, 0x13, 0xcc, 0x05, 0xc9, 0x32, 0x98, 0x7b, 0x3f, 0x48, 0x70,
+  0x3e, 0xcb, 0x6f, 0x0a, 0xfa, 0x8d, 0x24, 0x8a, 0x04, 0xb2, 0x29, 0xb3,
+  0xb9, 0xa5, 0xc8, 0xe7, 0x2d, 0xaa, 0xaa, 0x47, 0x52, 0x0b, 0xf9, 0x60,
+  0x2d, 0x14, 0x39, 0x6a, 0x60, 0x8b, 0x58, 0x38, 0x91, 0x36, 0x2b, 0xf0,
+  0xd1, 0xc4, 0xa3, 0xd0, 0xa5, 0x5b, 0xe6, 0x8a, 0x5e, 0x4e, 0xc7, 0xe8,
+  0xcf, 0x70, 0xc0, 0x46, 0xf4, 0x2e, 0x94, 0xab, 0x30, 0x33, 0xce, 0xce,
+  0xf9, 0x97, 0x9c, 0x29, 0xed, 0x36, 0xb4, 0xb6, 0xae, 0x15, 0x2c, 0x1a,
+  0xa0, 0x63, 0x49, 0xf2, 0x60, 0x78, 0x55, 0x14, 0x02, 0x66, 0x33, 0xef,
+  0x0e, 0x88, 0x48, 0x77, 0x22, 0xdc, 0xcc, 0x39, 0xaa, 0x8d, 0xe9, 0x45,
+  0x60, 0xf3, 0x31, 0xbc, 0x1a, 0x1a, 0xb7, 0xc3, 0x49, 0xa3, 0xc7, 0x50,
+  0x53, 0x73, 0xe0, 0xf9, 0x18, 0xbd, 0x41, 0x64, 0xbe, 0xdf, 0xd5, 0x85,
+  0x64, 0x0a, 0x6b, 0x15, 0x61, 0xf2, 0x48, 0xf1, 0x82, 0x4b, 0x94, 0xe0,
+  0x1d, 0xcc, 0xe5, 0x0c, 0x24, 0x8f, 0x8c, 0xc1, 0x37, 0x22, 0xb3, 0x39,
+  0x6f, 0x86, 0x57, 0x69, 0xa6, 0x59, 0x4d, 0xe2, 0xe8, 0xcf, 0x5b, 0x1b,
+  0xf3, 0xee, 0x1e, 0x1c, 0x48, 0xf1, 0x73, 0xf0, 0x34, 0x56, 0xc6, 0xfe,
+  0xa6, 0xdb, 0xd9, 0x56, 0xe6, 0xe1, 0xd5, 0x86, 0x70, 0x03, 0xec, 0xa2,
+  0x82, 0xff, 0xcc, 0xa3, 0xff, 0x9c, 0xf4, 0x1d, 0x69, 0x00, 0xe5, 0xde,
+  0xf5, 0x49, 0xc5, 0x4e, 0x11, 0x86, 0x4a, 0x94, 0x12, 0x00, 0xeb, 0x38,
+  0xa5, 0x4b, 0xc0, 0x3f, 0x40, 0xe8, 0x2a, 0x59, 0xf6, 0x1e, 0x9b, 0x7b,
+  0x8d, 0x91, 0xc4, 0x33, 0xb2, 0xf0, 0xbd, 0xc3, 0x2f, 0x38, 0xa9, 0x50,
+  0x5e, 0xb5, 0xca, 0x25, 0x75, 0x07, 0x3a, 0xc6, 0x98, 0x55, 0x8b, 0xc8,
+  0x4b, 0x94, 0x46, 0xd4, 0x92, 0x83, 0x0e, 0x3a, 0x8e, 0xe6, 0xbb, 0x42,
+  0x60, 0x2e, 0x51, 0x40, 0xfc, 0x75, 0xf5, 0x34, 0x69, 0xfe, 0x64, 0x62,
+  0x3b, 0xf6, 0x24, 0x22, 0x6a, 0xc7, 0x7e, 0x37, 0x26, 0x15, 0xca, 0xec,
+  0xd8, 0x49, 0xa4, 0xba, 0x82, 0x88, 0x8b, 0x5f, 0x7a, 0xe2, 0x0d, 0x43,
+  0x21, 0xd2, 0x18, 0x3b, 0x68, 0x15, 0x0f, 0x79, 0x2d, 0x38, 0x7f, 0x3b,
+  0x96, 0x68, 0xd8, 0x3e, 0xca, 0xed, 0xcf, 0x1f, 0xd3, 0x12, 0x58, 0x0a,
+  0xc9, 0xdc, 0x76, 0xa5, 0x1d, 0x1e, 0xa4, 0x13, 0xad, 0xe2, 0x28, 0x6b,
+  0x46, 0xff, 0xf7, 0x31, 0xa0, 0xa4, 0x46, 0x45, 0xec, 0xde, 0x84, 0xf5,
+  0x82, 0x76, 0x1d, 0x0d, 0x9a, 0x00, 0xe8, 0x4b, 0x05, 0xf5, 0x69, 0x36,
+  0x4e, 0xca, 0x31, 0xf1, 0xe2, 0xc5, 0x6c, 0x1c, 0x32, 0x8d, 0x51, 0x06,
+  0x49, 0x1f, 0xda, 0xac, 0xaa, 0x66, 0xe2, 0x38, 0x30, 0x90, 0xb9, 0xb6,
+  0xd7, 0xca, 0x18, 0xe6, 0x43, 0x9f, 0xae, 0xc6, 0x98, 0xee, 0x38, 0x57,
+  0xbb, 0xe3, 0xfe, 0x83, 0x6c, 0x3b, 0x18, 0x24, 0x26, 0xb6, 0xbd, 0x65,
+  0xe7, 0x2f, 0x71, 0x52, 0x74, 0x14, 0xa7, 0xc8, 0x44, 0x25, 0x28, 0xa1,
+  0x78, 0xa7, 0xb6, 0x86, 0xeb, 0x9c, 0x9e, 0x9d, 0x1f, 0x9f, 0xbe, 0xeb,
+  0x47, 0xff, 0xde, 0x59, 0x7e, 0x2f, 0x1b, 0x5b, 0xd3, 0xf9, 0x77, 0xb0,
+  0x28, 0xbf, 0x8b, 0x74, 0xbc, 0x25, 0x2b, 0xcd, 0x9b, 0x6d, 0xe2, 0xbe,
+  0xeb, 0xda, 0xf1, 0xe7, 0xa7, 0xd8, 0x8a, 0xbf, 0xc6, 0xb1, 0xb3, 0x86,
+  0xa0, 0x13, 0xc1, 0x3d, 0xa3, 0x6f, 0x4a, 0xef, 0x09, 0xe1, 0x86, 0x16,
+  0x32, 0x9e, 0xe7, 0xa8, 0x35, 0xed, 0x4b, 0xda, 0x8e, 0x1d, 0xbe, 0xf4,
+  0xac, 0x59, 0xd9, 0x1a, 0x3e, 0x7c, 0x13, 0xc9, 0x0d, 0xd0, 0x28, 0xec,
+  0x90, 0x17, 0xac, 0x9b, 0x5d, 0xbc, 0x3a, 0xab, 0x7c, 0x77, 0xa8, 0xfa,
+  0x5a, 0x05, 0x12, 0x02, 0xbf, 0x3a, 0x3a, 0x47, 0x67, 0x25, 0x01, 0xb4,
+  0xd8, 0x09, 0x92, 0xd3, 0x57, 0xd4, 0xc9, 0xc4, 0xa8, 0xbc, 0x8a, 0xc9,
+  0x82, 0x07, 0x1e, 0x8c, 0x9b, 0x71, 0x92, 0x07, 0xab, 0xe9, 0xc1, 0xe0,
+  0x38, 0x04, 0x6a, 0x14, 0xb6, 0xf3, 0x96, 0x7a, 0xfd, 0x9c, 0xa6, 0xd8,
+  0x0c, 0x62, 0x7d, 0xf6, 0xe1, 0x5c, 0xfc, 0xb5, 0x18, 0xdd, 0x3c, 0x3f,
+  0xea, 0x7a, 0x4d, 0x7e, 0x30, 0x0e, 0x31, 0xa6, 0xb2, 0xd8, 0x3a, 0x1d,
+  0x5e, 0xe5, 0xc5, 0xb8, 0xb8, 0xc4, 0x2d, 0x21, 0x2d, 0xee, 0xdb, 0x74,
+  0xf0, 0xea, 0xe0, 0x1b, 0xd4, 0xab, 0xd0, 0xf7, 0x7a, 0xf6, 0xfe, 0xf4,
+  0xec, 0xf5, 0xf1, 0xbb, 0x57, 0xdd, 0xe8, 0xf0, 0xf4, 0xec, 0x6f, 0xdd,
+  0xe8, 0xed, 0xe9, 0x37, 0x47, 0x81, 0x6a, 0x2a, 0x6c, 0x30, 0xe6, 0x71,
+  0xe4, 0x3b, 0xf4, 0xbf, 0xa1, 0xa9, 0xe2, 0x38, 0x83, 0xb8, 0xfb, 0xa5,
+  0x7b, 0x9b, 0x1e, 0x98, 0x6c, 0x08, 0x3a, 0xcb, 0x40, 0x3a, 0xd0, 0x25,
+  0xde, 0x1c, 0x1d, 0xbc, 0xea, 0x7a, 0x6d, 0x1e, 0xb1, 0x0f, 0x37, 0x7c,
+  0x0c, 0xd7, 0x67, 0x16, 0x4d, 0x4d, 0xfc, 0xd8, 0x38, 0x24, 0x4d, 0x89,
+  0xa3, 0xe4, 0x2c, 0x11, 0x80, 0x61, 0x09, 0x07, 0x6d, 0x34, 0x2f, 0x49,
+  0x50, 0x7a, 0xa2, 0x4e, 0x99, 0xc0, 0x0b, 0x2b, 0x3c, 0x51, 0x69, 0x75,
+  0x8d, 0x17, 0x81, 0xb6, 0xa6, 0x0a, 0x3e, 0xad, 0x07, 0x77, 0x0b, 0x5b,
+  0xe6, 0x00, 0x2c, 0x77, 0x1b, 0x60, 0x6c, 0x24, 0xef, 0xd8, 0x05, 0x9f,
+  0xdc, 0x0b, 0xf8, 0x41, 0x8a, 0xb7, 0x5b, 0x45, 0xb6, 0xca, 0x85, 0x6d,
+  0xd2, 0xb5, 0xd8, 0x6e, 0xa1, 0x3b, 0x21, 0x51, 0x94, 0x6b, 0x24, 0x9e,
+  0x12, 0xa8, 0xab, 0xcd, 0xc6, 0xbf, 0xe3, 0x1f, 0x4b, 0x53, 0xe5, 0x80,
+  0x87, 0x60, 0x76, 0x01, 0x6c, 0x99, 0x72, 0x46, 0xb3, 0xf6, 0x28, 0xd5,
+  0x30, 0x57, 0x7c, 0xac, 0x7e, 0xa3, 0x45, 0x8a, 0xa6, 0xe9, 0x1e, 0x23,
+  0xce, 0x42, 0x86, 0xd6, 0x56, 0x3f, 0x6a, 0x53, 0x4c, 0xb8, 0x4e, 0x3b,
+  0x5c, 0x67, 0xc0, 0x8a, 0xd2, 0x2d, 0x36, 0x2d, 0x05, 0x59, 0x41, 0x74,
+  0x89, 0x42, 0xa8, 0x86, 0x9e, 0x7f, 0x15, 0x14, 0x0d, 0xef, 0x62, 0xa4,
+  0x27, 0x41, 0x94, 0xe4, 0x12, 0x19, 0xc0, 0x90, 0x7b, 0xcc, 0x9e, 0x0e,
+  0xb7, 0x4a, 0xa7, 0xdd, 0x1a, 0x54, 0xe6, 0xe0, 0x45, 0x91, 0x69, 0x9d,
+  0xc9, 0x70, 0x08, 0xbb, 0x2f, 0x17, 0x85, 0x39, 0xe5, 0xdb, 0x1b, 0x77,
+  0x36, 0xda, 0x84, 0x5a, 0x55, 0x15, 0xc5, 0x9c, 0x02, 0xc6, 0x38, 0x02,
+  0x1e, 0xe9, 0x56, 0x5f, 0xcf, 0x11, 0x8c, 0x6e, 0xf4, 0xc2, 0x00, 0x51,
+  0x19, 0x11, 0x75, 0x72, 0x0c, 0xc7, 0x21, 0x80, 0xe6, 0x3a, 0x2a, 0x70,
+  0x46, 0x9c, 0xfc, 0x45, 0xfa, 0x25, 0x51, 0x1f, 0xc6, 0xf2, 0x3f, 0x7c,
+  0x76, 0x7a, 0xb6, 0x1d, 0xfc, 0x32, 0xfe, 0xe2, 0xa1, 0x4f, 0x7b, 0x7b,
+  0xf6, 0xfe, 0xe8, 0xfc, 0xbd, 0xff, 0x8d, 0xe3, 0xb7, 0x07, 0xe1, 0xd5,
+  0xe1, 0x2f, 0xe6, 0x7d, 0x83, 0x24, 0x01, 0x7e, 0xc5, 0x2f, 0xc5, 0x71,
+  0x50, 0x9e, 0x37, 0x02, 0xc9, 0x4c, 0xab, 0xfd, 0xb7, 0x73, 0xa8, 0x89,
+  0xbf, 0x58, 0xb0, 0xa6, 0x37, 0x47, 0x27, 0x67, 0xfe, 0x9a, 0xbe, 0x79,
+  0xff, 0xfa, 0x6f, 0xcd, 0x14, 0xaa, 0xed, 0x9d, 0xc0, 0x57, 0x7f, 0x67,
+  0xaf, 0xf5, 0x77, 0x9c, 0xb7, 0x72, 0x7e, 0xb4, 0x84, 0x83, 0xfa, 0xbb,
+  0xe8, 0xdd, 0x09, 0xec, 0xda, 0xa2, 0x42, 0x19, 0x38, 0x9c, 0x55, 0x31,
+  0x06, 0xd5, 0x6b, 0xff, 0xfb, 0xbf, 0x10, 0xdc, 0x03, 0xd5, 0x8f, 0xee,
+  0xc1, 0x7d, 0x53, 0x7e, 0xdf, 0xc5, 0x3f, 0x7f, 0xec, 0xf5, 0x7a, 0x9f,
+  0xfb, 0xbd, 0x2f, 0xc9, 0x53, 0x67, 0xe8, 0x8c, 0x0f, 0x62, 0x82, 0x74,
+  0xcb, 0x7d, 0x42, 0x75, 0xc0, 0x54, 0xf7, 0x8c, 0x41, 0xc2, 0x69, 0x92,
+  0x95, 0xd4, 0x7e, 0x3e, 0x78, 0xaf, 0x23, 0x2d, 0x6d, 0xed, 0xba, 0x51,
+  0x78, 0x05, 0xa7, 0x9d, 0xa5, 0xc2, 0x6a, 0xb5, 0x26, 0x40, 0x32, 0xf6,
+  0xaa, 0x4f, 0x46, 0x9e, 0x3b, 0x8c, 0x1b, 0x71, 0xe3, 0x67, 0x4b, 0x0c,
+  0x4d, 0xb0, 0x69, 0x69, 0xaf, 0xf4, 0x5c, 0xaf, 0x28, 0x59, 0xfa, 0xc8,
+  0x4c, 0x3f, 0xe8, 0x7a, 0xe2, 0x6e, 0xf5, 0xe8, 0xa8, 0xa6, 0x94, 0x1d,
+  0x8a, 0xa1, 0x24, 0x74, 0x7b, 0x21, 0x0b, 0xad, 0xa7, 0xf5, 0x70, 0x1d,
+  0xd7, 0x59, 0x35, 0x14, 0x59, 0xa3, 0x89, 0x7a, 0xae, 0x44, 0xb7, 0x1a,
+  0x83, 0x30, 0x43, 0x38, 0x09, 0xcf, 0x29, 0x56, 0xb4, 0xb0, 0x25, 0x8e,
+  0x61, 0xc4, 0x6a, 0x88, 0x2f, 0x34, 0x5d, 0x78, 0xd7, 0xa1, 0x8b, 0xa9,
+  0xa0, 0x6d, 0x87, 0x3d, 0xa9, 0xeb, 0x14, 0xde, 0xfb, 0x56, 0x16, 0x5d,
+  0x02, 0xca, 0xc2, 0x98, 0xf0, 0x45, 0x3d, 0x26, 0x2f, 0x1a, 0x17, 0x8f,
+  0xfa, 0x69, 0xdd, 0x4d, 0xd7, 0xf6, 0x7d, 0x01, 0xe8, 0x61, 0xe9, 0x17,
+  0xa9, 0x3e, 0x13, 0x5c, 0x69, 0xb0, 0x36, 0xc6, 0x05, 0xd6, 0x59, 0xf9,
+  0xf7, 0x15, 0xd4, 0xe7, 0xe9, 0xf5, 0x20, 0x9c, 0x8f, 0x72, 0x2d, 0xda,
+  0x91, 0x81, 0xe6, 0xca, 0x24, 0x7a, 0x95, 0x28, 0x86, 0xf9, 0x4c, 0xae,
+  0xac, 0xc3, 0x3c, 0xb4, 0x84, 0x5e, 0xf4, 0x6d, 0x36, 0x1e, 0x0d, 0x93,
+  0x92, 0x72, 0x83, 0xfd, 0x5b, 0x5c, 0xd8, 0x84, 0x0f, 0x72, 0x55, 0xd0,
+  0x57, 0xed, 0xc9, 0xd1, 0xee, 0xe1, 0x61, 0xae, 0x0f, 0x54, 0x1a, 0x9b,
+  0xcd, 0xc0, 0x34, 0x98, 0x79, 0x65, 0xf4, 0xcc, 0x3e, 0x4a, 0x63, 0xbc,
+  0x51, 0x9b, 0x6d, 0x8f, 0x9b, 0xfb, 0xaa, 0x21, 0xb8, 0x78, 0xc7, 0x0f,
+  0x23, 0x66, 0xd3, 0x9b, 0x1d, 0xf2, 0x3d, 0x3e, 0xeb, 0xf2, 0xbf, 0x9e,
+  0xd9, 0xc2, 0x54, 0xc7, 0x8e, 0x65, 0x73, 0x8c, 0x8d, 0x97, 0xe3, 0x33,
+  0x85, 0xed, 0xe8, 0xf9, 0x1b, 0xc5, 0x65, 0x45, 0x5a, 0x7f, 0x2f, 0x3c,
+  0x66, 0xca, 0xa9, 0xbc, 0x13, 0xcc, 0x69, 0x83, 0x9c, 0x72, 0xeb, 0x79,
+  0xf2, 0xd8, 0xb9, 0x8a, 0xdf, 0x5f, 0xa9, 0x8c, 0x6f, 0x18, 0x9f, 0x45,
+  0x53, 0x6b, 0x75, 0x33, 0x9a, 0x64, 0xf9, 0xac, 0x4e, 0x51, 0xaf, 0xa6,
+  0xfa, 0x46, 0x31, 0xa7, 0x88, 0x0c, 0x21, 0xca, 0x72, 0x71, 0xb9, 0x78,
+  0xe2, 0xd2, 0x5c, 0x1c, 0x5e, 0xe3, 0x02, 0xe6, 0x5a, 0xce, 0x72, 0xca,
+  0xc3, 0xc3, 0x94, 0xa0, 0xf1, 0x38, 0x1d, 0x3b, 0xad, 0xe9, 0x65, 0xf6,
+  0xe3, 0xc2, 0xf7, 0x33, 0xd2, 0x9d, 0x0a, 0xfc, 0x71, 0x9c, 0x33, 0x42,
+  0x02, 0x42, 0x49, 0x54, 0x52, 0x15, 0xe5, 0xcb, 0x7e, 0x5b, 0xd6, 0x45,
+  0x4b, 0x2e, 0xbc, 0xbc, 0x57, 0x66, 0x18, 0x3e, 0xb4, 0xcc, 0x26, 0xe4,
+  0x0a, 0x32, 0x12, 0xe9, 0x96, 0x4e, 0x7e, 0x81, 0x65, 0xf1, 0x54, 0xdf,
+  0x26, 0x84, 0x40, 0x67, 0x8e, 0x1f, 0xfd, 0x9a, 0x52, 0xe1, 0xa7, 0x17,
+  0x0c, 0x74, 0x7a, 0x7f, 0x32, 0x1b, 0xe9, 0x4e, 0xc1, 0xa6, 0x2a, 0x3b,
+  0xe1, 0x8a, 0xe1, 0x66, 0xfb, 0x7e, 0x50, 0x22, 0x74, 0x62, 0x5d, 0xfd,
+  0x48, 0xc8, 0x32, 0x04, 0x2c, 0xe3, 0xc9, 0x66, 0xb4, 0xfd, 0x1a, 0xd0,
+  0x9b, 0xad, 0x0f, 0xb5, 0xbe, 0x64, 0x4a, 0x9c, 0xec, 0xe7, 0x10, 0x95,
+  0x99, 0x32, 0x0f, 0x90, 0x2a, 0x8b, 0x3f, 0xf4, 0x72, 0xc1, 0x87, 0x2e,
+  0x08, 0x43, 0x18, 0x49, 0x68, 0x20, 0xeb, 0x6f, 0xf5, 0xd8, 0x9a, 0x51,
+  0x05, 0xbc, 0x70, 0xe7, 0x81, 0x71, 0x28, 0x0d, 0x09, 0xb8, 0x55, 0x4a,
+  0xe4, 0xf0, 0xf5, 0xd6, 0x10, 0xcf, 0x77, 0x7b, 0x1b, 0x8f, 0xaf, 0xeb,
+  0xb2, 0xfe, 0x2c, 0xf4, 0x95, 0x8f, 0xe4, 0x27, 0xb4, 0xc5, 0x92, 0xae,
+  0x5c, 0xcc, 0x93, 0x2b, 0xcb, 0x1b, 0xf5, 0xcc, 0x45, 0xce, 0x7d, 0xbe,
+  0xb7, 0xb3, 0xb3, 0xbd, 0xb7, 0xb9, 0x85, 0xbb, 0xb4, 0x01, 0xf6, 0xe6,
+  0x43, 0xfe, 0x1a, 0xd8, 0x06, 0x0c, 0x1e, 0xc4, 0x14, 0x5c, 0x6c, 0x3b,
+  0xf4, 0x30, 0xcf, 0x92, 0xba, 0xd4, 0xe2, 0x02, 0xb8, 0xfd, 0x6b, 0x63,
+  0xd9, 0xca, 0xeb, 0x75, 0x71, 0x99, 0x92, 0xac, 0x60, 0x45, 0x9f, 0x87,
+  0xed, 0x3d, 0x08, 0x11, 0x4a, 0x59, 0x1b, 0xd5, 0x38, 0x1d, 0x5d, 0x82,
+  0xcd, 0x33, 0x99, 0xa4, 0x65, 0x07, 0x4f, 0x19, 0xbd, 0x4c, 0x0d, 0x75,
+  0x5f, 0xb1, 0xc9, 0xa8, 0x3e, 0xc3, 0xf6, 0x81, 0x9c, 0x6a, 0x7b, 0x64,
+  0x95, 0x15, 0xab, 0x29, 0x75, 0x9e, 0x41, 0xda, 0x94, 0x43, 0x6a, 0xaf,
+  0x8c, 0xde, 0x52, 0xcd, 0x96, 0xb5, 0xba, 0x3f, 0x66, 0xdc, 0x86, 0xac,
+  0x33, 0x8a, 0x5d, 0x1a, 0xf4, 0x93, 0x20, 0x5a, 0xf5, 0x68, 0x36, 0x1d,
+  0x33, 0xb4, 0x36, 0xe7, 0xe4, 0xda, 0x29, 0x86, 0x70, 0xfb, 0xb5, 0x2b,
+  0x3a, 0xf1, 0x11, 0x06, 0x4f, 0x30, 0x6b, 0x8f, 0xc2, 0x28, 0x64, 0x66,
+  0xad, 0xd0, 0xc5, 0x3e, 0xc1, 0xef, 0x0d, 0xd2, 0x9a, 0x8a, 0x7b, 0xc1,
+  0xea, 0x46, 0xf7, 0xa6, 0x1f, 0xd6, 0x1b, 0xab, 0x41, 0x85, 0x31, 0xd0,
+  0x0c, 0x26, 0x8b, 0xc7, 0x6c, 0x30, 0x46, 0xa0, 0x38, 0x04, 0x75, 0xc1,
+  0xd2, 0x3b, 0xe9, 0x39, 0xdc, 0x8b, 0xce, 0xc6, 0x29, 0xf6, 0xd8, 0x35,
+  0x1d, 0x6d, 0x7c, 0x71, 0xc1, 0xd6, 0x13, 0x95, 0x33, 0xce, 0x0f, 0x97,
+  0xbe, 0xa6, 0xb6, 0xed, 0x12, 0xdb, 0x9c, 0x4c, 0x41, 0x99, 0x91, 0xec,
+  0x41, 0xaf, 0x00, 0x9e, 0xb6, 0x2c, 0xa2, 0x4a, 0x50, 0x3f, 0x30, 0x3b,
+  0x4e, 0xae, 0xef, 0x9d, 0xde, 0xe9, 0x94, 0xd7, 0x3c, 0x1c, 0xa3, 0x0b,
+  0x1f, 0xbd, 0x74, 0x1c, 0xe5, 0xa4, 0x98, 0xc4, 0x15, 0x3b, 0xc3, 0xee,
+  0x39, 0x7a, 0x47, 0xa9, 0x63, 0xe9, 0x28, 0xe4, 0xbb, 0xa8, 0x1d, 0x4c,
+  0x1f, 0x33, 0x40, 0x98, 0xe0, 0x94, 0xc3, 0xab, 0x24, 0xc7, 0x15, 0xf9,
+  0xb5, 0xd0, 0x48, 0x8a, 0xae, 0xc1, 0x28, 0x37, 0xec, 0x47, 0xba, 0x9d,
+  0x66, 0xbf, 0x4b, 0xec, 0x8b, 0xdc, 0x78, 0x8a, 0x1a, 0x17, 0x5a, 0xac,
+  0xa6, 0x1e, 0xdb, 0xaa, 0x6e, 0x4a, 0xd4, 0x43, 0x89, 0x22, 0xb1, 0x7c,
+  0x6a, 0x06, 0x94, 0x9b, 0x68, 0x9a, 0x14, 0x6d, 0x45, 0x6f, 0x8a, 0x5b,
+  0x54, 0xb4, 0x42, 0x91, 0x1d, 0x05, 0x2f, 0x2a, 0x67, 0xa9, 0xd4, 0x8b,
+  0x24, 0xee, 0x3a, 0x29, 0x1e, 0xf7, 0xdf, 0x70, 0x01, 0x4c, 0xa9, 0xfc,
+  0xe1, 0x73, 0x71, 0x1f, 0x87, 0xd0, 0xf7, 0xd1, 0x55, 0xc2, 0x40, 0x01,
+  0x70, 0xe1, 0x83, 0x9e, 0x43, 0x75, 0x27, 0x70, 0x1f, 0x52, 0xf2, 0xde,
+  0x25, 0x75, 0x74, 0x73, 0x3c, 0x35, 0xb8, 0x18, 0x34, 0x9a, 0x91, 0x82,
+  0x88, 0x0c, 0x56, 0x8e, 0xc2, 0xc8, 0x15, 0x04, 0x53, 0x66, 0x66, 0x44,
+  0x07, 0xb0, 0x98, 0x0c, 0xb4, 0x80, 0xa2, 0x8d, 0x7c, 0xd8, 0x15, 0x60,
+  0x30, 0x5f, 0xdd, 0xc4, 0x73, 0xca, 0x07, 0x2d, 0x6d, 0x1f, 0xb3, 0x47,
+  0x55, 0x4f, 0x13, 0x8a, 0x21, 0xa5, 0x48, 0x90, 0xc0, 0x52, 0xdf, 0x98,
+  0x63, 0x88, 0x8b, 0x33, 0xdd, 0x3f, 0x5c, 0xf4, 0xa9, 0xca, 0xbc, 0x44,
+  0xa3, 0x98, 0x72, 0x67, 0xb3, 0x97, 0xb8, 0x8d, 0xb6, 0x1e, 0xbe, 0x67,
+  0x5a, 0xa8, 0x7b, 0x77, 0xf1, 0x98, 0x6b, 0xa5, 0x13, 0x5b, 0x29, 0x0d,
+  0xab, 0x81, 0xf1, 0x77, 0x36, 0x76, 0x50, 0x75, 0x81, 0x17, 0x67, 0x94,
+  0xd1, 0xa1, 0x59, 0xfb, 0x94, 0x39, 0x4c, 0x21, 0x38, 0x18, 0x77, 0x7c,
+  0xef, 0x69, 0x0a, 0x44, 0x13, 0x76, 0x24, 0xe6, 0xaa, 0xf6, 0x08, 0x57,
+  0x98, 0xb6, 0xdc, 0x1c, 0x99, 0x10, 0xd1, 0x6b, 0x05, 0x73, 0xa0, 0xd9,
+  0x8b, 0x21, 0x58, 0xa9, 0xd2, 0x9d, 0x72, 0x05, 0x7c, 0x72, 0x55, 0x4a,
+  0x2f, 0xa6, 0x0f, 0x9f, 0x61, 0xef, 0xda, 0xca, 0x28, 0xf8, 0xc9, 0x3e,
+  0x2f, 0xbe, 0x44, 0xba, 0x72, 0x48, 0x13, 0xc7, 0xd1, 0xa5, 0xae, 0xc9,
+  0x09, 0xde, 0x82, 0x3b, 0x77, 0xd6, 0x43, 0xe2, 0x95, 0xeb, 0xe3, 0x77,
+  0x55, 0x04, 0x03, 0xc1, 0x5a, 0x71, 0xc1, 0xc2, 0xce, 0x9a, 0x8b, 0x61,
+  0xcd, 0x8c, 0xf9, 0xd5, 0x50, 0xcc, 0xcd, 0x59, 0x81, 0x3b, 0xcd, 0x68,
+  0x15, 0xe7, 0x81, 0xbb, 0xb0, 0x7b, 0x77, 0xb7, 0xc6, 0xc4, 0x65, 0xce,
+  0x15, 0x61, 0x12, 0x5f, 0xf8, 0xfa, 0x33, 0x9e, 0xfa, 0xe5, 0x2f, 0xe9,
+  0xe6, 0x25, 0xbb, 0x2c, 0xd6, 0x79, 0x0b, 0x7c, 0x99, 0x87, 0xc3, 0x2a,
+  0x0e, 0xd0, 0x57, 0x70, 0x97, 0xdb, 0xbe, 0x88, 0xbc, 0x15, 0xb9, 0x14,
+  0x7b, 0x17, 0xaf, 0x3d, 0xfe, 0x31, 0x82, 0x89, 0xaa, 0x05, 0x7b, 0x84,
+  0xd0, 0x35, 0xef, 0x8f, 0x5e, 0x7f, 0xe8, 0x1f, 0xbd, 0x22, 0x20, 0xce,
+  0xc4, 0xcf, 0xab, 0xca, 0x65, 0x93, 0xf9, 0x74, 0xc1, 0xa0, 0x05, 0x2b,
+  0x7a, 0x7a, 0xd1, 0x2f, 0xd4, 0x09, 0x42, 0xf7, 0xe2, 0x3c, 0x0d, 0xe1,
+  0x51, 0x84, 0x74, 0x56, 0x6e, 0xf8, 0xfd, 0x97, 0x01, 0x00, 0xf3, 0xb8,
+  0xa3, 0x74, 0x0c, 0x12, 0x68, 0x9f, 0xeb, 0x28, 0xbc, 0xbe, 0x2a, 0x6f,
+  0x8d, 0x6d, 0x04, 0x0a, 0x4b, 0x3a, 0x15, 0x84, 0xaa, 0x09, 0x9c, 0x64,
+  0xce, 0x5e, 0x40, 0x93, 0x46, 0xaf, 0x10, 0xca, 0x37, 0xd1, 0x4b, 0x91,
+  0x73, 0x2d, 0x83, 0x54, 0x45, 0xa1, 0x42, 0xfa, 0xbc, 0x5c, 0x26, 0x6a,
+  0x7c, 0x58, 0x92, 0x33, 0xc5, 0x57, 0xb3, 0xba, 0x95, 0x37, 0xe3, 0xe1,
+  0x19, 0x90, 0x2c, 0x44, 0xec, 0x73, 0x54, 0x20, 0x68, 0x32, 0xc9, 0xf8,
+  0xb2, 0x80, 0x3b, 0xe7, 0x6a, 0x62, 0x40, 0xb5, 0x18, 0xf8, 0xb4, 0x5a,
+  0xeb, 0xf9, 0xaa, 0x58, 0xd0, 0x74, 0xa2, 0xdc, 0xe2, 0x94, 0xd1, 0x0c,
+  0xd1, 0x9c, 0xb4, 0xb2, 0x85, 0x12, 0x0c, 0xd9, 0x17, 0xd2, 0x17, 0xfc,
+  0x41, 0xa2, 0x07, 0x93, 0xd0, 0xb3, 0x75, 0x7e, 0x4e, 0xcb, 0xa2, 0x1d,
+  0x29, 0x55, 0xcf, 0xb2, 0xca, 0x71, 0x77, 0xee, 0x7f, 0x78, 0x96, 0xb6,
+  0xc3, 0x0f, 0xbb, 0x8f, 0xe2, 0x31, 0x7d, 0x67, 0x92, 0xdc, 0x71, 0xb4,
+  0x74, 0x1e, 0x1b, 0x71, 0x3e, 0x86, 0x1a, 0xc1, 0x25, 0xbb, 0x18, 0xc8,
+  0xa0, 0xb7, 0x48, 0x26, 0x5c, 0x11, 0x63, 0x38, 0x44, 0x14, 0x2d, 0x0a,
+  0x27, 0xf9, 0x49, 0x8f, 0x78, 0xaf, 0x88, 0x4f, 0x7f, 0x90, 0x72, 0x1a,
+  0x40, 0x82, 0xe4, 0xc1, 0xd8, 0xc4, 0x2a, 0x56, 0x93, 0xca, 0xd4, 0xd6,
+  0xf0, 0xc7, 0x64, 0xfc, 0x4a, 0x90, 0x9d, 0xbe, 0xef, 0x77, 0xfb, 0x11,
+  0x05, 0x01, 0x38, 0x58, 0xe3, 0x34, 0x9c, 0xf3, 0x31, 0xce, 0x26, 0x59,
+  0x4d, 0xc8, 0x42, 0xd9, 0x50, 0x2f, 0xd2, 0x0b, 0x1b, 0xd8, 0x66, 0x46,
+  0x6e, 0x3b, 0x90, 0x50, 0x8b, 0xd0, 0xb1, 0x04, 0xcd, 0x01, 0x46, 0xe9,
+  0x36, 0x5b, 0xac, 0xca, 0x46, 0x11, 0x58, 0x18, 0xc1, 0x92, 0x5c, 0x51,
+  0x5a, 0x90, 0x5f, 0xc7, 0x2d, 0x05, 0x2e, 0x14, 0x41, 0x41, 0x65, 0x81,
+  0xe0, 0x6a, 0x70, 0x49, 0xac, 0x67, 0xe5, 0xea, 0x0b, 0x90, 0x24, 0x15,
+  0xc6, 0x70, 0x80, 0x71, 0xb2, 0x62, 0x44, 0x20, 0x34, 0x1e, 0xd0, 0xd1,
+  0x24, 0xa3, 0x62, 0x09, 0x41, 0x6a, 0x96, 0x09, 0xad, 0x60, 0x46, 0xc2,
+  0x5d, 0x36, 0x99, 0x4d, 0x68, 0x84, 0x2e, 0x23, 0x72, 0x4d, 0xd0, 0x5d,
+  0xa2, 0xbb, 0x4b, 0x65, 0x73, 0xf5, 0xfc, 0x2c, 0x1c, 0x14, 0xbb, 0xc4,
+  0xf3, 0x35, 0x6b, 0x52, 0x6a, 0xba, 0xcb, 0x01, 0xfc, 0xd7, 0x60, 0x6f,
+  0xc3, 0xaa, 0xdb, 0x1b, 0x86, 0xc5, 0x37, 0x37, 0x1e, 0xc3, 0xe5, 0xd1,
+  0x7e, 0x3e, 0x9b, 0x7c, 0xee, 0xaf, 0xc1, 0x17, 0x5c, 0xc4, 0xdd, 0x52,
+  0xd7, 0x64, 0x63, 0x2c, 0xc2, 0xb4, 0xa8, 0x09, 0x0b, 0x9e, 0xe8, 0x7c,
+  0xf9, 0xd8, 0xe5, 0x34, 0x75, 0x47, 0x5f, 0x21, 0x4a, 0xd9, 0x0c, 0x11,
+  0x36, 0xb4, 0xe5, 0xf4, 0x5c, 0xb2, 0x91, 0x36, 0x9b, 0xf6, 0xbc, 0xac,
+  0x68, 0x95, 0x52, 0xc6, 0x89, 0x0a, 0x9f, 0xdf, 0x90, 0x52, 0x07, 0x89,
+  0xfc, 0x60, 0x52, 0x8d, 0x6c, 0x91, 0x89, 0xf1, 0x66, 0x55, 0x28, 0xd1,
+  0x48, 0x84, 0x16, 0x49, 0x52, 0xef, 0x7a, 0x64, 0x77, 0x2a, 0xa3, 0x96,
+  0xef, 0x21, 0x51, 0x78, 0xf7, 0xbb, 0x0a, 0xce, 0x04, 0x5a, 0x87, 0xef,
+  0x0b, 0x72, 0x94, 0xd4, 0xc2, 0xe2, 0xaa, 0xee, 0x6c, 0xbc, 0xe8, 0x46,
+  0x3b, 0x5b, 0x2f, 0xbb, 0x58, 0xa0, 0x87, 0x7f, 0x6c, 0xe1, 0x1f, 0xdb,
+  0xf8, 0xc8, 0x2e, 0xe8, 0x92, 0x0b, 0x74, 0xa8, 0x39, 0xed, 0xab, 0x18,
+  0x40, 0x08, 0x25, 0xf8, 0xa0, 0x98, 0x39, 0xea, 0x54, 0xe2, 0x10, 0x5c,
+  0xd3, 0x91, 0x58, 0x0c, 0xdd, 0x26, 0x19, 0x71, 0x9c, 0x97, 0xbc, 0x4d,
+  0xd5, 0x86, 0xa2, 0xc3, 0xda, 0xdc, 0x4d, 0xf8, 0x6f, 0x7d, 0x05, 0x3c,
+  0x83, 0xc4, 0x56, 0x5a, 0xea, 0x80, 0x40, 0xe2, 0x19, 0x67, 0x71, 0x79,
+  0x04, 0xc5, 0xaf, 0xb0, 0xe7, 0x1f, 0x39, 0x12, 0xee, 0xd4, 0x6c, 0xcc,
+  0xe6, 0x17, 0xca, 0x8e, 0x0a, 0xf9, 0x92, 0x9d, 0x7f, 0x95, 0xdb, 0x06,
+  0xd6, 0x20, 0x3c, 0x07, 0xf6, 0x67, 0x4c, 0x46, 0xbf, 0x82, 0x49, 0x52,
+  0xfd, 0x9b, 0x93, 0x65, 0xc8, 0xc7, 0x90, 0x3d, 0xcd, 0x92, 0x3b, 0xd2,
+  0x90, 0xfa, 0xa1, 0xee, 0x21, 0x26, 0x37, 0x54, 0xa4, 0x4c, 0x7a, 0x07,
+  0xb4, 0x67, 0x3c, 0xf4, 0xc8, 0xdc, 0x5e, 0xf6, 0xd6, 0x95, 0xd2, 0x5a,
+  0xba, 0x2a, 0x03, 0xc5, 0x1c, 0x8d, 0x13, 0x08, 0xdb, 0xc0, 0xc2, 0x88,
+  0xe4, 0x72, 0x51, 0xcb, 0x99, 0x67, 0x00, 0x57, 0xc9, 0x61, 0x9d, 0x27,
+  0x3b, 0xfa, 0x64, 0x4d, 0xd1, 0xbe, 0x3e, 0xef, 0x3d, 0x7b, 0x66, 0xf0,
+  0xe9, 0xb8, 0x4e, 0x11, 0xcc, 0x76, 0xad, 0xab, 0x62, 0x59, 0x4d, 0x1e,
+  0x9d, 0xf8, 0x00, 0x3d, 0xad, 0x7b, 0xa1, 0x18, 0xb5, 0x2a, 0xd3, 0x52,
+  0xea, 0x02, 0x22, 0x9e, 0xa4, 0x0d, 0xe5, 0xd3, 0xa4, 0xda, 0xfe, 0x17,
+  0x1b, 0x03, 0xf3, 0x79, 0x36, 0x09, 0x32, 0x74, 0xb0, 0xd2, 0xbb, 0xda,
+  0xef, 0x70, 0x1c, 0x50, 0xf3, 0xfe, 0x08, 0x79, 0x17, 0x3d, 0x7f, 0x40,
+  0xb4, 0x55, 0x09, 0xf7, 0x29, 0xba, 0xfa, 0x39, 0x1b, 0x45, 0xfb, 0xda,
+  0x83, 0x2d, 0x8c, 0x9d, 0x8a, 0x07, 0x08, 0x9e, 0x84, 0x9d, 0xae, 0xd8,
+  0xca, 0xd5, 0xc7, 0xa3, 0x55, 0x19, 0x61, 0xad, 0x0b, 0x36, 0x2c, 0x05,
+  0xc1, 0xfb, 0x07, 0xfd, 0x93, 0xe8, 0xec, 0xe4, 0xe0, 0xf8, 0x1d, 0xbc,
+  0x13, 0xfb, 0x11, 0x1b, 0xd3, 0xb0, 0x80, 0xd0, 0x6c, 0x3d, 0xd5, 0xbd,
+  0xd5, 0xd4, 0xa0, 0xf9, 0x21, 0x1f, 0x73, 0x7c, 0x44, 0xf7, 0x7c, 0x03,
+  0x30, 0x20, 0x9e, 0x69, 0x21, 0xc8, 0xbc, 0x12, 0x08, 0xbb, 0x0f, 0x0d,
+  0xb4, 0xec, 0x46, 0x17, 0x3b, 0xda, 0x00, 0x60, 0x89, 0xcc, 0xf8, 0xac,
+  0x43, 0xab, 0x41, 0xda, 0xd9, 0xe4, 0x51, 0x9a, 0x3c, 0xcc, 0x89, 0x0d,
+  0x42, 0xe0, 0x25, 0x67, 0x68, 0x6a, 0xee, 0xd0, 0xaa, 0xb2, 0x0c, 0x16,
+  0x88, 0x44, 0x54, 0x4a, 0x88, 0x75, 0x89, 0x42, 0x25, 0xb9, 0xfd, 0x9d,
+  0x02, 0x78, 0x41, 0x64, 0x32, 0x11, 0x0b, 0xc2, 0x6f, 0x59, 0xa9, 0x3c,
+  0xa7, 0xf2, 0xa0, 0xb8, 0xeb, 0xda, 0xb0, 0x01, 0xe7, 0xf3, 0x88, 0x06,
+  0x4e, 0xd9, 0xda, 0x97, 0x20, 0x03, 0x09, 0x2a, 0x5e, 0x10, 0x9e, 0x0a,
+  0xee, 0x3e, 0x88, 0x4d, 0x05, 0xfd, 0xea, 0xfc, 0x09, 0xa8, 0xec, 0x30,
+  0xa0, 0x9b, 0x8e, 0xb0, 0x2c, 0x63, 0x36, 0x58, 0x0e, 0xff, 0x97, 0x4d,
+  0x92, 0xb9, 0xd1, 0x59, 0xdf, 0x8c, 0xc1, 0xd3, 0xde, 0x6b, 0x73, 0x70,
+  0xd6, 0xd6, 0xe9, 0x8e, 0xa8, 0x6c, 0xd4, 0x54, 0x5f, 0xd9, 0xc2, 0xe0,
+  0x9c, 0x59, 0xb3, 0xc9, 0x60, 0x4f, 0x5a, 0x42, 0x56, 0x2e, 0x39, 0xf3,
+  0xed, 0x96, 0x49, 0xfb, 0xc8, 0x0e, 0x76, 0x4b, 0x37, 0xb0, 0xe3, 0xce,
+  0xb3, 0xf3, 0xa3, 0xeb, 0xf4, 0x71, 0xdb, 0x76, 0xd4, 0x9b, 0x0a, 0x37,
+  0x05, 0x20, 0x74, 0x14, 0x8e, 0xc6, 0x44, 0x21, 0x68, 0x7a, 0x7a, 0x66,
+  0x5d, 0xca, 0x99, 0x9e, 0x92, 0xc8, 0xdf, 0xf8, 0xa6, 0x3b, 0xda, 0x93,
+  0x1a, 0xe1, 0x29, 0x55, 0xfb, 0x78, 0xec, 0xab, 0xab, 0xe2, 0x36, 0x0e,
+  0xc1, 0xf3, 0x9b, 0x44, 0x56, 0xb1, 0xc8, 0x2b, 0x7a, 0x1a, 0xd3, 0x61,
+  0x6b, 0x39, 0x62, 0x46, 0x33, 0xc2, 0x31, 0x6c, 0xfd, 0x11, 0x36, 0xa7,
+  0xf7, 0x5b, 0xd9, 0x73, 0xde, 0x37, 0x61, 0x0d, 0x2e, 0x0c, 0x94, 0xa0,
+  0x3d, 0x31, 0x2e, 0x06, 0xc0, 0x88, 0xdc, 0xdd, 0x45, 0xdc, 0x43, 0x9a,
+  0x6f, 0xd4, 0x00, 0x51, 0xd0, 0xd2, 0x8d, 0x40, 0xbd, 0x2f, 0xdc, 0xe4,
+  0xf1, 0x5e, 0x97, 0x36, 0x6f, 0xf9, 0x96, 0x3b, 0x96, 0x26, 0x66, 0xc9,
+  0x4b, 0xf6, 0xab, 0xcd, 0x0b, 0xc4, 0xc2, 0xbd, 0x24, 0x84, 0xde, 0x49,
+  0x5a, 0x37, 0x6a, 0xe9, 0x1c, 0x42, 0x7a, 0x57, 0x35, 0x7d, 0x8a, 0x1c,
+  0xaa, 0x7f, 0x9f, 0x65, 0x29, 0x01, 0x11, 0xa5, 0x26, 0x86, 0x40, 0x64,
+  0xd6, 0x61, 0x23, 0x1a, 0x16, 0x1f, 0x35, 0x54, 0xf7, 0xae, 0x6a, 0xd8,
+  0x05, 0x54, 0x62, 0xde, 0xd2, 0x4e, 0x1d, 0xe2, 0xda, 0x26, 0xa0, 0x22,
+  0x51, 0x48, 0xdf, 0x69, 0xa4, 0xa2, 0x65, 0x1b, 0x0a, 0x1e, 0xc2, 0xda,
+  0x4c, 0x52, 0x5d, 0xfb, 0xd6, 0x55, 0x37, 0x9a, 0x16, 0x35, 0xab, 0x34,
+  0x88, 0x63, 0x7b, 0x93, 0x9a, 0x5b, 0x08, 0xe6, 0x02, 0x0a, 0x58, 0x32,
+  0x5e, 0xaf, 0xea, 0x11, 0x2a, 0x8e, 0xb3, 0x7c, 0x8c, 0x93, 0xc4, 0xa1,
+  0xd4, 0xf1, 0xdb, 0x66, 0x88, 0x3a, 0x84, 0x7c, 0xef, 0x71, 0x25, 0x65,
+  0xcd, 0x99, 0x3b, 0x8f, 0x6c, 0x82, 0xba, 0xe1, 0x9b, 0xc0, 0x9f, 0x88,
+  0xe6, 0xe5, 0x77, 0x38, 0x70, 0x49, 0x85, 0x57, 0x0c, 0xaf, 0x98, 0x08,
+  0xd9, 0x60, 0xd6, 0x65, 0x71, 0x93, 0xab, 0xe5, 0xf8, 0xe1, 0x06, 0xd7,
+  0x04, 0xc7, 0x75, 0x50, 0x54, 0x54, 0xdb, 0x0a, 0x44, 0x82, 0xcf, 0x4b,
+  0x17, 0xe3, 0x45, 0xbc, 0x12, 0x73, 0xa3, 0x91, 0x25, 0xd1, 0xda, 0xa9,
+  0xa7, 0xc8, 0x8e, 0x83, 0xd5, 0x5e, 0xb7, 0x92, 0x46, 0xdc, 0x8b, 0xdc,
+  0x47, 0xbe, 0x7c, 0x00, 0xa8, 0x1d, 0x3e, 0x68, 0xfc, 0x39, 0x24, 0x8c,
+  0xa8, 0xa2, 0x18, 0xfb, 0xaa, 0xcd, 0x05, 0x06, 0x0f, 0x05, 0xb3, 0x9b,
+  0x5d, 0x94, 0xd4, 0xf6, 0xd2, 0x98, 0xb3, 0xd1, 0x6f, 0x42, 0x5d, 0x2b,
+  0x1e, 0xd9, 0x69, 0x03, 0x63, 0x92, 0xa6, 0xc8, 0x59, 0x85, 0x82, 0x0b,
+  0x6c, 0x6e, 0xfa, 0x0a, 0x05, 0xc2, 0x20, 0x70, 0x52, 0x66, 0x82, 0xd6,
+  0x3c, 0x1c, 0x83, 0x09, 0x10, 0x08, 0xbd, 0x36, 0x7c, 0x64, 0x98, 0x24,
+  0x31, 0x43, 0x6b, 0x75, 0x3c, 0xc3, 0xcf, 0x99, 0x18, 0x06, 0x37, 0xd7,
+  0x30, 0xc5, 0x95, 0xb2, 0x9f, 0xa1, 0x16, 0x06, 0x2c, 0x66, 0x9d, 0xe6,
+  0x3a, 0xda, 0xbf, 0xd0, 0xf4, 0x9d, 0x69, 0xb7, 0x2f, 0x98, 0xa3, 0xeb,
+  0xb3, 0xff, 0x92, 0xc7, 0x49, 0xa5, 0xf7, 0x98, 0x13, 0x7e, 0x46, 0x40,
+  0x20, 0x33, 0x1f, 0x6e, 0x3f, 0x23, 0xb8, 0xe9, 0xc1, 0x8e, 0x23, 0x54,
+  0x20, 0xc0, 0xe6, 0x86, 0x3b, 0x39, 0xd5, 0xc9, 0x15, 0x23, 0x96, 0x40,
+  0x2b, 0x9c, 0x1e, 0x35, 0x98, 0x05, 0xe1, 0x25, 0x90, 0xa2, 0xd3, 0x9e,
+  0xb2, 0x22, 0x98, 0x2d, 0xd8, 0x80, 0x14, 0xb8, 0xa1, 0x4a, 0x45, 0x49,
+  0x63, 0x4a, 0x6a, 0x3e, 0x06, 0xc0, 0x0a, 0xf8, 0xa5, 0x55, 0x05, 0x62,
+  0xa7, 0xd7, 0xd6, 0x1a, 0x89, 0x96, 0x45, 0xa3, 0xdd, 0xe6, 0x1f, 0x6d,
+  0x65, 0xc8, 0xd6, 0x23, 0xf3, 0x53, 0xc3, 0xa5, 0x9d, 0x8d, 0x97, 0xcf,
+  0x1e, 0x32, 0x39, 0xb8, 0xcd, 0xd0, 0x93, 0x8e, 0x7f, 0xf2, 0xb8, 0xf3,
+  0x3f, 0x07, 0xdf, 0x64, 0xd1, 0xf9, 0xe7, 0xde, 0x21, 0xd5, 0x75, 0xd5,
+  0x6e, 0x49, 0x33, 0x2f, 0x69, 0xc1, 0xa6, 0xfe, 0x04, 0x95, 0x9f, 0xa6,
+  0xaf, 0x79, 0x89, 0xf3, 0xcb, 0x8e, 0xca, 0x5f, 0x72, 0x7a, 0x9f, 0x72,
+  0x78, 0x93, 0xa7, 0x9c, 0xde, 0xe4, 0x0f, 0x3a, 0xbe, 0xa6, 0xbc, 0xe7,
+  0xb1, 0x87, 0x57, 0xb9, 0xe6, 0x7f, 0x8f, 0x6f, 0xf0, 0xf8, 0x26, 0xcb,
+  0x9f, 0xdf, 0xdd, 0x78, 0x90, 0x54, 0x1e, 0xc6, 0xbf, 0x5f, 0xdd, 0x84,
+  0xb6, 0x26, 0x0e, 0xbc, 0x6e, 0xfa, 0xfe, 0xb4, 0x4c, 0x7b, 0x29, 0x78,
+  0xe1, 0x7e, 0x0f, 0xc1, 0xac, 0xd8, 0x42, 0x59, 0x62, 0xd7, 0x6c, 0xa3,
+  0xe2, 0x99, 0x2e, 0x1c, 0xd9, 0x8b, 0xef, 0x68, 0xb7, 0x45, 0x9b, 0x3b,
+  0xd3, 0x13, 0xf5, 0x4c, 0xd7, 0x74, 0x09, 0x7a, 0xd3, 0x34, 0xa3, 0x53,
+  0x0f, 0x8a, 0x21, 0xb0, 0x6d, 0xf4, 0x55, 0xbf, 0x1f, 0x1f, 0x9c, 0x1d,
+  0x47, 0x0f, 0x78, 0x31, 0xf0, 0x15, 0x67, 0x8e, 0xd9, 0xd2, 0xba, 0x57,
+  0x83, 0xaa, 0xe6, 0x9f, 0x4b, 0xec, 0xcb, 0x83, 0xe5, 0x4a, 0xcd, 0x35,
+  0x82, 0x09, 0xd1, 0xde, 0xbc, 0x83, 0x2a, 0x6a, 0x94, 0x25, 0xeb, 0xd2,
+  0xd5, 0x52, 0x24, 0x23, 0x54, 0xfb, 0x24, 0x12, 0x62, 0x01, 0xfa, 0x6d,
+  0x51, 0xea, 0xd2, 0x03, 0x5e, 0xb2, 0x0d, 0x02, 0x9a, 0x13, 0x18, 0xf9,
+  0xe6, 0xcb, 0x67, 0x9b, 0x70, 0x66, 0xef, 0x39, 0x67, 0x47, 0x5e, 0xde,
+  0xe9, 0x6d, 0xaf, 0xef, 0xf4, 0x76, 0x50, 0x26, 0x4b, 0xb6, 0x2f, 0x15,
+  0xbc, 0xca, 0xf0, 0xe1, 0x0c, 0x18, 0x16, 0xcd, 0xef, 0x8e, 0x0e, 0x23,
+  0x2e, 0x75, 0xa5, 0xe6, 0x39, 0x2d, 0x4f, 0x89, 0x03, 0x06, 0x21, 0x8c,
+  0xc2, 0x47, 0xc9, 0xf3, 0x46, 0x7a, 0xe4, 0x50, 0x0b, 0x9b, 0x50, 0x75,
+  0x73, 0x33, 0x11, 0x94, 0xb6, 0x6c, 0x6c, 0x2b, 0x42, 0x3a, 0xfc, 0xca,
+  0xc7, 0x18, 0x72, 0x48, 0xe2, 0x10, 0xec, 0x89, 0x5c, 0xe0, 0x4c, 0xea,
+  0x09, 0xac, 0xd0, 0x1e, 0x46, 0x1d, 0x04, 0x73, 0x5c, 0x0c, 0x36, 0x1a,
+  0xe9, 0x79, 0x12, 0x44, 0xd0, 0x1b, 0x9f, 0x54, 0x15, 0x95, 0xc3, 0x89,
+  0x31, 0xfa, 0x2f, 0xfe, 0x3e, 0xca, 0x7b, 0xcb, 0x7a, 0x2c, 0xb2, 0x7a,
+  0x91, 0x63, 0xc2, 0xac, 0x96, 0x8f, 0xba, 0xf8, 0x23, 0xe6, 0x2d, 0x48,
+  0x9c, 0x10, 0xed, 0x4b, 0x8b, 0xb9, 0x09, 0xa5, 0x0f, 0x7b, 0x15, 0x9c,
+  0xa1, 0xcc, 0xf8, 0x81, 0x9f, 0xe9, 0xe8, 0x01, 0x7f, 0x1c, 0x7e, 0x8c,
+  0xc7, 0x2a, 0xd3, 0x64, 0x2c, 0xb3, 0x72, 0xbe, 0xe3, 0xff, 0x12, 0xa9,
+  0xc7, 0xa9, 0xb2, 0x7e, 0xa5, 0xa5, 0x04, 0x3c, 0x9d, 0x29, 0x18, 0x8f,
+  0xc0, 0x24, 0xa9, 0x87, 0xda, 0x63, 0x08, 0xee, 0xcd, 0x6c, 0x0a, 0x32,
+  0xff, 0x49, 0xbe, 0x95, 0x20, 0xbd, 0xd8, 0xad, 0xf3, 0xcb, 0x39, 0x2a,
+  0x28, 0xf5, 0xc5, 0x28, 0x42, 0xd9, 0x89, 0x24, 0x51, 0xe9, 0xb1, 0x40,
+  0xdc, 0x4b, 0x09, 0x51, 0x3b, 0x08, 0x16, 0x90, 0xf5, 0x73, 0x06, 0x43,
+  0x08, 0x55, 0x2b, 0xd3, 0x95, 0x8d, 0xdb, 0xa5, 0x31, 0xd9, 0x45, 0x64,
+  0x7a, 0x11, 0x61, 0x68, 0xc0, 0xe6, 0x1c, 0xe8, 0xb0, 0x82, 0xe1, 0xb6,
+  0xd6, 0xbe, 0x0e, 0x42, 0x57, 0x5c, 0x5d, 0xc8, 0xd5, 0xf0, 0xe0, 0xfd,
+  0xf3, 0x6b, 0x5d, 0x09, 0x72, 0x29, 0xfd, 0x96, 0x77, 0x82, 0x0e, 0xf9,
+  0x14, 0x9d, 0x5c, 0x76, 0x2a, 0x5a, 0xa5, 0x72, 0x0e, 0x81, 0xd6, 0x53,
+  0xfd, 0xd9, 0x35, 0x91, 0x43, 0x85, 0x11, 0xc4, 0xdc, 0x6b, 0xbd, 0xe8,
+  0x21, 0x7b, 0x3e, 0xa0, 0xbf, 0x7b, 0xd7, 0xcd, 0xc2, 0xb6, 0x6b, 0xff,
+  0xa3, 0x4c, 0x69, 0xde, 0xe3, 0x38, 0xd0, 0x7c, 0xc2, 0xf4, 0x9c, 0x5c,
+  0xa4, 0x97, 0x73, 0xa7, 0xd6, 0xff, 0x35, 0xab, 0xff, 0xa7, 0xeb, 0xe5,
+  0xce, 0xb9, 0x6c, 0x74, 0x43, 0xdc, 0x7b, 0xbe, 0xb1, 0xb1, 0xf1, 0x28,
+  0x79, 0xfd, 0xe0, 0x79, 0x6e, 0x14, 0x4f, 0xb5, 0x4f, 0x74, 0x2c, 0x25,
+  0xd3, 0x01, 0x73, 0x37, 0x8c, 0xc2, 0x30, 0x7e, 0xd8, 0x31, 0xc7, 0x07,
+  0x99, 0xb2, 0x1b, 0x18, 0x4c, 0x83, 0x6d, 0x71, 0x9f, 0x9f, 0x1e, 0x38,
+  0xcc, 0xff, 0x63, 0x2c, 0xeb, 0xdd, 0xe8, 0x09, 0x96, 0xf5, 0xee, 0xff,
+  0x1a, 0xd6, 0xff, 0x72, 0x07, 0x78, 0x3e, 0x3b, 0xac, 0x62, 0xa2, 0x3b,
+  0x56, 0x22, 0xc0, 0x7f, 0xd5, 0xa4, 0x5e, 0xb3, 0x3a, 0x1d, 0x42, 0x1c,
+  0x31, 0xed, 0x8e, 0xcf, 0xbe, 0x79, 0xd6, 0x25, 0x30, 0xd7, 0xbe, 0x8f,
+  0x6b, 0x7c, 0xf2, 0xea, 0xe0, 0xac, 0xf7, 0x14, 0x29, 0xb1, 0xb4, 0x70,
+  0xf8, 0x1b, 0x79, 0xeb, 0xa7, 0x69, 0x3a, 0x8a, 0x39, 0x01, 0x63, 0x9f,
+  0xfe, 0x11, 0xcc, 0x6d, 0x52, 0xb4, 0x5b, 0xe2, 0x79, 0xcc, 0xcb, 0x90,
+  0xa4, 0x33, 0x27, 0x47, 0x8e, 0x5e, 0x06, 0x35, 0x2b, 0x17, 0x78, 0x6c,
+  0x2c, 0x74, 0xaa, 0x7c, 0x1f, 0x5c, 0x91, 0x8f, 0xd6, 0x18, 0x7c, 0x89,
+  0xbe, 0x4c, 0x5c, 0x26, 0xe9, 0x82, 0x28, 0x0e, 0x2e, 0xb1, 0x57, 0x85,
+  0xf6, 0xc1, 0x72, 0x9f, 0x21, 0x39, 0xe1, 0x37, 0x8e, 0xe6, 0x03, 0x74,
+  0x6f, 0x97, 0xc2, 0xb9, 0x23, 0xdc, 0xdb, 0x64, 0x7b, 0x03, 0x43, 0x73,
+  0x82, 0xc2, 0xf9, 0x87, 0xcb, 0x72, 0x87, 0xd2, 0xdb, 0x1b, 0x1b, 0xcd,
+  0x09, 0x3f, 0x94, 0x7b, 0xd6, 0x5e, 0xe0, 0xbc, 0x0c, 0xcb, 0x85, 0x9b,
+  0xe5, 0xce, 0xa0, 0xb1, 0x47, 0x98, 0xcc, 0xc4, 0x09, 0x1b, 0x6d, 0xa1,
+  0xe8, 0xee, 0x00, 0x27, 0x13, 0x32, 0x45, 0xcc, 0x27, 0x9a, 0xfb, 0x75,
+  0x7c, 0xe1, 0xbe, 0xe0, 0x79, 0x5e, 0x18, 0x3a, 0x48, 0x5a, 0xa1, 0x88,
+  0xb1, 0xd9, 0x98, 0x95, 0xcd, 0xe5, 0xdc, 0xd4, 0x28, 0x9b, 0x45, 0x50,
+  0xf8, 0x9b, 0x9f, 0x90, 0xee, 0xbc, 0xbb, 0xb8, 0x42, 0xad, 0xc8, 0xeb,
+  0x12, 0xbb, 0xb6, 0xdb, 0x42, 0x1c, 0x96, 0x32, 0xb3, 0xca, 0xc1, 0x84,
+  0xc0, 0x22, 0x4c, 0x84, 0x44, 0x88, 0x88, 0x6a, 0x5e, 0x5e, 0x99, 0x48,
+  0xac, 0x28, 0xad, 0x87, 0x3d, 0xcb, 0x3d, 0xd4, 0x42, 0x67, 0x88, 0x85,
+  0x8a, 0x25, 0x27, 0x82, 0xc1, 0x05, 0xd0, 0xe5, 0xaa, 0x47, 0xea, 0x29,
+  0x30, 0xc7, 0xa7, 0xa5, 0x59, 0x91, 0x73, 0x00, 0x25, 0xfe, 0x27, 0xf1,
+  0x66, 0x5c, 0x61, 0x22, 0x07, 0x1a, 0xf9, 0xf1, 0x20, 0x4d, 0xbc, 0x0a,
+  0x64, 0x1f, 0x31, 0x55, 0x1d, 0x83, 0x46, 0x2a, 0x26, 0x25, 0xd7, 0x84,
+  0x20, 0x2f, 0x02, 0x1b, 0xd6, 0xf7, 0x58, 0x37, 0x75, 0x2b, 0xd8, 0x45,
+  0xed, 0xeb, 0xae, 0x7f, 0xb2, 0x4d, 0x9b, 0x77, 0x7e, 0xd2, 0x77, 0x1b,
+  0x13, 0x57, 0x94, 0x98, 0x45, 0x98, 0x5a, 0x5f, 0x1e, 0x1d, 0xf4, 0xcf,
+  0x7b, 0x21, 0x22, 0xfa, 0xc0, 0x1f, 0x16, 0x65, 0x0f, 0xbb, 0x43, 0x8c,
+  0x93, 0x7b, 0xec, 0x0f, 0x25, 0x50, 0x5d, 0x38, 0x37, 0x9e, 0x9a, 0x0e,
+  0x8e, 0xfe, 0x0b, 0x06, 0xd3, 0xa0, 0xf4, 0x70, 0xbf, 0x09, 0x09, 0xec,
+  0x8e, 0x94, 0x89, 0x99, 0x02, 0x35, 0x62, 0x5e, 0x2a, 0x32, 0x29, 0xc6,
+  0x98, 0x55, 0x86, 0xdf, 0x69, 0xfa, 0xaa, 0x16, 0x80, 0x76, 0xba, 0xf3,
+  0x1f, 0x23, 0xd2, 0x9a, 0xb4, 0xa4, 0xc1, 0x41, 0x94, 0x58, 0x9c, 0x4e,
+  0x64, 0x60, 0x5f, 0x02, 0xc5, 0x82, 0x84, 0xd9, 0x4c, 0x58, 0xe9, 0xd5,
+  0xb5, 0xa6, 0xec, 0x0c, 0x6b, 0xc2, 0x21, 0x4c, 0x96, 0x4f, 0x20, 0x68,
+  0xee, 0xf6, 0x63, 0x78, 0x63, 0x56, 0x17, 0xf1, 0x70, 0x8c, 0x79, 0xa2,
+  0x31, 0x36, 0xb7, 0x0f, 0xf8, 0x0d, 0xdc, 0xc6, 0xab, 0x4d, 0xa0, 0x4f,
+  0x02, 0x36, 0x61, 0x89, 0xce, 0x80, 0x07, 0x11, 0x8f, 0x04, 0xff, 0x85,
+  0xa1, 0x40, 0x91, 0xf4, 0x15, 0xd0, 0x5a, 0x1c, 0x2f, 0x4d, 0x43, 0xbc,
+  0xcb, 0x4e, 0x07, 0x49, 0x74, 0xb6, 0xed, 0x64, 0x14, 0x38, 0x49, 0xf8,
+  0x34, 0x84, 0x3e, 0xe4, 0xf6, 0xc4, 0x74, 0x7a, 0x60, 0xf6, 0xd1, 0x97,
+  0x85, 0xcd, 0x85, 0x57, 0x19, 0x2f, 0x8e, 0xf0, 0x0e, 0x04, 0x20, 0x95,
+  0x76, 0x08, 0x56, 0xd5, 0x1e, 0x6e, 0x80, 0x2d, 0x55, 0xc1, 0xd2, 0x3d,
+  0x03, 0x59, 0x4a, 0x69, 0xb8, 0xcf, 0x7b, 0xcf, 0x9f, 0x03, 0x1b, 0x33,
+  0x9e, 0x5a, 0xd2, 0x84, 0x06, 0x25, 0x34, 0x9c, 0x8c, 0xf3, 0x04, 0x84,
+  0x40, 0xa1, 0xeb, 0x4f, 0xe7, 0xd1, 0x13, 0x5d, 0xd0, 0x85, 0xe7, 0x4b,
+  0x72, 0xa7, 0xad, 0xf4, 0xbd, 0xd2, 0x8c, 0x68, 0x84, 0x9b, 0xef, 0x69,
+  0x6b, 0xb4, 0xbe, 0xca, 0x12, 0xb9, 0xe5, 0xcc, 0x50, 0x3c, 0xb1, 0xd3,
+  0x7e, 0x63, 0xa8, 0xaa, 0x26, 0xac, 0xc6, 0xda, 0x93, 0x99, 0x02, 0xdf,
+  0x90, 0x70, 0xa7, 0xdf, 0xe1, 0x7d, 0x04, 0xcb, 0x19, 0x8b, 0x0f, 0x19,
+  0x77, 0xd4, 0x00, 0xda, 0x3e, 0x89, 0x0b, 0x5b, 0x7c, 0xb5, 0x64, 0x1e,
+  0x0b, 0x3b, 0xde, 0x42, 0x03, 0xf5, 0x1a, 0x15, 0x48, 0xcf, 0x5b, 0xbe,
+  0x12, 0x78, 0x81, 0xa0, 0x4b, 0x11, 0x6e, 0xc9, 0xc3, 0x5f, 0x91, 0xad,
+  0x58, 0x5b, 0x20, 0xf6, 0x34, 0x95, 0xd6, 0x25, 0x20, 0x8e, 0x36, 0x0c,
+  0x22, 0x5f, 0x45, 0xc3, 0xab, 0x14, 0xd4, 0xbb, 0xde, 0x53, 0x84, 0x42,
+  0x9b, 0xf7, 0x5c, 0x11, 0xf1, 0xeb, 0x0b, 0x05, 0x43, 0x94, 0x65, 0x13,
+  0xb7, 0x76, 0x7c, 0x02, 0x03, 0xcf, 0x8e, 0x42, 0x5d, 0x8a, 0x09, 0x36,
+  0x87, 0xf0, 0x79, 0x18, 0xe9, 0xe6, 0x3d, 0xb7, 0x71, 0xc6, 0xa5, 0xaf,
+  0xc3, 0x85, 0x60, 0x2a, 0xda, 0x6d, 0x9b, 0x1f, 0x74, 0x1d, 0x62, 0xfe,
+  0x8e, 0xef, 0x46, 0xd1, 0x66, 0x6d, 0xf6, 0xd9, 0x56, 0x8f, 0x57, 0xa3,
+  0xba, 0x6b, 0x73, 0x07, 0xf9, 0xca, 0x42, 0x55, 0x03, 0xcf, 0x30, 0x66,
+  0xf5, 0xa7, 0x08, 0xb2, 0x67, 0xae, 0xa4, 0x38, 0xbe, 0xa8, 0xa7, 0x66,
+  0x65, 0x4f, 0xa1, 0x2e, 0xbe, 0xe7, 0xe3, 0xd7, 0x78, 0x64, 0x43, 0xfa,
+  0x83, 0x60, 0xae, 0x6a, 0x84, 0x77, 0x2a, 0x3c, 0x59, 0xeb, 0x30, 0xe8,
+  0x02, 0x0e, 0xcd, 0x2e, 0x73, 0x3c, 0xcf, 0x4b, 0x31, 0xa8, 0xa4, 0x44,
+  0x63, 0x05, 0xb3, 0xd4, 0x73, 0x8d, 0x66, 0x94, 0xdc, 0x3d, 0xc9, 0x28,
+  0x03, 0x66, 0xbd, 0xb8, 0xb8, 0x20, 0xbc, 0x31, 0x60, 0xff, 0xba, 0xcc,
+  0x06, 0xb3, 0x40, 0x34, 0x86, 0x7a, 0xf9, 0x59, 0x18, 0x15, 0xfe, 0xa6,
+  0xfd, 0x06, 0x23, 0x3a, 0x3d, 0x8d, 0x78, 0x6d, 0xba, 0x2c, 0x5b, 0x86,
+  0xb8, 0xe1, 0xf1, 0xe8, 0x1c, 0x8e, 0x3c, 0x27, 0xbc, 0x0b, 0xba, 0xab,
+  0x16, 0x32, 0xa5, 0x5f, 0xce, 0x04, 0x2c, 0x27, 0x1d, 0xd5, 0xa9, 0xef,
+  0x0b, 0x9d, 0xe4, 0xc7, 0x70, 0xa7, 0xb2, 0xa7, 0xaf, 0x28, 0x11, 0xb3,
+  0x36, 0x85, 0x9e, 0xb2, 0xa1, 0x68, 0xc4, 0x92, 0xa6, 0x65, 0x19, 0x8c,
+  0x7a, 0xc8, 0x21, 0x42, 0x8d, 0xa7, 0xd9, 0xc0, 0x6d, 0x30, 0x06, 0xf5,
+  0x73, 0x4c, 0x00, 0xa9, 0x69, 0x3e, 0x2c, 0xef, 0xa7, 0x6e, 0x27, 0xf5,
+  0xd1, 0x2f, 0x39, 0x15, 0xe4, 0xdf, 0xc7, 0xc4, 0x64, 0x75, 0xe7, 0x04,
+  0x80, 0x98, 0xc9, 0xa9, 0x52, 0xbb, 0x50, 0x2f, 0xe8, 0x96, 0xb2, 0x1d,
+  0x84, 0xb0, 0x56, 0x5d, 0x80, 0x89, 0x2f, 0x66, 0xd4, 0x33, 0xc6, 0x00,
+  0xb7, 0x2c, 0xcd, 0x30, 0xc0, 0x89, 0xd3, 0xed, 0xb9, 0x48, 0x51, 0x5b,
+  0x5d, 0x7e, 0xea, 0x66, 0xcb, 0x3b, 0x5d, 0xfd, 0x93, 0xa6, 0xe4, 0x57,
+  0x47, 0x14, 0xac, 0x1a, 0xc4, 0xac, 0x02, 0xa3, 0x58, 0xfe, 0xb8, 0xd9,
+  0xea, 0x4a, 0xee, 0x5e, 0xa0, 0x55, 0x0c, 0x95, 0x1e, 0xe6, 0x5a, 0xde,
+  0x60, 0xd5, 0x04, 0xc4, 0xed, 0x2a, 0x67, 0x43, 0xd5, 0x4c, 0xf8, 0xb4,
+  0x62, 0x35, 0x22, 0x8e, 0x17, 0x31, 0x20, 0xcc, 0x28, 0xf5, 0x4a, 0xa9,
+  0x6d, 0xab, 0x35, 0x1c, 0x81, 0xb9, 0x8b, 0x8a, 0xe4, 0x30, 0x38, 0xfb,
+  0x6c, 0xf3, 0xf9, 0xb3, 0xb5, 0x27, 0x50, 0x0a, 0x3e, 0xf8, 0xc8, 0x5b,
+  0x97, 0x39, 0x10, 0x81, 0xf4, 0xe0, 0x79, 0x04, 0x83, 0x14, 0xde, 0xc3,
+  0x7f, 0x6e, 0xf5, 0x5c, 0xaa, 0x2a, 0x4b, 0x55, 0xda, 0x79, 0xca, 0x03,
+  0xa2, 0xca, 0x47, 0xc8, 0x48, 0x48, 0x1f, 0xd5, 0x1b, 0x91, 0xc1, 0x06,
+  0xb3, 0x6c, 0x4c, 0x25, 0x1a, 0x2a, 0xaf, 0x89, 0xfd, 0x7d, 0x3f, 0x61,
+  0x9b, 0xce, 0xec, 0x37, 0x8c, 0xb7, 0x75, 0x02, 0x6c, 0x5f, 0xc4, 0x9b,
+  0xf8, 0xef, 0x7a, 0x5c, 0xdd, 0x6c, 0xca, 0x4c, 0xe9, 0xef, 0xbd, 0xe6,
+  0xbf, 0xb6, 0x1c, 0xa9, 0x60, 0x07, 0xf8, 0xe5, 0x7c, 0xb1, 0xfd, 0x2b,
+  0xf3, 0xc5, 0xf6, 0x13, 0xf9, 0xe2, 0xf9, 0xee, 0xb3, 0x17, 0x4f, 0xe2,
+  0x8b, 0xed, 0x5f, 0x8b, 0x2f, 0x9c, 0x6d, 0xf9, 0x63, 0xf8, 0xc2, 0x61,
+  0xcc, 0xa7, 0xf1, 0x85, 0xa6, 0xc4, 0x06, 0xdb, 0x26, 0xbe, 0x57, 0xe8,
+  0x08, 0xaa, 0x20, 0x43, 0xa0, 0x0c, 0xc6, 0xc8, 0x91, 0x77, 0x3c, 0xa0,
+  0x2e, 0x86, 0x87, 0x67, 0xe4, 0x3e, 0x74, 0xb8, 0x04, 0xdc, 0xb7, 0x16,
+  0x09, 0x9c, 0x9c, 0x13, 0xd3, 0x71, 0x02, 0xdc, 0xb2, 0x12, 0xaf, 0x68,
+  0xe4, 0x4c, 0x71, 0xff, 0x1c, 0x54, 0x0e, 0xce, 0x6c, 0xfe, 0xe3, 0x93,
+  0xd7, 0x7f, 0x6f, 0xbf, 0x07, 0x13, 0x59, 0x20, 0x52, 0xea, 0xbb, 0xfa,
+  0xe9, 0xa9, 0xcf, 0xbc, 0xfb, 0x4e, 0xfe, 0x7b, 0x93, 0x01, 0xee, 0x41,
+  0x23, 0x8a, 0xf9, 0x3b, 0xc1, 0x12, 0x95, 0xca, 0xd4, 0x0c, 0xb1, 0xed,
+  0xab, 0xb4, 0x1a, 0x14, 0x63, 0x24, 0x67, 0x8e, 0xa2, 0xe0, 0x7e, 0x9c,
+  0x8a, 0x9a, 0x85, 0x3b, 0x87, 0x5c, 0x8e, 0x9e, 0xee, 0x76, 0x3c, 0x95,
+  0x6a, 0xd7, 0xaa, 0x76, 0xee, 0x7a, 0x4f, 0x42, 0xda, 0xa0, 0xa4, 0x37,
+  0x26, 0x43, 0x81, 0xfa, 0x0a, 0xcc, 0xc8, 0x21, 0x17, 0xc9, 0x4d, 0x02,
+  0x0d, 0x06, 0xfe, 0xe5, 0x4b, 0x1a, 0x1a, 0x0b, 0x8a, 0x8f, 0x97, 0xd4,
+  0xed, 0x9e, 0xb5, 0xeb, 0x71, 0x40, 0x4a, 0x50, 0xc2, 0xba, 0xba, 0xee,
+  0x84, 0xa4, 0xa1, 0x1a, 0x92, 0x78, 0x6a, 0xe2, 0x23, 0xf5, 0x8c, 0x7c,
+  0x01, 0xca, 0xb2, 0xdc, 0x3c, 0x07, 0xf1, 0x25, 0x8e, 0x0e, 0x0d, 0x60,
+  0x2f, 0xfe, 0x96, 0x4a, 0xbd, 0x81, 0x52, 0xa1, 0x72, 0x71, 0x59, 0x02,
+  0xc7, 0x41, 0xec, 0xbb, 0x52, 0xb4, 0x24, 0xf3, 0xf0, 0x10, 0x27, 0xb0,
+  0xe6, 0xb6, 0xf6, 0xf3, 0x13, 0x54, 0x4d, 0x62, 0xef, 0xe9, 0x2b, 0x9c,
+  0xe8, 0x68, 0x36, 0x99, 0x6a, 0x23, 0x2f, 0xcc, 0x4c, 0x89, 0x33, 0x02,
+  0x8f, 0x55, 0x7c, 0x12, 0xa9, 0x2f, 0xc5, 0x58, 0x58, 0x08, 0x21, 0x1a,
+  0xe5, 0x84, 0x94, 0x69, 0x70, 0x44, 0x4a, 0x79, 0x4d, 0x9c, 0x02, 0x8a,
+  0x34, 0x74, 0x5c, 0x37, 0x9b, 0xe9, 0xf8, 0xd0, 0x8f, 0xa3, 0x74, 0x30,
+  0xbb, 0x54, 0xe4, 0x61, 0x03, 0x78, 0xd2, 0x3c, 0x4f, 0x54, 0xa0, 0x82,
+  0x3d, 0x19, 0xd2, 0x2e, 0xf7, 0x22, 0xcd, 0xef, 0x09, 0x32, 0xbe, 0xce,
+  0x2a, 0xdf, 0x0c, 0x19, 0x2e, 0x6f, 0x16, 0xcc, 0xd9, 0x65, 0x87, 0x1c,
+  0xf1, 0x9d, 0xec, 0xc4, 0x52, 0x42, 0xa1, 0x4d, 0xe8, 0x2e, 0x51, 0xd9,
+  0x8e, 0x4a, 0x72, 0xa2, 0xcd, 0x36, 0xbd, 0x05, 0xb9, 0x1a, 0x2d, 0xf3,
+  0xb8, 0x1e, 0x4e, 0xe3, 0x8b, 0x04, 0xdb, 0x08, 0x7a, 0xe8, 0x36, 0x52,
+  0xed, 0x26, 0x07, 0xea, 0xfc, 0xf0, 0x2c, 0x7a, 0x8d, 0x52, 0xf2, 0x14,
+  0x9e, 0x8c, 0x56, 0xe1, 0x36, 0x7f, 0xbe, 0xb3, 0xb9, 0xbd, 0xf4, 0x65,
+  0xee, 0x7e, 0x6f, 0x59, 0xcb, 0xfe, 0xa5, 0x3f, 0xf5, 0xbc, 0x08, 0x15,
+  0x19, 0x9f, 0xcf, 0xca, 0x5c, 0x3b, 0x38, 0xc0, 0xbc, 0x3f, 0xbe, 0x3b,
+  0x7d, 0x75, 0x74, 0x72, 0xf0, 0x37, 0x03, 0x93, 0xdd, 0x77, 0x3b, 0x83,
+  0xa7, 0x49, 0x75, 0xff, 0xb1, 0x4a, 0x61, 0x46, 0x35, 0x76, 0x07, 0x0f,
+  0xb4, 0x07, 0xb7, 0x7d, 0xc1, 0x15, 0x5e, 0x9c, 0x2b, 0xbe, 0x17, 0xf4,
+  0x0a, 0x61, 0xd7, 0x19, 0xd2, 0x7b, 0xa3, 0x07, 0x37, 0xbe, 0x14, 0x7f,
+  0x71, 0xe7, 0x74, 0x7b, 0xda, 0x1c, 0xbc, 0xb5, 0x44, 0x5a, 0x1d, 0x89,
+  0xa8, 0xf3, 0xa0, 0xb5, 0x10, 0xc3, 0x29, 0x43, 0x7f, 0x8a, 0x48, 0x57,
+  0xac, 0x24, 0xbf, 0xb8, 0x68, 0x75, 0x87, 0x23, 0x5c, 0x1f, 0xaa, 0x31,
+  0x7f, 0xca, 0xb6, 0x08, 0x2d, 0x17, 0xbb, 0x60, 0x6b, 0x52, 0x57, 0xd2,
+  0x71, 0x9e, 0xd6, 0xb1, 0xac, 0x62, 0x1f, 0xfe, 0xfb, 0xd9, 0x4d, 0x32,
+  0xf6, 0xd0, 0x6c, 0x93, 0xaa, 0x32, 0xa7, 0xd2, 0x5c, 0x20, 0xf8, 0xa6,
+  0x39, 0xf3, 0x3d, 0x05, 0x0f, 0x4c, 0x47, 0xe6, 0x49, 0x10, 0x17, 0x7b,
+  0xde, 0x1d, 0x71, 0xfe, 0xb7, 0xb3, 0xa3, 0xcf, 0xf6, 0xf1, 0xfa, 0xf9,
+  0x1c, 0x01, 0x08, 0xaa, 0xc6, 0x6d, 0x44, 0x25, 0x35, 0xde, 0x8a, 0xbf,
+  0x7b, 0x75, 0xdc, 0x3f, 0x3b, 0x39, 0x3d, 0xfc, 0x6c, 0xff, 0x3b, 0xf4,
+  0x12, 0x80, 0xde, 0x72, 0xef, 0xbc, 0x6b, 0x7e, 0x16, 0x29, 0xd6, 0xb5,
+  0x0f, 0xb9, 0x7e, 0xf4, 0xed, 0xc7, 0xa3, 0x77, 0xdf, 0x7c, 0xb6, 0x7f,
+  0x93, 0x94, 0x5d, 0x5c, 0x1f, 0xbf, 0x8d, 0xd5, 0x7b, 0xf9, 0x4d, 0x56,
+  0x16, 0x39, 0xba, 0xdc, 0x23, 0xf8, 0x65, 0x86, 0xe7, 0x64, 0x49, 0x8a,
+  0xd7, 0xb2, 0xa6, 0x9b, 0x7a, 0x73, 0x63, 0x43, 0xc8, 0x32, 0x1f, 0x4c,
+  0xb8, 0x46, 0xcb, 0x76, 0x30, 0xbe, 0xae, 0xb2, 0x9f, 0xd3, 0x08, 0xe6,
+  0x33, 0x9e, 0xf9, 0xcd, 0x9d, 0xcf, 0x19, 0xfa, 0x1a, 0xa8, 0x8b, 0x7f,
+  0x8b, 0xbe, 0x3c, 0xf9, 0x1a, 0xbb, 0x74, 0x9a, 0x70, 0x32, 0x35, 0x4d,
+  0x02, 0x21, 0xfe, 0xf9, 0xee, 0xe6, 0xd6, 0x9a, 0x08, 0x7d, 0xc1, 0x0d,
+  0x1c, 0x00, 0x09, 0xae, 0x3d, 0x2c, 0xaa, 0x9f, 0x05, 0x9a, 0xa4, 0x0d,
+  0xbe, 0x69, 0x3b, 0x0a, 0x68, 0xf8, 0x8b, 0x6a, 0xb3, 0xa9, 0x20, 0x0e,
+  0x7e, 0x0b, 0xc7, 0x04, 0x8b, 0x96, 0xbd, 0xd0, 0x1f, 0x4d, 0x4a, 0xbd,
+  0xe3, 0x0e, 0xe8, 0x18, 0x4c, 0x47, 0xc2, 0x87, 0x0b, 0x55, 0xaf, 0xdf,
+  0x59, 0x95, 0x6b, 0x10, 0x7c, 0x73, 0x63, 0x6b, 0x27, 0xaa, 0xc3, 0xad,
+  0x9f, 0xda, 0x9b, 0x04, 0x1a, 0x91, 0x30, 0x72, 0x78, 0x7f, 0x9c, 0x64,
+  0x76, 0x82, 0x33, 0x29, 0xb8, 0xcb, 0x19, 0x51, 0x47, 0x4f, 0x80, 0xc2,
+  0x32, 0x2f, 0x56, 0x95, 0x26, 0x88, 0x0d, 0x8a, 0x90, 0x10, 0x1c, 0x3b,
+  0x72, 0x22, 0x43, 0xe3, 0xf4, 0x12, 0x9d, 0xe3, 0xa6, 0x29, 0xae, 0x69,
+  0x96, 0x11, 0x52, 0x12, 0x92, 0x21, 0x3a, 0x50, 0x08, 0x38, 0x92, 0xcb,
+  0x29, 0x19, 0xf8, 0x1e, 0x24, 0x8d, 0x09, 0x2b, 0x35, 0x66, 0x27, 0xe8,
+  0x68, 0xf3, 0x41, 0x24, 0x75, 0x6b, 0x5a, 0x44, 0x74, 0x4c, 0xc8, 0xa7,
+  0xec, 0x85, 0xa5, 0xab, 0xee, 0xc4, 0xe6, 0xcb, 0xad, 0xde, 0xe6, 0xb3,
+  0x17, 0x88, 0xcc, 0xb9, 0xa8, 0x3e, 0x7a, 0xe7, 0x45, 0xe3, 0xd6, 0xf8,
+  0x99, 0xe4, 0x17, 0xb6, 0x8f, 0xa1, 0x38, 0xf5, 0x3e, 0xfe, 0x75, 0x6e,
+  0x9f, 0x74, 0xf6, 0x08, 0x53, 0xb4, 0x83, 0xcd, 0x20, 0x22, 0xa4, 0xa9,
+  0x71, 0x9f, 0x14, 0x23, 0x56, 0x45, 0xb1, 0xfd, 0x83, 0xc5, 0xcd, 0x99,
+  0xd3, 0xe8, 0x89, 0xf3, 0x0e, 0x48, 0xaf, 0x85, 0xc7, 0x49, 0x0b, 0x41,
+  0x2e, 0x9d, 0x33, 0xa4, 0xc1, 0x30, 0xf2, 0x53, 0x6a, 0x08, 0x35, 0x07,
+  0x13, 0x58, 0xf7, 0x71, 0x20, 0xbc, 0x1b, 0x50, 0xf3, 0x00, 0xd2, 0x7c,
+  0xae, 0x49, 0x3a, 0x89, 0x69, 0x03, 0xc1, 0x20, 0x87, 0xa9, 0x74, 0x11,
+  0xa8, 0x02, 0x5d, 0x55, 0x30, 0x91, 0x35, 0x73, 0x5b, 0xa9, 0x70, 0xb6,
+  0x30, 0xea, 0x47, 0xa6, 0x21, 0x2e, 0xcc, 0xb3, 0x52, 0x73, 0x0f, 0x91,
+  0x82, 0xc8, 0xdd, 0xc6, 0x24, 0x09, 0xe6, 0x13, 0x52, 0x34, 0x9c, 0xf0,
+  0x4a, 0xa4, 0x8d, 0x32, 0xb5, 0x00, 0xa1, 0xa5, 0x89, 0x07, 0x96, 0x26,
+  0xb5, 0x3a, 0xc1, 0xb5, 0x48, 0x0b, 0xf9, 0xb0, 0x3d, 0x6b, 0x4c, 0x53,
+  0x36, 0xee, 0xcd, 0xa5, 0x0d, 0x83, 0xe2, 0x10, 0x78, 0x61, 0xc3, 0x7d,
+  0x4d, 0x37, 0x34, 0x7b, 0x7a, 0x5b, 0x24, 0xf1, 0x34, 0xc5, 0x3a, 0x58,
+  0x56, 0xdd, 0x47, 0xc7, 0x88, 0xd6, 0xf5, 0xba, 0xef, 0x2b, 0x8c, 0xd8,
+  0x08, 0x5b, 0xd2, 0xac, 0xc6, 0x6b, 0x06, 0xda, 0x99, 0x10, 0x55, 0x98,
+  0x37, 0x02, 0x1d, 0x17, 0x22, 0xd3, 0x00, 0xda, 0x34, 0x1d, 0xe2, 0x70,
+  0xad, 0xa4, 0xb9, 0xa4, 0xc2, 0x14, 0xf8, 0xb5, 0x75, 0x86, 0x46, 0x52,
+  0x79, 0x88, 0x46, 0xb6, 0xd7, 0x85, 0xa0, 0x35, 0x56, 0x9e, 0xde, 0xba,
+  0x63, 0x59, 0x9b, 0xc8, 0x8c, 0xf7, 0x47, 0xf7, 0x82, 0xfd, 0x39, 0xea,
+  0x7c, 0x0b, 0xc3, 0x6f, 0x6c, 0xc2, 0xbe, 0x4d, 0xa3, 0xad, 0x8d, 0xad,
+  0xcd, 0x68, 0x73, 0x6b, 0x6f, 0xf3, 0xc5, 0xde, 0xc6, 0xc6, 0x12, 0x38,
+  0xfb, 0x30, 0x4a, 0xfc, 0xab, 0x0c, 0x43, 0x87, 0x77, 0x71, 0x68, 0xb9,
+  0x1e, 0x57, 0x88, 0x22, 0x13, 0xed, 0x7f, 0x73, 0xf4, 0xbe, 0x7f, 0x7c,
+  0xfa, 0xee, 0xf3, 0xa0, 0xd7, 0x4d, 0x7e, 0x89, 0xbb, 0x95, 0xc1, 0xa1,
+  0x30, 0xf0, 0x56, 0x36, 0x94, 0x8b, 0x2e, 0x7a, 0x75, 0x15, 0xd3, 0x29,
+  0x05, 0x15, 0x05, 0x1f, 0x69, 0xb3, 0xc8, 0x70, 0x98, 0x4e, 0x6b, 0x06,
+  0xc1, 0x91, 0xc7, 0x4d, 0x52, 0x12, 0xc5, 0xd6, 0x22, 0xf6, 0xfc, 0x6c,
+  0x74, 0xf5, 0x6f, 0x9b, 0xe6, 0x6f, 0x5b, 0xfe, 0x29, 0xe6, 0x5f, 0x6c,
+  0xcf, 0x43, 0x25, 0x71, 0xdd, 0xfe, 0x15, 0x23, 0x9b, 0x69, 0xdf, 0x25,
+  0x98, 0x6f, 0xb7, 0xc1, 0x1a, 0x8c, 0xa2, 0x87, 0x8d, 0x49, 0xd3, 0x0b,
+  0xaf, 0xe2, 0x19, 0x9b, 0x99, 0x8a, 0xee, 0xc0, 0x06, 0x48, 0x15, 0xfd,
+  0xf5, 0xc3, 0xf1, 0x61, 0xcc, 0x91, 0x40, 0x12, 0x9c, 0xeb, 0x70, 0x26,
+  0x4d, 0x62, 0x8c, 0x37, 0xa1, 0x70, 0x3a, 0xbd, 0x93, 0x3c, 0x3a, 0x9b,
+  0x32, 0x94, 0x12, 0x62, 0xf9, 0x33, 0xc4, 0xb0, 0x4b, 0xd1, 0xf6, 0x70,
+  0x98, 0xb3, 0xd1, 0x78, 0x11, 0x1e, 0xbe, 0xd9, 0x74, 0xa0, 0x1b, 0xcc,
+  0x73, 0x9b, 0xa1, 0xe7, 0x36, 0xfd, 0xe7, 0xb6, 0x42, 0xcf, 0x6d, 0xf9,
+  0xcf, 0x6d, 0x87, 0x9e, 0x73, 0x36, 0xc0, 0x3f, 0x20, 0x7a, 0x9d, 0x09,
+  0xa3, 0xe1, 0xa7, 0x16, 0xb1, 0xb0, 0xf7, 0xf8, 0xb6, 0x75, 0x07, 0x2e,
+  0xe4, 0xe5, 0x86, 0x1b, 0xd4, 0x70, 0x91, 0x71, 0x2c, 0x76, 0x9d, 0x61,
+  0x5c, 0x1f, 0xe3, 0x76, 0xcf, 0xf9, 0x9a, 0x53, 0x9e, 0xda, 0x72, 0x92,
+  0x2e, 0xe7, 0x16, 0x95, 0x9b, 0xd8, 0x69, 0x08, 0x18, 0x30, 0x41, 0xc7,
+  0xd5, 0xe6, 0x76, 0x3c, 0xcc, 0xa6, 0x57, 0xa8, 0xac, 0xec, 0xcb, 0x5f,
+  0x66, 0xd8, 0x28, 0x13, 0x43, 0x74, 0xbe, 0xa2, 0x7b, 0xd2, 0x07, 0x33,
+  0xcd, 0x76, 0x25, 0x91, 0xf6, 0x83, 0xf4, 0x5a, 0x44, 0xef, 0x55, 0xb6,
+  0x27, 0x89, 0x1f, 0x93, 0xf5, 0xc0, 0x15, 0x4c, 0x69, 0x15, 0xbc, 0x87,
+  0xbc, 0x46, 0xa4, 0x38, 0xbf, 0xe2, 0xaf, 0x53, 0x73, 0x72, 0x99, 0x9a,
+  0x8c, 0xcd, 0xfd, 0x47, 0x35, 0x03, 0xb6, 0x1d, 0x76, 0x4b, 0xc6, 0x88,
+  0xdb, 0x23, 0xaf, 0x68, 0xdf, 0x2a, 0xe0, 0x11, 0xf8, 0xb6, 0x0c, 0xde,
+  0x98, 0xaa, 0xb1, 0x29, 0x8b, 0xa0, 0x4e, 0xf5, 0xe1, 0xfd, 0x89, 0x67,
+  0x0c, 0x99, 0xcd, 0x47, 0xda, 0xf7, 0xaa, 0x74, 0x1d, 0xee, 0x87, 0x6a,
+  0x9d, 0xc2, 0x70, 0xf2, 0xd5, 0xab, 0x7a, 0x32, 0x7e, 0xc0, 0xcd, 0x26,
+  0xad, 0x32, 0xb9, 0x75, 0xdb, 0x88, 0xf3, 0x51, 0x2c, 0xac, 0x1c, 0x49,
+  0x22, 0xde, 0x51, 0xad, 0xbd, 0x69, 0x0d, 0x87, 0x5e, 0x00, 0xcc, 0x10,
+  0xc0, 0x33, 0xb4, 0x89, 0xba, 0x0c, 0xe9, 0x40, 0x06, 0x61, 0x36, 0xa1,
+  0x9e, 0xb1, 0x9c, 0x7c, 0x6c, 0x7b, 0x54, 0xe0, 0x0b, 0x08, 0xef, 0x95,
+  0x7a, 0xc9, 0x04, 0xa6, 0x19, 0x45, 0x49, 0x7d, 0xd7, 0xc9, 0x1d, 0x19,
+  0x22, 0x57, 0xe5, 0xa6, 0x1d, 0x50, 0x42, 0x1c, 0x2f, 0x39, 0xa8, 0x8a,
+  0xfe, 0xe1, 0x46, 0x44, 0x83, 0xb1, 0x61, 0x39, 0x1f, 0x0f, 0x8e, 0xfa,
+  0x1f, 0x37, 0xb7, 0x5e, 0x7c, 0xfc, 0xea, 0xf0, 0xed, 0xc7, 0xfe, 0x9b,
+  0x83, 0xad, 0xdd, 0x67, 0xbf, 0xd0, 0xbb, 0x08, 0x9f, 0xc0, 0x9c, 0x1a,
+  0xc2, 0x94, 0xd8, 0xc7, 0x3f, 0x3f, 0xf7, 0xd1, 0xfa, 0x22, 0xa2, 0xa4,
+  0x57, 0x48, 0x84, 0x36, 0x33, 0x42, 0x9d, 0x30, 0x1b, 0xf0, 0xb2, 0x5b,
+  0x69, 0x49, 0x73, 0xf2, 0x97, 0x88, 0x3b, 0x3a, 0xfd, 0xf7, 0x67, 0x9d,
+  0xae, 0xd4, 0xa4, 0xc1, 0x07, 0x62, 0xf8, 0x77, 0x44, 0x7e, 0xa1, 0x28,
+  0xda, 0xdd, 0xd8, 0xdd, 0x91, 0xfa, 0x1b, 0x9e, 0x23, 0x83, 0x43, 0xf9,
+  0x39, 0x24, 0xf4, 0x4b, 0x53, 0xea, 0x44, 0x5c, 0xe3, 0xe0, 0x6d, 0xa1,
+  0xfb, 0xb5, 0xb1, 0x42, 0xce, 0xb9, 0xeb, 0xda, 0x6e, 0xdb, 0x61, 0x0b,
+  0xc4, 0x34, 0x93, 0x03, 0xd6, 0xa5, 0x69, 0xf6, 0x5a, 0xe1, 0xe3, 0xa2,
+  0xbc, 0x96, 0x14, 0x2c, 0xc5, 0xdd, 0x24, 0xa1, 0xd6, 0x5e, 0x2c, 0x0b,
+  0x39, 0x23, 0xe5, 0xdc, 0x43, 0xc1, 0x30, 0x70, 0xba, 0x6c, 0xa1, 0x98,
+  0x36, 0xd7, 0xd2, 0xc0, 0xd2, 0x9c, 0x23, 0x03, 0x04, 0xfb, 0x2a, 0x9f,
+  0xe1, 0x9e, 0xd0, 0x28, 0xad, 0x41, 0x9e, 0xc0, 0x64, 0x86, 0x3e, 0x38,
+  0xcc, 0x83, 0x5a, 0x8e, 0x21, 0xf7, 0x3e, 0x1b, 0x05, 0x21, 0x8e, 0x31,
+  0xcf, 0xe0, 0xee, 0x92, 0xbd, 0xaf, 0xdd, 0x01, 0x71, 0xda, 0xed, 0x2c,
+  0x2e, 0xd3, 0xaa, 0x6c, 0x1e, 0x48, 0x8a, 0x22, 0x15, 0x3b, 0x73, 0xed,
+  0x69, 0xb2, 0x8d, 0xdc, 0x2c, 0x96, 0x4d, 0xe8, 0xe6, 0x42, 0x4f, 0x7f,
+  0xba, 0x38, 0x82, 0x14, 0x48, 0x85, 0x57, 0xe9, 0xbd, 0x3c, 0x09, 0xcd,
+  0x82, 0xa7, 0xb7, 0x23, 0x67, 0x2e, 0xf4, 0xc7, 0x83, 0x14, 0xa5, 0xa7,
+  0x82, 0x75, 0xb0, 0x74, 0xfa, 0xb4, 0xa6, 0x2f, 0x7a, 0x14, 0x35, 0x85,
+  0x98, 0x4f, 0xa4, 0xa5, 0x98, 0xfa, 0xed, 0x73, 0x45, 0xca, 0x80, 0x77,
+  0x5c, 0xfe, 0xe7, 0x50, 0x18, 0x55, 0x98, 0xb0, 0x1a, 0xf0, 0x1a, 0xcb,
+  0x26, 0x9b, 0xe8, 0x00, 0x8e, 0xbe, 0x48, 0xfa, 0xa1, 0x5e, 0x4e, 0x0f,
+  0xa2, 0x02, 0x50, 0xb2, 0x8c, 0x34, 0x8e, 0xc5, 0x41, 0xc4, 0x5b, 0xf5,
+  0x89, 0x0f, 0x0a, 0x8e, 0x61, 0x34, 0xf9, 0x04, 0xd9, 0xd8, 0xfc, 0xf9,
+  0x46, 0x08, 0x18, 0x75, 0x22, 0x63, 0xb9, 0x11, 0x66, 0x6f, 0x11, 0x71,
+  0xf1, 0x72, 0x6b, 0xb8, 0x8f, 0x28, 0x88, 0x3e, 0x8a, 0x90, 0x26, 0x55,
+  0x0d, 0x05, 0x9f, 0x49, 0xd6, 0xc4, 0x71, 0x40, 0xd7, 0xc6, 0xa8, 0x7a,
+  0x85, 0x80, 0x52, 0x0f, 0x21, 0xfd, 0xe1, 0x30, 0x20, 0xb1, 0x30, 0x31,
+  0x54, 0xa3, 0x74, 0xaa, 0xd4, 0xb5, 0xfa, 0x4d, 0xa1, 0xa5, 0x91, 0x18,
+  0x0b, 0x46, 0xa8, 0xe6, 0x63, 0xd2, 0x3f, 0xc1, 0x99, 0xcc, 0x1b, 0xb6,
+  0xe4, 0xd5, 0xb6, 0xed, 0xab, 0x85, 0xa8, 0xae, 0x3e, 0x71, 0xdb, 0x37,
+  0xff, 0x87, 0x6d, 0xfb, 0xe6, 0xff, 0x2d, 0xdb, 0xbe, 0xf9, 0xab, 0x6c,
+  0xfb, 0xd6, 0x13, 0xb7, 0x7d, 0xeb, 0x7f, 0xd8, 0xb6, 0x6f, 0xfd, 0xdf,
+  0xb2, 0xed, 0x5b, 0xbf, 0xca, 0xb6, 0x6f, 0x3f, 0x71, 0xdb, 0xb7, 0x7f,
+  0xfd, 0x6d, 0xff, 0x57, 0x73, 0x9c, 0x50, 0x9f, 0x36, 0xba, 0xdd, 0xd5,
+  0x2e, 0xca, 0x1a, 0xe9, 0xc4, 0x5c, 0x82, 0x80, 0x9e, 0x5f, 0xfc, 0xbd,
+  0x58, 0x59, 0xd5, 0xd3, 0x36, 0x73, 0xfb, 0x97, 0x35, 0x81, 0xb0, 0x2e,
+  0x86, 0xa0, 0x0f, 0x2d, 0xd4, 0xae, 0x1c, 0xb3, 0x41, 0xd1, 0xe4, 0x6a,
+  0x6e, 0xeb, 0x1d, 0xef, 0xa6, 0xda, 0xe7, 0xa1, 0xed, 0x14, 0xff, 0xac,
+  0xbf, 0xa1, 0x92, 0x02, 0xca, 0x08, 0xe2, 0x7c, 0xdc, 0x8c, 0x9f, 0x8d,
+  0xbc, 0x46, 0x9e, 0x0f, 0xed, 0x2a, 0xbb, 0xc4, 0x1e, 0x1b, 0x4f, 0x20,
+  0xd8, 0xaf, 0x95, 0x9c, 0xe6, 0xe4, 0x82, 0xfd, 0x31, 0xc9, 0x69, 0xe1,
+  0xe4, 0xb3, 0x96, 0x9b, 0xc8, 0x3d, 0xb5, 0x65, 0x9c, 0x82, 0xb4, 0x1a,
+  0xf9, 0xb5, 0x7e, 0xd2, 0xa2, 0xdc, 0xc6, 0x4f, 0x10, 0x24, 0x83, 0x9a,
+  0xd6, 0x8d, 0x18, 0xe7, 0x1d, 0x93, 0x82, 0x8f, 0xe4, 0x5d, 0x9b, 0x94,
+  0xc2, 0xc7, 0xc1, 0xc7, 0x48, 0x17, 0x94, 0x1c, 0x03, 0x09, 0xae, 0x70,
+  0xaa, 0x52, 0x61, 0xd2, 0x95, 0xfa, 0x0f, 0xfd, 0x88, 0x14, 0x05, 0x12,
+  0x46, 0x27, 0xf5, 0x40, 0x08, 0xf6, 0x01, 0xa2, 0xcc, 0xc7, 0xe5, 0x0d,
+  0x2e, 0xbb, 0xe6, 0x87, 0x14, 0x57, 0x4c, 0x37, 0x89, 0x93, 0x6a, 0x98,
+  0x65, 0xe1, 0xe8, 0x86, 0x26, 0x6b, 0x25, 0xd4, 0xac, 0x28, 0xa2, 0xe7,
+  0x23, 0x4c, 0xf6, 0xc0, 0xf5, 0xe2, 0x51, 0xc6, 0xab, 0x80, 0xf0, 0xdf,
+  0x71, 0x79, 0x20, 0x74, 0x2e, 0x0b, 0x0d, 0xb5, 0x76, 0x03, 0xbd, 0x97,
+  0x50, 0xae, 0x70, 0xab, 0x6e, 0xee, 0x5e, 0x86, 0x05, 0x44, 0x59, 0x8e,
+  0x89, 0xd2, 0x52, 0xb2, 0x24, 0x41, 0x78, 0x8e, 0x3d, 0xb4, 0xba, 0x66,
+  0x7d, 0xf0, 0x5c, 0x3c, 0x9d, 0xb8, 0x83, 0x71, 0x1e, 0xfc, 0x3d, 0x99,
+  0x2f, 0xd8, 0x56, 0x2c, 0x91, 0x9a, 0x7d, 0x79, 0x59, 0x51, 0xcc, 0x17,
+  0x25, 0xfc, 0x61, 0xd9, 0x28, 0x77, 0x6b, 0xc6, 0x27, 0x4d, 0x12, 0x0e,
+  0x5e, 0x7b, 0x70, 0xe6, 0xa5, 0x23, 0x18, 0x03, 0x01, 0xa4, 0x77, 0x8c,
+  0x15, 0x45, 0xab, 0xcd, 0xbd, 0xd4, 0x52, 0x4c, 0x17, 0xe2, 0xad, 0x3d,
+  0xe8, 0x1f, 0x1e, 0x1f, 0x37, 0x70, 0xa5, 0x90, 0x6a, 0xdc, 0x81, 0x95,
+  0x20, 0x5c, 0x2b, 0xec, 0xfb, 0x98, 0x96, 0xb6, 0xb1, 0x56, 0x20, 0x90,
+  0x36, 0x81, 0xf3, 0x4e, 0x21, 0x71, 0x90, 0x3c, 0x19, 0x77, 0x31, 0xa0,
+  0x36, 0x6f, 0x64, 0xa5, 0xe5, 0x30, 0xcd, 0x0c, 0x7b, 0x2d, 0x5c, 0xcd,
+  0x26, 0x49, 0x5e, 0xfd, 0x3f, 0x97, 0xcb, 0xe8, 0xf2, 0xee, 0xb8, 0xb8,
+  0x7c, 0x6c, 0x36, 0x63, 0x18, 0x13, 0x45, 0x86, 0x63, 0x39, 0xe2, 0xa6,
+  0x65, 0xf5, 0xbc, 0xd3, 0x82, 0xeb, 0xf0, 0xba, 0x22, 0x93, 0x0e, 0x54,
+  0x49, 0xff, 0x07, 0xcc, 0xda, 0x9a, 0x90, 0xcf, 0x9d, 0x7a, 0x03, 0xf1,
+  0xc8, 0x40, 0x55, 0xcd, 0xf4, 0xe2, 0x3e, 0xf4, 0x62, 0x08, 0x07, 0x8a,
+  0xdc, 0x24, 0xef, 0xe3, 0x5f, 0x1f, 0x5b, 0xd9, 0x12, 0xa4, 0xb5, 0x1f,
+  0xc2, 0xd3, 0x8f, 0x10, 0x3e, 0xbf, 0xab, 0xd8, 0x69, 0xc8, 0x9d, 0x87,
+  0x05, 0x0f, 0xcb, 0x9d, 0x5f, 0x43, 0xec, 0x08, 0xea, 0x48, 0xe7, 0xcf,
+  0x1d, 0xc4, 0xfe, 0xf0, 0x7c, 0x26, 0x8f, 0x1a, 0x07, 0x58, 0xf5, 0xff,
+  0xcd, 0x33, 0xfe, 0x2b, 0x9c, 0x6e, 0x3f, 0x71, 0xd9, 0x65, 0x57, 0xf7,
+  0x8c, 0xcf, 0xf2, 0xec, 0x2e, 0x16, 0x20, 0xe4, 0xfd, 0x69, 0x52, 0x5f,
+  0x7d, 0x1e, 0x56, 0x1b, 0x0e, 0x59, 0xed, 0x8e, 0x14, 0x99, 0x83, 0xa8,
+  0xf2, 0x01, 0x5e, 0x06, 0xca, 0x4f, 0x30, 0xff, 0x9c, 0xc7, 0xe8, 0xba,
+  0x4d, 0xe7, 0x49, 0x75, 0x08, 0xe4, 0xaf, 0xe7, 0x69, 0x8d, 0xfe, 0xab,
+  0x65, 0x89, 0xe3, 0x4e, 0x95, 0xff, 0x13, 0xe3, 0x84, 0x97, 0xcd, 0x59,
+  0x6c, 0x56, 0x7a, 0x9d, 0x53, 0xfb, 0x88, 0x29, 0x62, 0x1d, 0xc4, 0x14,
+  0x93, 0x0e, 0x9e, 0x4f, 0x56, 0xd7, 0x9c, 0x2e, 0x9f, 0x2d, 0x3c, 0x1d,
+  0xcc, 0x58, 0x1b, 0x4b, 0x42, 0x4a, 0x21, 0xb5, 0x6d, 0xa4, 0xfe, 0x7e,
+  0x78, 0x7f, 0x12, 0x4e, 0xe2, 0x2f, 0xc5, 0x77, 0xce, 0x2f, 0xd1, 0xbd,
+  0x99, 0xb5, 0x73, 0x07, 0xe0, 0x65, 0xb7, 0xdf, 0x49, 0x32, 0x45, 0xa1,
+  0x1b, 0xd0, 0x3c, 0x9d, 0xaf, 0x13, 0x88, 0x5c, 0xf4, 0xee, 0xf4, 0xfc,
+  0x88, 0xc5, 0x2d, 0xda, 0x9b, 0x14, 0x1c, 0xe3, 0xda, 0x6a, 0xbc, 0x42,
+  0xa9, 0xd7, 0xea, 0xba, 0x26, 0x63, 0x8e, 0xfd, 0x82, 0x7e, 0xae, 0x57,
+  0x28, 0x38, 0xb5, 0x0c, 0xb1, 0xee, 0xc6, 0x54, 0xed, 0x7e, 0x43, 0x6b,
+  0x3b, 0x64, 0x4b, 0x9b, 0x35, 0xe0, 0xe6, 0x22, 0xd8, 0xa3, 0xea, 0x29,
+  0xf1, 0x4e, 0xb6, 0xda, 0x55, 0x96, 0x5f, 0x9b, 0x79, 0x95, 0x7c, 0x64,
+  0xec, 0xd7, 0xb4, 0xa2, 0xc1, 0x21, 0xdf, 0x85, 0xaf, 0x28, 0xaa, 0xe4,
+  0x80, 0x05, 0x89, 0x45, 0xc1, 0xbd, 0xd7, 0x10, 0xb2, 0x68, 0x9c, 0x5d,
+  0xa7, 0xe3, 0x7b, 0x29, 0xe1, 0xa7, 0xc8, 0x28, 0x6d, 0x6c, 0x84, 0xe9,
+  0x53, 0x0a, 0xd6, 0xe6, 0xf5, 0x96, 0xcb, 0xc6, 0x3d, 0x17, 0xec, 0x41,
+  0x82, 0x6f, 0x0a, 0x80, 0xb3, 0x0a, 0xd6, 0x2e, 0xdb, 0x2f, 0x7c, 0xcc,
+  0xcf, 0x3e, 0x9c, 0x9b, 0xa6, 0xf6, 0xf3, 0x1b, 0x9e, 0x07, 0xd1, 0xe1,
+  0x9b, 0xa5, 0x1b, 0x28, 0x54, 0x57, 0x4d, 0x7b, 0x2e, 0xcc, 0x66, 0x59,
+  0x53, 0xdb, 0x0b, 0x84, 0x1f, 0xf0, 0x82, 0x73, 0x90, 0xbc, 0xfc, 0x13,
+  0x49, 0x60, 0x12, 0x45, 0x31, 0x3a, 0x18, 0x53, 0x5a, 0x50, 0x9d, 0x62,
+  0xd4, 0xa8, 0xfd, 0x9d, 0x9e, 0xfb, 0x1d, 0xc6, 0xf8, 0x58, 0x0b, 0x34,
+  0x27, 0x6d, 0xc8, 0x4b, 0xe7, 0xdb, 0x38, 0x4f, 0x05, 0xfb, 0x93, 0x99,
+  0x11, 0xac, 0x3d, 0x96, 0x30, 0x52, 0x9a, 0xa2, 0x7f, 0xc6, 0x09, 0x1d,
+  0xd3, 0xfa, 0x5b, 0xa8, 0x4b, 0x1a, 0xdf, 0x47, 0x52, 0xda, 0x28, 0xc2,
+  0x9e, 0x7b, 0xa1, 0xc9, 0x6a, 0x31, 0xdd, 0x8a, 0xdb, 0x5b, 0x79, 0x41,
+  0x1f, 0xd8, 0xc2, 0x00, 0x49, 0xff, 0xd6, 0x02, 0x62, 0x42, 0xd9, 0xeb,
+  0x1f, 0x67, 0x95, 0xfc, 0x78, 0x98, 0xa8, 0xaf, 0x26, 0x9d, 0x5c, 0xd8,
+  0xc1, 0xd8, 0xa3, 0x41, 0x3e, 0x62, 0x4d, 0x05, 0x28, 0x7a, 0x84, 0x6f,
+  0xf8, 0x83, 0xfd, 0x85, 0x46, 0x99, 0x26, 0x59, 0x69, 0x68, 0x85, 0xc1,
+  0x6e, 0x3c, 0x0c, 0x6d, 0xbe, 0x12, 0xce, 0xa3, 0xbc, 0xab, 0x82, 0xd1,
+  0x20, 0x7b, 0xd2, 0x5a, 0x18, 0x2d, 0x4e, 0x53, 0x88, 0xdf, 0xc1, 0x3b,
+  0x6c, 0x00, 0x0b, 0xef, 0x90, 0x49, 0xc5, 0xd3, 0x83, 0x2f, 0x7b, 0x61,
+  0x39, 0x77, 0x1e, 0x51, 0x52, 0x5e, 0x92, 0x5f, 0xab, 0xcb, 0xe6, 0x34,
+  0x03, 0xe8, 0x92, 0x7a, 0xa5, 0x61, 0x5b, 0xf9, 0xbe, 0xf6, 0x28, 0x0f,
+  0x5c, 0xc1, 0x52, 0x8a, 0x2a, 0x8c, 0x81, 0x0b, 0x6b, 0x04, 0x72, 0x09,
+  0x23, 0x0a, 0x7f, 0xaa, 0x13, 0xe4, 0x02, 0x15, 0xaa, 0x46, 0x8d, 0x03,
+  0x20, 0x5e, 0x2c, 0x5f, 0xf1, 0x4d, 0x94, 0x79, 0xe1, 0x06, 0x5d, 0x3c,
+  0x29, 0x03, 0xf7, 0x9b, 0x53, 0x49, 0xad, 0x30, 0xc5, 0x9e, 0x73, 0x60,
+  0x39, 0x6f, 0x2a, 0x99, 0x8f, 0x02, 0xc8, 0xf7, 0x3b, 0x46, 0x36, 0x77,
+  0xb7, 0xb7, 0xb6, 0x22, 0xd6, 0x6b, 0x18, 0xa1, 0x86, 0x53, 0xf7, 0x10,
+  0xbe, 0x31, 0x4d, 0xa8, 0x4a, 0x94, 0x6f, 0x1c, 0xec, 0x79, 0x93, 0x70,
+  0x28, 0x1b, 0xe8, 0x3c, 0xa7, 0xa6, 0x86, 0xb6, 0x8b, 0x7a, 0xdf, 0xc0,
+  0x49, 0x2e, 0x46, 0xf7, 0x76, 0x60, 0xe0, 0x98, 0x12, 0xe5, 0x14, 0x48,
+  0x17, 0x81, 0x95, 0xe0, 0xc8, 0x58, 0x15, 0x05, 0x41, 0x1b, 0xa4, 0x61,
+  0x2f, 0x5d, 0x18, 0xd4, 0xf6, 0x2c, 0x47, 0x36, 0xcc, 0xe9, 0xaf, 0xd8,
+  0x49, 0x64, 0x56, 0x52, 0x2b, 0x9f, 0x8c, 0x7b, 0x8f, 0xdf, 0x26, 0xf7,
+  0xcb, 0x66, 0x73, 0x9d, 0xcf, 0x4f, 0xa0, 0x9a, 0xf3, 0x7c, 0x27, 0x9b,
+  0x5c, 0x7e, 0xbf, 0x19, 0x6f, 0x6e, 0x6c, 0x6c, 0xfc, 0xd8, 0x9b, 0x22,
+  0xbf, 0x71, 0xd2, 0x26, 0xfc, 0xd9, 0x6b, 0xe4, 0x38, 0xcf, 0xb9, 0x7c,
+  0x1d, 0xf6, 0xeb, 0xfc, 0x03, 0xff, 0xb3, 0xd9, 0xc5, 0x3f, 0xb7, 0xfe,
+  0xd9, 0x79, 0x40, 0xed, 0xc5, 0xf7, 0xf7, 0xe1, 0x0f, 0x2f, 0x12, 0x67,
+  0xf0, 0xca, 0x90, 0xcb, 0x68, 0xc3, 0xea, 0xe1, 0x95, 0x57, 0xfc, 0x42,
+  0x92, 0x1d, 0x1b, 0x76, 0x5e, 0xc1, 0xe6, 0x98, 0x8e, 0xa3, 0x7e, 0x83,
+  0x65, 0xe3, 0x55, 0x95, 0x61, 0x61, 0xd0, 0xd5, 0x6a, 0x8d, 0xeb, 0x85,
+  0x87, 0x45, 0x7e, 0x91, 0x5d, 0xb2, 0xb8, 0x0c, 0x68, 0x78, 0x8e, 0x26,
+  0x8c, 0x53, 0xc1, 0x8a, 0x1b, 0xae, 0x69, 0xc7, 0xe3, 0x31, 0xbc, 0x4a,
+  0x27, 0x22, 0x4a, 0x57, 0xb5, 0x90, 0xa5, 0x83, 0x2b, 0x86, 0x05, 0x77,
+  0xfc, 0xdb, 0xae, 0x73, 0x21, 0xbf, 0x81, 0xc5, 0x68, 0xdb, 0x5d, 0x73,
+  0x01, 0x52, 0x9e, 0x62, 0x12, 0x5d, 0xce, 0xd0, 0x21, 0x32, 0x48, 0xe4,
+  0xa6, 0x51, 0xc4, 0x3d, 0x0a, 0xcf, 0x87, 0xe0, 0x16, 0x41, 0x5c, 0xa6,
+  0x25, 0x5d, 0x70, 0x70, 0xf8, 0x06, 0xb1, 0x28, 0x5c, 0x72, 0xdf, 0x52,
+  0x72, 0x28, 0x1c, 0xe6, 0x57, 0xc7, 0x87, 0x20, 0xaf, 0x5e, 0x9f, 0x9f,
+  0x75, 0xa9, 0x64, 0xbd, 0x4b, 0x40, 0x63, 0x6d, 0x31, 0x42, 0x75, 0xec,
+  0x88, 0x6c, 0x82, 0xe7, 0x4e, 0x62, 0xf6, 0x89, 0x4d, 0xfe, 0xb7, 0xf0,
+  0x4c, 0x0a, 0xe5, 0x44, 0x2d, 0xa7, 0x6e, 0xb3, 0x4a, 0xba, 0x0b, 0x87,
+  0x18, 0x5d, 0xaf, 0x3c, 0x03, 0x54, 0xb7, 0xb3, 0xdb, 0xdb, 0xe0, 0x35,
+  0x22, 0x09, 0x25, 0x01, 0x56, 0x40, 0x31, 0xc8, 0x25, 0xaa, 0xe9, 0x24,
+  0x49, 0x38, 0x13, 0xcd, 0x4c, 0xa7, 0x1b, 0x71, 0x8b, 0x4f, 0xfa, 0x77,
+  0xac, 0xbf, 0x75, 0xca, 0x3e, 0x16, 0xda, 0x07, 0x6e, 0x1b, 0x2d, 0x3c,
+  0x65, 0xad, 0xae, 0x8a, 0xd4, 0x34, 0x33, 0x52, 0xe4, 0x28, 0x01, 0xec,
+  0x0d, 0x75, 0xbd, 0x24, 0x9e, 0x40, 0xa6, 0x90, 0x72, 0xca, 0xae, 0xe9,
+  0xee, 0x1a, 0x17, 0x78, 0x41, 0xc8, 0x65, 0x26, 0x18, 0x00, 0xf1, 0x69,
+  0x97, 0x9a, 0xb2, 0xa1, 0xfa, 0x12, 0xcc, 0xc4, 0xd5, 0xa4, 0xed, 0xb9,
+  0x90, 0x40, 0xa7, 0xb9, 0x62, 0xcc, 0x74, 0xb9, 0xe3, 0xfa, 0x70, 0x86,
+  0x9e, 0x1a, 0x64, 0x5e, 0x84, 0x0b, 0x94, 0xfe, 0x5d, 0x18, 0x59, 0x46,
+  0xd2, 0xd2, 0x66, 0x05, 0x80, 0xf4, 0x10, 0x6c, 0x80, 0x0d, 0x21, 0xd1,
+  0xb6, 0xed, 0x7b, 0x22, 0xc0, 0x44, 0x29, 0x42, 0xc1, 0x7e, 0x0f, 0xb7,
+  0xfd, 0xa4, 0x17, 0x7d, 0x99, 0xde, 0x26, 0x65, 0xfa, 0x6f, 0xcb, 0xaa,
+  0xe5, 0xf0, 0xe7, 0x42, 0x09, 0xf0, 0xa5, 0x74, 0x68, 0x63, 0xe3, 0x23,
+  0x84, 0xfa, 0x41, 0xbc, 0xba, 0xa6, 0xe5, 0x4d, 0xec, 0x4a, 0x52, 0x65,
+  0x9b, 0x3b, 0x91, 0x13, 0x5f, 0xd3, 0x76, 0xe0, 0xa2, 0x35, 0x21, 0x21,
+  0xcd, 0x03, 0x5d, 0x54, 0x87, 0xa9, 0x03, 0x96, 0x24, 0xc2, 0x85, 0xae,
+  0x46, 0xf2, 0x58, 0x48, 0x9e, 0x48, 0xe7, 0x53, 0x0c, 0xd3, 0x7f, 0x76,
+  0xd0, 0x69, 0xb5, 0x0b, 0xf6, 0x30, 0x09, 0x66, 0x48, 0x31, 0xba, 0x8c,
+  0x9a, 0x26, 0xae, 0x5c, 0x41, 0x78, 0xe5, 0x81, 0xdd, 0xc8, 0x2a, 0x0f,
+  0x72, 0xe6, 0x6d, 0x96, 0x6f, 0x6f, 0x09, 0x45, 0x97, 0xf5, 0xf5, 0x7f,
+  0xe9, 0xe3, 0x7f, 0xac, 0xbf, 0x3f, 0x3a, 0x78, 0xf5, 0xf6, 0xc8, 0x12,
+  0xf3, 0x40, 0xdb, 0xdd, 0xc5, 0xc9, 0x25, 0x4e, 0x28, 0x98, 0xe4, 0x20,
+  0x36, 0x9b, 0x4a, 0x58, 0xba, 0x94, 0xf1, 0x95, 0x03, 0x7a, 0x85, 0x93,
+  0x4c, 0x4c, 0xa1, 0x83, 0x0b, 0xae, 0xa8, 0xa1, 0x97, 0xd6, 0xa9, 0x2a,
+  0xf4, 0xee, 0x1a, 0x8c, 0x93, 0xfc, 0xda, 0xd4, 0x03, 0xf2, 0x40, 0x70,
+  0x4a, 0x67, 0x25, 0x03, 0x7c, 0xd9, 0x1f, 0x0a, 0x99, 0x59, 0xb9, 0x68,
+  0x0d, 0xf7, 0xf7, 0x19, 0xaa, 0xf6, 0x70, 0x3e, 0x4b, 0x82, 0xbd, 0x21,
+  0xf2, 0x4b, 0xcd, 0xa2, 0xbb, 0xb9, 0x06, 0x18, 0x8e, 0x8e, 0xd5, 0x1b,
+  0x5c, 0x37, 0x3f, 0xe5, 0x63, 0x2a, 0x72, 0xe2, 0x19, 0xe3, 0xfd, 0x68,
+  0xf5, 0xe3, 0x9c, 0x63, 0x26, 0xd9, 0x70, 0x28, 0xed, 0xa9, 0x6e, 0x68,
+  0x32, 0xad, 0xef, 0x8d, 0x3a, 0x45, 0xee, 0xd0, 0x36, 0x85, 0x57, 0x3b,
+  0x9d, 0xb5, 0xae, 0xe9, 0xd3, 0xea, 0xb9, 0xad, 0x11, 0x96, 0x42, 0x5b,
+  0x03, 0xc9, 0x22, 0xb0, 0x2f, 0x65, 0x8a, 0xca, 0x38, 0xe7, 0xd1, 0x3b,
+  0xfd, 0x80, 0x4d, 0x36, 0xde, 0x94, 0x80, 0xed, 0x3d, 0x09, 0x48, 0xf4,
+  0x8d, 0xb4, 0xae, 0xd0, 0x40, 0x8d, 0xa6, 0x54, 0x43, 0xe6, 0xaa, 0x6b,
+  0xd5, 0x14, 0x1d, 0x05, 0xab, 0x9d, 0xa8, 0xb3, 0xf6, 0x07, 0xfb, 0x2c,
+  0x0e, 0xa2, 0x0e, 0xb3, 0xd5, 0xc6, 0xc6, 0xf3, 0x07, 0x54, 0x01, 0xd3,
+  0xaa, 0x11, 0xf4, 0x01, 0xf8, 0x73, 0x4f, 0x13, 0x50, 0xe6, 0x69, 0x06,
+  0x46, 0xcd, 0x6a, 0x74, 0x5b, 0xa2, 0x94, 0x15, 0xb1, 0x94, 0x08, 0x67,
+  0x92, 0x6d, 0x0a, 0x9b, 0xb4, 0x13, 0xca, 0x90, 0xeb, 0x45, 0xa7, 0xd6,
+  0x3b, 0x92, 0xb3, 0xbb, 0xa7, 0x2e, 0x87, 0xda, 0xc5, 0x0a, 0xff, 0x2e,
+  0xd5, 0x2c, 0xc9, 0x38, 0xa8, 0x22, 0x50, 0x5f, 0xb1, 0x2a, 0xa3, 0x8e,
+  0xa3, 0x46, 0xc7, 0x70, 0xfa, 0x2c, 0xe2, 0x14, 0x5d, 0x63, 0x1d, 0x98,
+  0x11, 0x58, 0x8b, 0x61, 0xca, 0xbc, 0xe2, 0x45, 0x5e, 0x44, 0xe0, 0xf6,
+  0x9a, 0xb7, 0xde, 0x4a, 0x12, 0xf1, 0xc6, 0xc0, 0x06, 0xb3, 0x69, 0x64,
+  0x0d, 0x19, 0x46, 0x5b, 0x05, 0x96, 0x1b, 0x17, 0x79, 0xd7, 0x83, 0xa0,
+  0xa7, 0x62, 0x5f, 0x76, 0xbf, 0x53, 0xad, 0xc8, 0x64, 0x5a, 0xc0, 0xa5,
+  0x3c, 0x18, 0xa7, 0x26, 0xca, 0xc7, 0x6f, 0xea, 0x81, 0xb6, 0x1f, 0xc7,
+  0x83, 0x37, 0xbf, 0x05, 0x34, 0x27, 0xe3, 0x9a, 0xcd, 0x00, 0x1e, 0xed,
+  0x32, 0x74, 0x8b, 0xb7, 0x24, 0xb8, 0xcc, 0x44, 0x16, 0x0a, 0x22, 0x7e,
+  0xc6, 0xb9, 0x4b, 0x95, 0x4b, 0xab, 0x2b, 0xd8, 0x16, 0xd7, 0x1b, 0x29,
+  0x6d, 0x05, 0xe0, 0x50, 0x7a, 0x46, 0x1a, 0x61, 0x96, 0x71, 0x75, 0x0a,
+  0x50, 0x98, 0x1a, 0x59, 0x62, 0x4e, 0x30, 0x56, 0xd2, 0xd8, 0x0a, 0x3a,
+  0x54, 0xbd, 0xd3, 0x9c, 0xdd, 0x54, 0x85, 0xb6, 0x9a, 0x88, 0x86, 0x7e,
+  0x83, 0x9f, 0x11, 0xb7, 0x83, 0xab, 0x78, 0x44, 0x21, 0xce, 0x3d, 0xd6,
+  0xc7, 0xf0, 0xbd, 0x88, 0xf5, 0x3f, 0x70, 0x95, 0x70, 0xdf, 0x4d, 0x24,
+  0x4e, 0x65, 0x29, 0x5f, 0xf9, 0x08, 0x36, 0xbc, 0x52, 0x0b, 0x27, 0xae,
+  0xd0, 0x93, 0x8c, 0x6a, 0x43, 0x37, 0xf5, 0x4d, 0xc6, 0xf4, 0xe7, 0x24,
+  0xcd, 0x04, 0xee, 0x0d, 0x5a, 0x12, 0xd7, 0x16, 0x79, 0x5e, 0xdc, 0x34,
+  0x61, 0x7c, 0x0f, 0x54, 0x3b, 0x11, 0x05, 0x2c, 0x23, 0x47, 0x2e, 0xdf,
+  0x46, 0x57, 0x8a, 0xbd, 0xc6, 0xbd, 0x73, 0x11, 0x1b, 0x87, 0x56, 0x91,
+  0x28, 0x82, 0x84, 0x97, 0x49, 0xc0, 0x16, 0x7d, 0x69, 0x62, 0x3f, 0xc8,
+  0x60, 0x39, 0x0a, 0x05, 0x96, 0x0f, 0x88, 0x38, 0x82, 0x5f, 0xe4, 0x0b,
+  0x4d, 0xf4, 0x66, 0x76, 0x74, 0x90, 0x55, 0x1c, 0xb6, 0xe8, 0xb8, 0xbf,
+  0xf0, 0xd7, 0x69, 0x09, 0xba, 0x55, 0x01, 0xeb, 0xfe, 0x66, 0x57, 0x03,
+  0xc0, 0x0a, 0x94, 0xc7, 0x7a, 0xae, 0x9c, 0x52, 0x3c, 0x46, 0x3c, 0x75,
+  0x2f, 0x72, 0xcc, 0xd5, 0xd3, 0x48, 0x5b, 0x7d, 0x53, 0x14, 0x5d, 0xf6,
+  0x0b, 0xb5, 0x38, 0xb4, 0x4b, 0x4e, 0x08, 0xe0, 0x3e, 0x0c, 0x29, 0xf9,
+  0xf5, 0x3e, 0xbc, 0x45, 0xfc, 0x4d, 0x0e, 0xbe, 0x92, 0xf6, 0x83, 0xde,
+  0x75, 0xd8, 0xcf, 0x41, 0x9d, 0xd0, 0xfa, 0xcc, 0xb4, 0xcf, 0x33, 0x74,
+  0x27, 0x1a, 0xe9, 0x1c, 0xaa, 0xcb, 0x33, 0x39, 0xae, 0xb6, 0xdb, 0x68,
+  0x2b, 0x4f, 0x10, 0x0d, 0x94, 0xea, 0x0a, 0x55, 0x7c, 0x54, 0x3d, 0xc9,
+  0xb1, 0xf4, 0x49, 0xb8, 0x2f, 0x25, 0xd2, 0xec, 0xdd, 0xf9, 0xc9, 0xdb,
+  0x6e, 0xeb, 0xd4, 0x89, 0xae, 0x6c, 0xfd, 0x30, 0x46, 0xe2, 0x24, 0xc1,
+  0x4e, 0xdd, 0x9c, 0xc4, 0xcb, 0xe4, 0x30, 0x59, 0x10, 0x0c, 0xdf, 0x8a,
+  0x94, 0xeb, 0x4a, 0x32, 0x6d, 0x29, 0x40, 0x21, 0xea, 0x6b, 0x62, 0xb2,
+  0xfa, 0xb9, 0xbf, 0xc8, 0x83, 0x15, 0x6d, 0x3d, 0xb9, 0xe7, 0xe0, 0xda,
+  0x01, 0x59, 0xb3, 0xa8, 0x03, 0xec, 0xb9, 0x35, 0xb7, 0xec, 0x57, 0x79,
+  0x29, 0x28, 0x5d, 0xb8, 0x4b, 0x78, 0xf4, 0xaa, 0xb8, 0xcd, 0xe3, 0x13,
+  0x84, 0x96, 0x8a, 0x4e, 0x8a, 0x4b, 0x3c, 0x40, 0xef, 0xc2, 0x9e, 0xc2,
+  0x0f, 0x67, 0xef, 0xa2, 0x55, 0x54, 0x54, 0x10, 0x3d, 0x51, 0xba, 0x62,
+  0xe0, 0xa3, 0x6b, 0x62, 0x87, 0x57, 0xac, 0x0b, 0xca, 0x6c, 0xba, 0xd1,
+  0xd1, 0x77, 0x07, 0x6f, 0xcf, 0x4e, 0x8e, 0x7e, 0x60, 0x53, 0xdc, 0x5b,
+  0x0e, 0xfe, 0xf8, 0x0b, 0xe7, 0x22, 0xa2, 0x98, 0x36, 0xa6, 0x8e, 0xc0,
+  0x4c, 0xee, 0xe7, 0x29, 0x06, 0x2c, 0x15, 0x2d, 0xc8, 0xe3, 0xd9, 0x71,
+  0xac, 0xbd, 0x27, 0x48, 0x60, 0x0d, 0xb2, 0x1c, 0xdd, 0x08, 0xe4, 0x28,
+  0x30, 0xfd, 0xdd, 0xbf, 0xf6, 0xc3, 0xf7, 0xe6, 0x38, 0x74, 0xa3, 0x77,
+  0x5a, 0xcc, 0xd0, 0xa5, 0x4d, 0xc7, 0x23, 0xf8, 0x2a, 0xbb, 0xa4, 0x18,
+  0x7c, 0x2b, 0x01, 0x1c, 0xb9, 0x43, 0x2e, 0x7d, 0xaf, 0xf1, 0x0c, 0x36,
+  0xbc, 0x96, 0xfc, 0x8c, 0x2a, 0x1d, 0xb3, 0x2b, 0x7e, 0xee, 0xf5, 0xc8,
+  0x12, 0x92, 0x76, 0x91, 0x4a, 0xa3, 0xbd, 0xe4, 0x02, 0x29, 0x95, 0x46,
+  0x63, 0x8c, 0x37, 0x50, 0xac, 0x5d, 0xe6, 0x10, 0xbe, 0x14, 0x44, 0xf9,
+  0x32, 0x52, 0x7f, 0x2f, 0xea, 0xc4, 0xb3, 0x68, 0xaf, 0xf3, 0x07, 0x2b,
+  0x1c, 0xb4, 0x47, 0xe5, 0x5e, 0x95, 0x82, 0x40, 0x7f, 0x20, 0xe4, 0xe6,
+  0x86, 0x41, 0x5a, 0x83, 0x71, 0x5f, 0x51, 0xa9, 0xad, 0x30, 0x81, 0x4a,
+  0xe9, 0x6a, 0xed, 0x98, 0x47, 0x78, 0xd9, 0x01, 0x4b, 0x82, 0xe0, 0x10,
+  0xc3, 0x73, 0x30, 0xbb, 0xbc, 0x0c, 0x00, 0x29, 0xe7, 0xb8, 0x5e, 0x72,
+  0x60, 0xa2, 0x3f, 0x70, 0xa5, 0x8a, 0x38, 0x42, 0x07, 0xe4, 0xe8, 0x50,
+  0x62, 0x88, 0x36, 0x8f, 0x2c, 0x46, 0x68, 0x72, 0x1c, 0x68, 0x4c, 0x94,
+  0xf0, 0x9f, 0xfc, 0xe1, 0x58, 0x7b, 0x5e, 0xf9, 0x7c, 0xc5, 0xa4, 0xcb,
+  0x74, 0x44, 0xb9, 0x24, 0xe9, 0xdf, 0x61, 0x63, 0x04, 0x76, 0x0f, 0xe7,
+  0xdf, 0x8d, 0x56, 0xf6, 0x57, 0xe4, 0xb9, 0x4e, 0x50, 0x45, 0xe6, 0x77,
+  0x38, 0xc5, 0x82, 0xad, 0xa3, 0xa1, 0x71, 0xe3, 0xa3, 0xf2, 0x9d, 0x8d,
+  0xe0, 0x26, 0x14, 0xaf, 0x2e, 0x1c, 0xb4, 0xb1, 0xb4, 0xb4, 0xe9, 0x8a,
+  0x43, 0xac, 0xad, 0xc0, 0xd0, 0xd4, 0x75, 0xe6, 0x3c, 0xd7, 0x95, 0x7f,
+  0xd7, 0x19, 0x68, 0xbb, 0xd3, 0x64, 0x4c, 0x01, 0x47, 0x8a, 0x1c, 0x64,
+  0x23, 0xfb, 0xd5, 0x79, 0x07, 0x8f, 0xeb, 0x5d, 0xd0, 0x89, 0x43, 0x96,
+  0x48, 0x10, 0x7a, 0xa4, 0x0d, 0xb5, 0x41, 0xf9, 0x02, 0xbe, 0x07, 0xde,
+  0xe9, 0xfa, 0xad, 0x95, 0x2f, 0xe3, 0xa2, 0x40, 0x47, 0x35, 0xee, 0xe1,
+  0xbc, 0x09, 0x68, 0x74, 0xc2, 0x32, 0x32, 0xdf, 0xdb, 0x26, 0xb2, 0x48,
+  0x36, 0x03, 0x3e, 0x29, 0xba, 0x85, 0x38, 0x21, 0xba, 0x73, 0xe0, 0xb6,
+  0x44, 0xce, 0x6b, 0x50, 0xcf, 0xc2, 0x9d, 0x48, 0xcc, 0x58, 0x0b, 0x69,
+  0xff, 0xf0, 0x18, 0x27, 0x25, 0x29, 0x3a, 0xc0, 0x46, 0xa6, 0xa2, 0x96,
+  0x98, 0x44, 0x02, 0x40, 0xd4, 0xd2, 0x77, 0xd9, 0x88, 0x9d, 0x9e, 0xab,
+  0x65, 0xf0, 0x55, 0x5a, 0x98, 0x35, 0xbd, 0xf9, 0x8d, 0x20, 0x0c, 0x69,
+  0xc3, 0x65, 0x2c, 0xc1, 0x78, 0xe7, 0x37, 0x22, 0x11, 0x02, 0x95, 0xc8,
+  0xaf, 0x24, 0x0b, 0xc1, 0x8d, 0x93, 0x0b, 0xae, 0x08, 0xfb, 0xed, 0xc5,
+  0xc0, 0xd5, 0xe4, 0x2e, 0xcd, 0x5d, 0xcb, 0x28, 0xb8, 0x56, 0xf5, 0x02,
+  0xca, 0xbc, 0xaa, 0xe7, 0x7c, 0xd6, 0x4d, 0x9a, 0x21, 0x05, 0x68, 0x30,
+  0xce, 0xaf, 0x43, 0x48, 0x06, 0x6b, 0xd7, 0x8c, 0xed, 0x2f, 0x88, 0x75,
+  0xd0, 0x6d, 0xcc, 0xd6, 0x87, 0x73, 0x77, 0x2f, 0x29, 0xa6, 0x18, 0x7f,
+  0x80, 0xc1, 0xaf, 0xb5, 0x08, 0x01, 0x47, 0x4e, 0xef, 0xd2, 0xe1, 0xac,
+  0x0e, 0x02, 0x60, 0x9c, 0x5f, 0x29, 0x16, 0x3f, 0x4f, 0x69, 0x95, 0x0e,
+  0xb1, 0x40, 0x58, 0x77, 0xce, 0x14, 0x69, 0x7b, 0xaf, 0xb3, 0x26, 0x99,
+  0x3d, 0x94, 0x7b, 0x60, 0x21, 0xb8, 0x3d, 0x25, 0x0b, 0xb3, 0x04, 0x65,
+  0xca, 0x65, 0xca, 0x01, 0x0d, 0x9b, 0xe9, 0x16, 0xfc, 0x3c, 0x9c, 0xaf,
+  0x32, 0xf8, 0xf5, 0xd7, 0xec, 0xae, 0x77, 0x3e, 0x2e, 0xac, 0x3d, 0x54,
+  0x4f, 0x7e, 0xe5, 0x89, 0x21, 0xef, 0xcb, 0xc5, 0x05, 0x79, 0x8c, 0x0e,
+  0x6e, 0xe0, 0x60, 0x92, 0x2f, 0x49, 0x5f, 0x55, 0xe2, 0x7b, 0xa5, 0x7b,
+  0xc9, 0xb8, 0x8e, 0xab, 0x9b, 0x61, 0xb8, 0xfa, 0x55, 0xa0, 0x50, 0x0c,
+  0xc0, 0xe7, 0x01, 0x3c, 0xdc, 0xbf, 0x19, 0xee, 0xa9, 0xa5, 0x0f, 0x7c,
+  0xa9, 0xe2, 0xcd, 0x5b, 0xec, 0x41, 0x75, 0x9f, 0x0f, 0xaf, 0x5e, 0xbd,
+  0xeb, 0x87, 0x87, 0x26, 0xa6, 0xa6, 0xe9, 0x93, 0x87, 0x29, 0xa1, 0xa7,
+  0xe1, 0x5a, 0xc6, 0x46, 0x23, 0xec, 0xd8, 0x95, 0x86, 0x2c, 0xe8, 0x22,
+  0x39, 0x70, 0x7e, 0x1b, 0x1e, 0xae, 0xf9, 0x8a, 0x71, 0xba, 0xe2, 0x55,
+  0xcb, 0x62, 0x48, 0x74, 0x31, 0xca, 0xa0, 0x8d, 0x13, 0xa4, 0x08, 0xaf,
+  0x29, 0x3c, 0x5c, 0x7d, 0x85, 0x21, 0x3b, 0xe0, 0x2a, 0x19, 0xb1, 0x9c,
+  0x9f, 0xbe, 0x3a, 0x00, 0xe6, 0x18, 0x67, 0x0d, 0x52, 0x59, 0x90, 0x33,
+  0xf9, 0xa5, 0x26, 0x01, 0x6a, 0x96, 0x82, 0x46, 0x56, 0xbd, 0xc1, 0x0e,
+  0xaf, 0x92, 0xf2, 0xb0, 0xc8, 0x6f, 0xc2, 0xb3, 0x6a, 0xe5, 0x54, 0x32,
+  0xbc, 0x86, 0xf3, 0xdd, 0x21, 0xbc, 0x9d, 0x0c, 0x6b, 0xea, 0x79, 0x40,
+  0x2d, 0x48, 0x34, 0x45, 0x3c, 0x3c, 0xdc, 0x2a, 0x86, 0x8b, 0xa3, 0xa3,
+  0x2f, 0x0f, 0x5f, 0x1d, 0x1f, 0xae, 0xb5, 0x67, 0xf2, 0x8a, 0x10, 0xac,
+  0x44, 0xf6, 0xb0, 0x96, 0xc0, 0x1b, 0x65, 0xd8, 0xce, 0x99, 0x04, 0x3d,
+  0x2c, 0xf6, 0x27, 0x6b, 0x8b, 0x73, 0x3e, 0x39, 0x41, 0x04, 0x09, 0x6a,
+  0xde, 0x4d, 0xf2, 0xe9, 0x5a, 0x33, 0x7a, 0x26, 0xe9, 0x04, 0x23, 0xe0,
+  0x46, 0xbb, 0x90, 0x1e, 0x04, 0xaf, 0xa9, 0xbb, 0x1c, 0x7c, 0x2c, 0x0e,
+  0x0f, 0x37, 0x42, 0xa5, 0x1a, 0x15, 0x15, 0xae, 0x9d, 0xf3, 0x3c, 0xb7,
+  0x97, 0x55, 0x82, 0x38, 0xb6, 0x24, 0x8a, 0x68, 0xba, 0x31, 0xde, 0xf1,
+  0xfd, 0x83, 0xfe, 0x89, 0xd7, 0x62, 0x4d, 0x65, 0x13, 0x5c, 0x10, 0x68,
+  0x68, 0x32, 0x40, 0x50, 0xf8, 0xab, 0x06, 0x2d, 0xf9, 0xf0, 0xfd, 0xc1,
+  0x5b, 0x60, 0x33, 0x0e, 0xb7, 0xfb, 0x39, 0xaf, 0x44, 0x1a, 0xf8, 0x31,
+  0xcd, 0xc2, 0xdb, 0x6a, 0x69, 0xca, 0x16, 0xfe, 0x84, 0x76, 0x6c, 0xe3,
+  0x0e, 0x3c, 0x1c, 0x5e, 0xf4, 0x46, 0x78, 0xd3, 0x3f, 0xef, 0xeb, 0x7f,
+  0x74, 0x4e, 0x74, 0x22, 0xd3, 0xaa, 0x01, 0xcf, 0xa7, 0x8f, 0x03, 0xcf,
+  0x6d, 0xf1, 0x7f, 0xd6, 0xb7, 0xcc, 0x0b, 0x06, 0xe7, 0x43, 0xe9, 0xd3,
+  0x0b, 0xbc, 0xb6, 0x2d, 0xaf, 0x6d, 0x2f, 0x7a, 0x2d, 0xf0, 0x5e, 0x3f,
+  0x0e, 0xf5, 0x04, 0xf2, 0x24, 0x40, 0x16, 0xc8, 0x12, 0x5e, 0xd8, 0xe3,
+  0xe6, 0xd5, 0xbb, 0xe6, 0x00, 0x26, 0x9a, 0x8c, 0xbf, 0x89, 0x15, 0x25,
+  0x44, 0xb4, 0x30, 0xc7, 0x2a, 0x0b, 0xb8, 0x43, 0xcf, 0x6e, 0x9e, 0x39,
+  0xb1, 0x74, 0xdc, 0x48, 0xfa, 0x91, 0xd1, 0xfd, 0xbd, 0x37, 0xd4, 0x66,
+  0x0e, 0x2f, 0xca, 0x58, 0xd4, 0xdf, 0xec, 0x06, 0xba, 0xf8, 0xcd, 0xdf,
+  0xcb, 0x93, 0xa4, 0xbc, 0x4c, 0x03, 0xd9, 0x1e, 0x1e, 0xad, 0xcc, 0x52,
+  0x6d, 0x32, 0x0e, 0xdc, 0x9e, 0x63, 0x7c, 0x9d, 0xa3, 0xda, 0x5d, 0x09,
+  0x6e, 0xd3, 0x8f, 0xca, 0x79, 0xe2, 0x0d, 0xd6, 0xba, 0xf5, 0xd5, 0x97,
+  0xde, 0x34, 0x80, 0x5b, 0x7f, 0x46, 0xd9, 0x6d, 0x04, 0xd8, 0x28, 0x75,
+  0x65, 0xd7, 0xea, 0x4d, 0x96, 0x44, 0x97, 0x3f, 0x67, 0x53, 0x02, 0x07,
+  0xc1, 0xea, 0x86, 0x35, 0xba, 0xbb, 0x4d, 0x22, 0x75, 0xf8, 0x73, 0x3c,
+  0x21, 0x23, 0xf8, 0x16, 0x53, 0xe2, 0x2d, 0x46, 0xec, 0xfb, 0xfd, 0x93,
+  0x47, 0x13, 0x42, 0x43, 0xfc, 0x8b, 0xab, 0x0c, 0xc8, 0xf2, 0x94, 0xff,
+  0x2c, 0xb3, 0x31, 0xf8, 0xc2, 0xc7, 0x6f, 0xbf, 0x0c, 0xcf, 0x86, 0x46,
+  0x1b, 0xa5, 0x88, 0x6e, 0xa4, 0xad, 0x10, 0x6f, 0xb3, 0x1c, 0x4c, 0xe4,
+  0x11, 0xdc, 0x90, 0xe3, 0x29, 0xdf, 0x90, 0xf3, 0xc7, 0x3e, 0xc3, 0x16,
+  0x0a, 0xfc, 0x1f, 0x7c, 0xee, 0x4a, 0xe5, 0xf8, 0xd9, 0x6c, 0x30, 0x06,
+  0xda, 0xf7, 0x67, 0x17, 0x17, 0xd9, 0x5d, 0x74, 0x92, 0x55, 0xb5, 0x08,
+  0x49, 0xb2, 0x84, 0x38, 0x98, 0x13, 0xa8, 0x35, 0x76, 0x6f, 0x09, 0xae,
+  0xfc, 0xa0, 0x13, 0xda, 0x28, 0x10, 0xb6, 0xc8, 0x4a, 0xac, 0xd9, 0x75,
+  0xa6, 0xfc, 0xad, 0x6a, 0x76, 0x11, 0xcf, 0xdb, 0xbc, 0xbb, 0xb4, 0xf2,
+  0x6d, 0xde, 0xfe, 0xd9, 0xbb, 0xa3, 0xaf, 0x4e, 0xf5, 0x3f, 0xcb, 0x50,
+  0xb4, 0xcf, 0xab, 0xc6, 0xff, 0xb8, 0x25, 0x4c, 0x88, 0x5a, 0x86, 0x97,
+  0xbf, 0xed, 0x77, 0x42, 0x2e, 0x5f, 0x1d, 0xa6, 0xcb, 0x28, 0x8a, 0x7e,
+  0x36, 0xa5, 0x2b, 0x6e, 0x28, 0xfe, 0x0b, 0x7f, 0x62, 0x98, 0xb7, 0xcf,
+  0x36, 0x69, 0x11, 0x82, 0x9e, 0x43, 0xb7, 0x86, 0xfe, 0x67, 0xe1, 0x5c,
+  0xa5, 0x12, 0x7a, 0x8e, 0x76, 0x44, 0xe5, 0xe5, 0x7d, 0x06, 0x14, 0x7e,
+  0xcf, 0x09, 0x5b, 0x67, 0xe2, 0x81, 0x58, 0x5b, 0x44, 0x92, 0x39, 0x84,
+  0x86, 0x9d, 0x0f, 0x82, 0xef, 0xe3, 0x45, 0xf9, 0x96, 0x2e, 0xc8, 0xf0,
+  0x8b, 0x7c, 0x55, 0xcb, 0x15, 0x6a, 0xae, 0xd5, 0x85, 0xeb, 0xfa, 0x90,
+  0x67, 0x18, 0xcf, 0x9a, 0x83, 0x79, 0xc2, 0xbf, 0x34, 0xa2, 0xb8, 0x30,
+  0x01, 0xd9, 0xd0, 0x38, 0x77, 0x7d, 0x4a, 0x45, 0xac, 0xe6, 0x8e, 0x75,
+  0x27, 0xc9, 0x8a, 0x55, 0xf3, 0x92, 0x9a, 0xa3, 0x36, 0xfe, 0x5c, 0xd5,
+  0xa3, 0x87, 0x24, 0x10, 0x3e, 0xb3, 0xc6, 0xe9, 0x42, 0x4e, 0x0d, 0x07,
+  0x8b, 0x99, 0xf0, 0x34, 0x1e, 0x92, 0x3d, 0x9e, 0x1d, 0x67, 0x0d, 0x38,
+  0xb2, 0x94, 0x8c, 0xfd, 0x74, 0x8b, 0xf6, 0x13, 0x81, 0x18, 0x63, 0xdc,
+  0x3b, 0xda, 0x67, 0x4b, 0xe9, 0xf3, 0x80, 0x73, 0x85, 0x87, 0x50, 0x48,
+  0x3f, 0xd7, 0xa6, 0x22, 0xcb, 0x9a, 0x62, 0xa8, 0xc9, 0x05, 0x2a, 0x6b,
+  0x89, 0x89, 0x98, 0x8d, 0x58, 0xaa, 0xfb, 0xa5, 0x5a, 0x25, 0x47, 0x1c,
+  0x78, 0x0c, 0x71, 0x66, 0x4a, 0x14, 0x13, 0xa5, 0x01, 0xfa, 0x5b, 0x31,
+  0x90, 0x4f, 0x69, 0x11, 0x0c, 0x87, 0xcc, 0x5e, 0xec, 0x68, 0x02, 0xa7,
+  0x77, 0x14, 0x74, 0xae, 0x10, 0xdc, 0xa8, 0xcd, 0x09, 0x50, 0xd0, 0xc0,
+  0xaa, 0xf1, 0x25, 0xcf, 0x21, 0x9b, 0x54, 0x01, 0x6f, 0x48, 0x4d, 0x6e,
+  0xae, 0x0e, 0xcf, 0xa8, 0x43, 0x38, 0x62, 0x1a, 0xba, 0xa3, 0xfc, 0x66,
+  0xb5, 0xa3, 0x47, 0x12, 0xb3, 0xe1, 0xb1, 0xc5, 0x49, 0x97, 0x04, 0x52,
+  0xb3, 0x4c, 0x94, 0xfa, 0x0b, 0xcd, 0x95, 0xee, 0x68, 0x26, 0x59, 0xc3,
+  0x11, 0x68, 0xc6, 0x94, 0x21, 0x03, 0x30, 0x7f, 0x9c, 0x5d, 0x47, 0x65,
+  0x87, 0xb8, 0x6b, 0x30, 0x64, 0xdc, 0x09, 0x1a, 0x66, 0x86, 0x00, 0xaa,
+  0x40, 0x35, 0x5d, 0x2f, 0xfa, 0x09, 0x9b, 0x21, 0x52, 0xcd, 0x06, 0x55,
+  0x9d, 0xd5, 0x33, 0xff, 0x40, 0x0f, 0x34, 0x32, 0x46, 0xb0, 0x88, 0x64,
+  0x68, 0xe0, 0x66, 0x58, 0xec, 0x42, 0x72, 0xb5, 0x60, 0x42, 0x79, 0x4d,
+  0xdd, 0x1a, 0x39, 0x4b, 0x7d, 0x40, 0x18, 0x6b, 0xe3, 0xe2, 0xd6, 0xc3,
+  0x4a, 0x45, 0x4b, 0xd9, 0xcc, 0xae, 0x89, 0x48, 0x01, 0x6f, 0xff, 0xf9,
+  0x1f, 0xfa, 0xcb, 0x8f, 0x48, 0xa9, 0x7f, 0x2a, 0xa5, 0xb4, 0xce, 0x24,
+  0xf1, 0x7c, 0xf9, 0xec, 0xe2, 0xfa, 0x33, 0x51, 0xe5, 0x27, 0x4c, 0x8e,
+  0x65, 0xd2, 0x20, 0x3a, 0x32, 0x0d, 0xf8, 0xe7, 0x9e, 0x51, 0x88, 0x64,
+  0x90, 0x04, 0x01, 0xbe, 0xc8, 0x68, 0x1d, 0xdc, 0x7b, 0xfe, 0x15, 0x64,
+  0xc3, 0x1f, 0xf2, 0x2e, 0x75, 0x41, 0x2c, 0x61, 0x26, 0x97, 0x14, 0x93,
+  0x41, 0xc0, 0x53, 0xda, 0xc5, 0x1f, 0x4a, 0xc1, 0x0a, 0x06, 0x9b, 0x5c,
+  0xe2, 0xb6, 0xfc, 0xf3, 0xb0, 0x81, 0xac, 0xb9, 0x91, 0xe2, 0x20, 0x6d,
+  0x60, 0x78, 0xc3, 0x38, 0x49, 0x39, 0x32, 0xce, 0xb0, 0x81, 0x42, 0x9e,
+  0x6a, 0x26, 0x48, 0x7b, 0xef, 0x09, 0x98, 0x54, 0x80, 0x7d, 0xf5, 0x65,
+  0xb2, 0x3e, 0x6c, 0x82, 0xc4, 0x9f, 0xff, 0xc1, 0xa9, 0xf6, 0xff, 0xf4,
+  0x6f, 0xfe, 0xd3, 0xf3, 0xa3, 0x3d, 0x9a, 0xd2, 0x9f, 0xe3, 0xea, 0x7e,
+  0x32, 0x28, 0xc6, 0x72, 0xf0, 0x90, 0xf8, 0x40, 0x40, 0xfd, 0x19, 0x73,
+  0x09, 0xe5, 0x3d, 0xc4, 0x0e, 0x0c, 0x67, 0x37, 0xd8, 0x10, 0x1b, 0xfd,
+  0x09, 0xc5, 0x90, 0xa1, 0x6e, 0xb0, 0x80, 0x14, 0x4e, 0xde, 0x9f, 0x23,
+  0x05, 0xc2, 0x04, 0x99, 0x40, 0x8e, 0xf6, 0x5b, 0x1b, 0x25, 0x31, 0x45,
+  0xbd, 0xc1, 0xa0, 0xee, 0x62, 0x3e, 0x4e, 0x8c, 0x17, 0x20, 0x04, 0x60,
+  0x8a, 0xf2, 0x02, 0xa6, 0xf9, 0x91, 0x60, 0x3a, 0xc4, 0x46, 0x3a, 0xe4,
+  0x9f, 0xc5, 0xe7, 0xf4, 0x33, 0x4d, 0xc7, 0xb4, 0x1d, 0xa5, 0xb4, 0x9c,
+  0xb8, 0xeb, 0x83, 0x16, 0x45, 0xa1, 0x0c, 0x6f, 0xb4, 0x85, 0x40, 0xce,
+  0x78, 0xf3, 0xa4, 0x3d, 0x98, 0x54, 0x97, 0xce, 0xb4, 0x79, 0x5b, 0x26,
+  0x98, 0xa5, 0x78, 0x99, 0xf6, 0xa2, 0x55, 0xb7, 0x37, 0xc9, 0x6e, 0x6f,
+  0xc3, 0xb3, 0x4f, 0xd3, 0x3b, 0xd8, 0x5b, 0xca, 0xb3, 0x35, 0x43, 0x80,
+  0x30, 0x4b, 0x4b, 0xec, 0xaa, 0x65, 0x7f, 0x29, 0xa5, 0x58, 0x36, 0x97,
+  0xc6, 0x8c, 0xbb, 0x78, 0xfa, 0x73, 0x3e, 0xaa, 0xd2, 0xe8, 0x23, 0xe3,
+  0x3e, 0x67, 0x37, 0xe9, 0xe2, 0x61, 0x88, 0xa8, 0xa8, 0x9e, 0x4e, 0xb8,
+  0x67, 0x97, 0x16, 0x7e, 0xb8, 0x30, 0xa6, 0x0c, 0x88, 0xcf, 0x19, 0x35,
+  0xbd, 0x87, 0x86, 0xe3, 0xf8, 0x2e, 0xb9, 0x8a, 0x25, 0xef, 0x15, 0x1d,
+  0xf3, 0xd9, 0x85, 0xb1, 0xa3, 0x6a, 0xac, 0x0c, 0xc7, 0xcc, 0x63, 0x1a,
+  0xf7, 0x81, 0x3d, 0x2a, 0x08, 0x17, 0xd0, 0x15, 0xb8, 0x9c, 0x7d, 0x7b,
+  0x4a, 0x0e, 0x48, 0xc9, 0xe1, 0xe2, 0xa4, 0xad, 0x12, 0x93, 0xbd, 0x16,
+  0x0f, 0x67, 0x33, 0xc1, 0x24, 0x46, 0x7e, 0x8c, 0x61, 0x00, 0x4a, 0xdb,
+  0x9b, 0x71, 0x00, 0x01, 0xaf, 0x25, 0xb8, 0xea, 0x30, 0x84, 0x14, 0xc8,
+  0x35, 0x8a, 0x02, 0xb7, 0x14, 0x25, 0xb6, 0xfc, 0xa7, 0x93, 0x51, 0xc6,
+  0x8e, 0xa7, 0xd8, 0xc9, 0x24, 0xf3, 0x98, 0xeb, 0xa2, 0x9e, 0x7e, 0x04,
+  0x1e, 0x2d, 0xef, 0x3f, 0x52, 0x75, 0xc4, 0xb9, 0x13, 0xb0, 0xa4, 0x1f,
+  0x10, 0xa9, 0x18, 0xc7, 0x6d, 0x36, 0xc5, 0x39, 0xd1, 0x71, 0x1b, 0x17,
+  0xec, 0x78, 0x78, 0x68, 0x5a, 0xcd, 0xf2, 0x06, 0x07, 0x41, 0xb6, 0x3d,
+  0x0d, 0xf4, 0xf9, 0x7e, 0xb4, 0x1c, 0xda, 0x64, 0x50, 0x53, 0x5d, 0x4a,
+  0x0f, 0x10, 0x37, 0x70, 0x07, 0x19, 0xcc, 0x22, 0x0a, 0xb6, 0x05, 0x6c,
+  0xfd, 0x1f, 0x05, 0x92, 0x6c, 0xe4, 0x5b, 0x33, 0xf5, 0x39, 0x53, 0x0c,
+  0xf3, 0x3e, 0x0d, 0xcb, 0xcf, 0x99, 0x17, 0x57, 0xb3, 0xb4, 0xe7, 0x35,
+  0x7f, 0x3a, 0xfa, 0xc5, 0x78, 0xf1, 0xbc, 0x64, 0x59, 0xab, 0x12, 0x8a,
+  0x27, 0xfb, 0x7d, 0x8d, 0x33, 0x77, 0x88, 0xee, 0x2d, 0xbc, 0xf8, 0xf0,
+  0xec, 0x4c, 0x55, 0x34, 0x1f, 0x20, 0xfc, 0x99, 0x53, 0x2a, 0xcd, 0xf6,
+  0x0f, 0xc1, 0x1b, 0x98, 0x63, 0x88, 0x21, 0xe2, 0x50, 0xfb, 0xda, 0xb6,
+  0xc7, 0xcb, 0xad, 0x10, 0xdf, 0x08, 0x1c, 0xf0, 0x9f, 0x2a, 0xfa, 0xac,
+  0xb9, 0x79, 0xa3, 0xff, 0xec, 0x9f, 0xbe, 0x8b, 0x8a, 0xc1, 0x4f, 0x48,
+  0x2c, 0x8e, 0xeb, 0x63, 0x21, 0x8a, 0x11, 0xac, 0xd7, 0x69, 0xa0, 0x6a,
+  0x8f, 0xca, 0x51, 0x3e, 0x66, 0x53, 0x57, 0x08, 0x1c, 0x83, 0xa9, 0x90,
+  0x8c, 0x46, 0x54, 0x09, 0x2c, 0x42, 0x89, 0xab, 0x56, 0x30, 0x03, 0x4d,
+  0x7e, 0x40, 0x47, 0xe5, 0x41, 0x0a, 0x0f, 0x19, 0x23, 0x8d, 0x5c, 0x9b,
+  0x0e, 0x16, 0x40, 0xac, 0xba, 0x9a, 0x7a, 0x3a, 0xd1, 0x8f, 0xb1, 0x13,
+  0x08, 0x32, 0x47, 0xbe, 0x03, 0x64, 0xce, 0x0a, 0x48, 0x57, 0x37, 0x2b,
+  0xe0, 0xe9, 0x36, 0x1a, 0x5e, 0x37, 0xe7, 0xed, 0x4c, 0xec, 0x81, 0x15,
+  0xd8, 0x36, 0x51, 0x9f, 0x78, 0xf9, 0x2d, 0x8c, 0xdb, 0xe4, 0x90, 0x8e,
+  0x76, 0x5f, 0x7e, 0xae, 0x79, 0x1a, 0xad, 0xaf, 0xb2, 0x66, 0xff, 0x30,
+  0xe9, 0x24, 0x05, 0xad, 0x71, 0xb7, 0x6c, 0x05, 0xb8, 0x00, 0x96, 0xf7,
+  0xd1, 0xb6, 0x43, 0x8d, 0xde, 0xf1, 0x6a, 0x71, 0xb9, 0xa0, 0x05, 0xd9,
+  0x46, 0xa9, 0xd4, 0xe8, 0x40, 0x66, 0x23, 0x13, 0x09, 0xaa, 0xef, 0x91,
+  0xaf, 0xcd, 0x87, 0xbe, 0x68, 0x92, 0xf0, 0xcd, 0xa1, 0x14, 0x1a, 0xb7,
+  0xfb, 0x23, 0x04, 0x28, 0xb0, 0xf8, 0x8b, 0x0a, 0x0b, 0xbb, 0x8a, 0xe9,
+  0x0d, 0x09, 0xe5, 0xc5, 0xc2, 0x11, 0x0a, 0xc4, 0xca, 0xfc, 0x17, 0xb9,
+  0x3a, 0x09, 0x91, 0xd3, 0x08, 0xed, 0xc1, 0x38, 0x1f, 0x28, 0xfe, 0x59,
+  0xcf, 0x2a, 0x8e, 0x64, 0x1c, 0xf7, 0x51, 0x5b, 0xf2, 0x34, 0xcd, 0x28,
+  0x54, 0x65, 0xd0, 0xa2, 0xff, 0xf6, 0x1c, 0xfa, 0xeb, 0xa7, 0x2b, 0x43,
+  0x7f, 0xa2, 0x84, 0xfe, 0x90, 0x65, 0x14, 0xea, 0x18, 0x17, 0x05, 0xd6,
+  0xd8, 0x58, 0xbe, 0x78, 0x24, 0x17, 0x7c, 0xe2, 0xb5, 0x6d, 0x66, 0x0d,
+  0xc4, 0x3d, 0xb4, 0x94, 0x0d, 0x62, 0xab, 0x52, 0x54, 0xa1, 0x26, 0x85,
+  0x8c, 0x60, 0xe9, 0xae, 0xb0, 0xcf, 0x17, 0xe7, 0x98, 0x3c, 0x70, 0x6b,
+  0x88, 0x34, 0x16, 0xc5, 0x98, 0x3a, 0xc1, 0x73, 0x09, 0xd1, 0xcf, 0x69,
+  0x59, 0x88, 0x42, 0x64, 0xe4, 0xd3, 0x53, 0xd5, 0x13, 0x92, 0xb6, 0x1f,
+  0xab, 0x6a, 0x8c, 0x12, 0x34, 0xbb, 0xb8, 0x07, 0x22, 0x56, 0x73, 0x91,
+  0x4d, 0xdd, 0x95, 0xf2, 0x73, 0x7a, 0x9e, 0x1d, 0xd7, 0xeb, 0x0a, 0xf7,
+  0xf9, 0x9c, 0xa6, 0x98, 0xd6, 0x19, 0x6e, 0x47, 0xda, 0x3e, 0xdc, 0xa8,
+  0xe9, 0xd0, 0xe7, 0x6d, 0x56, 0x87, 0x5c, 0x27, 0x46, 0x8f, 0xec, 0x45,
+  0x1b, 0xe2, 0xcc, 0x7a, 0x90, 0x70, 0x8d, 0x91, 0x70, 0x10, 0x9b, 0xc8,
+  0xd4, 0x64, 0xa4, 0xdd, 0xd0, 0x41, 0x56, 0x7e, 0xf9, 0x48, 0x2e, 0x31,
+  0xce, 0x3e, 0x92, 0xba, 0x36, 0x73, 0x28, 0x70, 0x50, 0x3a, 0xc9, 0x9a,
+  0x3f, 0x14, 0x9f, 0xa0, 0xbe, 0x31, 0x0e, 0x74, 0x03, 0x8c, 0x7c, 0x15,
+  0x9c, 0xea, 0x36, 0x88, 0x03, 0x1d, 0xe6, 0x5c, 0x2d, 0x04, 0xf4, 0x25,
+  0x46, 0xd8, 0x9b, 0x98, 0x7e, 0x51, 0x45, 0xf3, 0xfc, 0x75, 0x8e, 0xec,
+  0x5b, 0xeb, 0xaa, 0xc2, 0xaf, 0x5a, 0xbc, 0xa4, 0xd0, 0x51, 0x5b, 0x12,
+  0x82, 0x9b, 0x18, 0xd6, 0x33, 0x10, 0xc3, 0x98, 0xd4, 0x9d, 0x7c, 0xf2,
+  0xa8, 0xb3, 0x1b, 0xdd, 0x52, 0xa2, 0x1c, 0x19, 0xe2, 0x97, 0x04, 0xef,
+  0x5d, 0xf4, 0x7c, 0x3a, 0x21, 0x1c, 0x66, 0x83, 0xf9, 0xdf, 0xf3, 0x8f,
+  0xf6, 0x4c, 0x32, 0xae, 0x49, 0xa5, 0x52, 0xa5, 0x7e, 0x19, 0x6e, 0x7d,
+  0x16, 0xdc, 0x1c, 0x54, 0xa1, 0xcc, 0x3d, 0x29, 0x27, 0x8e, 0xd4, 0x2a,
+  0xbc, 0x2e, 0x5b, 0xb7, 0xe5, 0xd3, 0x2f, 0x19, 0x7b, 0x35, 0xca, 0xcd,
+  0x48, 0x17, 0x63, 0x51, 0x86, 0xaf, 0x3e, 0x99, 0x95, 0xde, 0x7d, 0xe7,
+  0x56, 0xd7, 0x7b, 0xf0, 0xe6, 0xfb, 0x65, 0x57, 0x9f, 0x4a, 0x79, 0xd1,
+  0x19, 0x7f, 0x0b, 0x7d, 0xd1, 0x48, 0xa1, 0x55, 0xbf, 0x55, 0x61, 0xc7,
+  0xe8, 0xab, 0x81, 0x8c, 0x6a, 0x29, 0x02, 0x72, 0xf9, 0x03, 0x39, 0x50,
+  0x7e, 0xbc, 0x8a, 0x10, 0xff, 0x94, 0xe4, 0x14, 0x61, 0x4b, 0x63, 0x64,
+  0x09, 0x75, 0xe2, 0xae, 0x05, 0x61, 0x2e, 0xda, 0x9a, 0x3e, 0x7c, 0xde,
+  0xd5, 0xe4, 0xb8, 0x9a, 0xe6, 0xc1, 0xc3, 0x8d, 0x18, 0xfe, 0x1f, 0x4d,
+  0x9f, 0x76, 0xe6, 0x9f, 0xba, 0xa8, 0x51, 0x49, 0x49, 0x26, 0x40, 0x18,
+  0x92, 0x67, 0xdc, 0xc7, 0xc1, 0xde, 0x16, 0xfa, 0xfc, 0x83, 0xaa, 0xa2,
+  0xdb, 0x8d, 0x82, 0xba, 0x05, 0xc8, 0x96, 0x63, 0x59, 0xdc, 0x3a, 0x77,
+  0x96, 0xd0, 0x5d, 0x78, 0xe4, 0xa5, 0x5f, 0xa2, 0x13, 0x3b, 0xbd, 0x53,
+  0x6c, 0x02, 0x6d, 0x76, 0x14, 0x5c, 0x96, 0x26, 0x3b, 0x49, 0xce, 0x00,
+  0xad, 0xaa, 0xbd, 0x28, 0x85, 0x19, 0x31, 0x2b, 0xa2, 0x21, 0x1f, 0x98,
+  0xc7, 0xdc, 0x2f, 0xaa, 0x38, 0x5c, 0xf4, 0x45, 0x4b, 0x46, 0xf2, 0x8f,
+  0x91, 0x3d, 0xf7, 0x20, 0xe7, 0xb9, 0xc2, 0x36, 0xfc, 0x69, 0x29, 0xd5,
+  0x8c, 0x82, 0x7b, 0x48, 0xd7, 0x6f, 0xfb, 0xf3, 0x5a, 0x25, 0xf9, 0x2f,
+  0xbb, 0x87, 0xd8, 0x5c, 0xde, 0xf2, 0x26, 0x2e, 0x2b, 0xc1, 0x5c, 0xc0,
+  0x4b, 0xbb, 0x5d, 0xfc, 0x8c, 0xe3, 0x08, 0x80, 0x0b, 0xb1, 0x9a, 0x95,
+  0x9c, 0xc7, 0xf4, 0xa0, 0x6f, 0xc5, 0x78, 0x8c, 0xcd, 0x78, 0xd8, 0xc1,
+  0x04, 0x89, 0x34, 0xa5, 0xe8, 0x3f, 0xa6, 0xb8, 0xcc, 0x99, 0x95, 0xa1,
+  0xb6, 0x3b, 0x2b, 0xf9, 0x61, 0x7b, 0x4e, 0x76, 0x52, 0x4b, 0xce, 0x8a,
+  0xc7, 0x7b, 0xcc, 0x9c, 0x96, 0x57, 0x56, 0x5a, 0xda, 0x4a, 0x5b, 0x3f,
+  0x69, 0x28, 0x20, 0x8f, 0xba, 0xc1, 0x17, 0xeb, 0x27, 0x0d, 0x15, 0xe4,
+  0x61, 0x41, 0xe6, 0xe8, 0x27, 0x9f, 0xf8, 0xae, 0x68, 0x6c, 0xc6, 0xa7,
+  0xff, 0xf7, 0x9a, 0xdc, 0xdf, 0x7c, 0xdd, 0x53, 0x63, 0x60, 0xd4, 0x2a,
+  0x39, 0x4d, 0xb4, 0x1d, 0x66, 0x08, 0xf6, 0xd5, 0x8b, 0xc2, 0xb5, 0x88,
+  0xea, 0x30, 0xe5, 0xc6, 0x77, 0xea, 0xf5, 0x64, 0x0d, 0xb3, 0xb7, 0x8c,
+  0x8a, 0xf9, 0x2c, 0xa4, 0x9a, 0x4b, 0xe0, 0xe2, 0x77, 0x5a, 0x83, 0xef,
+  0xf4, 0xed, 0xd9, 0x53, 0xfd, 0xb0, 0xe8, 0x91, 0x8a, 0xc9, 0x6e, 0x44,
+  0x9e, 0x62, 0x5b, 0x2e, 0x68, 0x9a, 0xbd, 0x71, 0xe3, 0x2a, 0x8c, 0x19,
+  0x73, 0x28, 0xe6, 0x01, 0xdf, 0x06, 0x3d, 0xae, 0xa5, 0x63, 0x0c, 0xd0,
+  0xd2, 0xf4, 0x29, 0x04, 0x49, 0x86, 0x37, 0xe3, 0xc7, 0x64, 0x3a, 0x95,
+  0xbb, 0xff, 0x61, 0x06, 0xe7, 0xee, 0x1b, 0x08, 0x29, 0x42, 0x67, 0x86,
+  0xfb, 0x9c, 0xd4, 0x45, 0x71, 0x6d, 0xcb, 0xa9, 0xc8, 0x8c, 0x43, 0xc8,
+  0xb5, 0x07, 0x19, 0x7c, 0x1c, 0xe9, 0x29, 0x59, 0xef, 0xf7, 0xdf, 0xac,
+  0xa7, 0xf5, 0x50, 0x95, 0x90, 0x75, 0x9b, 0xaf, 0x6f, 0x9c, 0x5a, 0x0f,
+  0x0c, 0x47, 0x7a, 0x10, 0x96, 0xea, 0x12, 0xab, 0x9b, 0xa8, 0x55, 0x2f,
+  0xb8, 0xe4, 0xa6, 0x8f, 0xe9, 0x57, 0x5e, 0x94, 0xf4, 0x51, 0xd3, 0xb5,
+  0xb4, 0xdc, 0x72, 0x34, 0x45, 0xd4, 0xc2, 0xd9, 0xff, 0xf4, 0xf0, 0xa9,
+  0x7d, 0x60, 0x29, 0xe8, 0x6e, 0xc4, 0x0c, 0xda, 0xd9, 0xf4, 0x77, 0xdf,
+  0x3d, 0xaa, 0xde, 0x47, 0x6f, 0x27, 0x67, 0xa2, 0x51, 0xc2, 0xf1, 0xc3,
+  0x13, 0x9e, 0xa2, 0x6b, 0x90, 0x95, 0xbd, 0x47, 0x08, 0xd4, 0x47, 0x4f,
+  0xf9, 0xd1, 0x33, 0x66, 0x24, 0x18, 0x55, 0x37, 0x71, 0xc2, 0x14, 0x67,
+  0x92, 0xa4, 0x03, 0x12, 0x4d, 0x83, 0xf4, 0xd2, 0x4f, 0x36, 0x0a, 0x5e,
+  0xe0, 0x9a, 0x9a, 0x95, 0x50, 0x59, 0x59, 0x1a, 0x9b, 0x71, 0xa5, 0x3c,
+  0xa7, 0x92, 0x4a, 0x9e, 0xcb, 0xe2, 0xc1, 0xd9, 0x25, 0xd2, 0xaf, 0x09,
+  0x45, 0xbe, 0x13, 0x48, 0x1b, 0x2a, 0xff, 0x38, 0xf5, 0xc6, 0xc0, 0x3a,
+  0x0f, 0x0d, 0x87, 0x1a, 0x2e, 0xd7, 0xd8, 0xdf, 0x60, 0x92, 0xe0, 0x9c,
+  0xbd, 0x30, 0x86, 0xd8, 0x43, 0xec, 0x81, 0x99, 0x83, 0xe3, 0xb1, 0x31,
+  0xdc, 0x1e, 0xbc, 0x6e, 0xe0, 0xaa, 0x9a, 0x2a, 0x79, 0x90, 0x2f, 0x88,
+  0x4d, 0x98, 0x4d, 0xbb, 0x7a, 0x30, 0xba, 0xd1, 0xa3, 0x59, 0x81, 0x52,
+  0xdd, 0x0d, 0x6d, 0xb5, 0xdd, 0x93, 0x96, 0xd9, 0x51, 0x53, 0x3b, 0xfc,
+  0x65, 0x32, 0x54, 0x5b, 0xfc, 0xa1, 0xd9, 0x91, 0xa7, 0xa9, 0xd7, 0x22,
+  0x82, 0x45, 0xcc, 0x33, 0xca, 0x02, 0x67, 0xec, 0x3e, 0xea, 0xaa, 0x46,
+  0xe4, 0x31, 0xa4, 0x93, 0xc9, 0xf9, 0x71, 0x88, 0x55, 0x85, 0xc9, 0x4f,
+  0xf3, 0xf8, 0x83, 0x0f, 0x03, 0x26, 0x41, 0xa3, 0x0e, 0x6b, 0x4f, 0x42,
+  0xe3, 0x20, 0x44, 0x4b, 0xa8, 0x9f, 0x26, 0x1f, 0xdc, 0x66, 0x53, 0xb7,
+  0x0e, 0x3c, 0x47, 0x5b, 0xc7, 0x55, 0xf1, 0xb0, 0xbe, 0x46, 0xf4, 0xa4,
+  0x15, 0x71, 0xa5, 0x18, 0xe6, 0xd5, 0xf3, 0xd5, 0x08, 0x86, 0x1c, 0x1e,
+  0x83, 0x5a, 0x19, 0xe0, 0x61, 0xc7, 0x3f, 0xec, 0x48, 0x78, 0x03, 0x44,
+  0x9f, 0x6f, 0xaa, 0xf7, 0x3e, 0x95, 0x4d, 0x37, 0x17, 0xca, 0x0c, 0xa7,
+  0xea, 0x93, 0xc7, 0xb0, 0x04, 0x1a, 0xb6, 0x81, 0x93, 0xc7, 0x0e, 0x1f,
+  0xcf, 0x62, 0xb5, 0x96, 0x73, 0x4a, 0x91, 0xe1, 0x47, 0x04, 0x1a, 0x61,
+  0x24, 0xb0, 0xc3, 0xbd, 0x91, 0xb2, 0x7c, 0x94, 0xde, 0x35, 0xdc, 0x01,
+  0x99, 0xcd, 0xc9, 0xeb, 0x46, 0x1b, 0x31, 0x3d, 0xf0, 0xa0, 0x89, 0xf2,
+  0x2a, 0x8d, 0x09, 0x5f, 0x06, 0x55, 0x32, 0x18, 0x16, 0xbb, 0x2d, 0x5d,
+  0x25, 0x7a, 0xec, 0x2a, 0x2e, 0xfc, 0x73, 0x3e, 0xf4, 0xd0, 0xa1, 0xa3,
+  0x7c, 0x85, 0x32, 0x03, 0xc9, 0x1a, 0xe9, 0xb0, 0x84, 0xc0, 0xf5, 0x98,
+  0x55, 0xda, 0xa0, 0xe6, 0x7c, 0x7a, 0x11, 0xb9, 0x6d, 0xa1, 0x29, 0xf9,
+  0x3f, 0x50, 0x53, 0x7e, 0x60, 0xa7, 0x24, 0x4e, 0xa9, 0x00, 0xd0, 0x0c,
+  0x7a, 0x87, 0x91, 0x4a, 0x4d, 0xe4, 0x10, 0x17, 0x9a, 0x36, 0xbe, 0xdc,
+  0x7b, 0x8c, 0x23, 0xb9, 0xfa, 0x83, 0xeb, 0xb0, 0x6e, 0xa3, 0x95, 0x3f,
+  0xff, 0xc3, 0x78, 0x4d, 0xfe, 0xf9, 0x43, 0xbe, 0xf2, 0x00, 0x10, 0xcc,
+  0x5d, 0x02, 0x72, 0x28, 0x54, 0x10, 0x59, 0x25, 0x74, 0xaf, 0xdb, 0x86,
+  0xd5, 0x5c, 0xc3, 0xda, 0xc4, 0x72, 0xae, 0x09, 0xa2, 0x58, 0xec, 0x32,
+  0xd6, 0xed, 0x03, 0x25, 0xb3, 0x60, 0x03, 0x51, 0xf6, 0x0f, 0x07, 0x75,
+  0x27, 0x69, 0x9d, 0x30, 0xe4, 0x2c, 0xfc, 0x8c, 0x32, 0x9b, 0x47, 0xda,
+  0x61, 0x1d, 0xe7, 0x92, 0x81, 0x5a, 0x8c, 0x09, 0x3f, 0xb6, 0xe5, 0x4a,
+  0xa0, 0x8a, 0x54, 0x10, 0x61, 0xe8, 0x6b, 0xc6, 0xc9, 0x7e, 0x37, 0xba,
+  0xec, 0x31, 0x9f, 0xf5, 0xa8, 0x5c, 0x43, 0x07, 0x43, 0xd9, 0xd3, 0x25,
+  0x09, 0x8d, 0x66, 0x7f, 0x68, 0x38, 0xcd, 0x3b, 0x88, 0x22, 0x4e, 0x3c,
+  0xf0, 0x86, 0x9e, 0x90, 0xcc, 0xc0, 0xdf, 0x99, 0x51, 0x05, 0x9f, 0x2c,
+  0x04, 0xe2, 0xa4, 0x35, 0xc7, 0xa6, 0x34, 0x48, 0x73, 0xcc, 0xcc, 0x6a,
+  0xed, 0x42, 0x31, 0x43, 0x05, 0x98, 0xb9, 0x64, 0xb8, 0x28, 0xcf, 0x1d,
+  0x9b, 0x55, 0xd5, 0x6c, 0x79, 0xc4, 0x42, 0xda, 0xd4, 0x28, 0x2e, 0x68,
+  0x15, 0x68, 0x4a, 0x07, 0x79, 0xe0, 0xf5, 0xf1, 0xc9, 0x91, 0x29, 0x84,
+  0xf8, 0xff, 0xd6, 0x7b, 0xf8, 0x72, 0x39, 0xf4, 0x52, 0xee, 0x19, 0xe0,
+  0xc5, 0x41, 0xeb, 0x11, 0x04, 0x98, 0xaf, 0xd1, 0x94, 0xd2, 0x1f, 0x37,
+  0xe0, 0x5f, 0x8e, 0xde, 0x7d, 0x73, 0xfc, 0xfe, 0xf4, 0xdd, 0xdb, 0xa3,
+  0x77, 0xe7, 0x9f, 0xb8, 0xd9, 0x14, 0x81, 0x76, 0xb0, 0x95, 0x9f, 0xcd,
+  0x95, 0x61, 0xdc, 0xfb, 0x96, 0x70, 0x27, 0xb8, 0x21, 0x35, 0x10, 0x4f,
+  0xfe, 0xd5, 0x73, 0x87, 0x73, 0x1e, 0xd2, 0x30, 0x2c, 0xe6, 0x97, 0x4e,
+  0xd1, 0xf5, 0x39, 0xc2, 0x44, 0x96, 0x1e, 0x07, 0x6e, 0xb9, 0x9b, 0x74,
+  0xc6, 0x1d, 0x69, 0xef, 0xb0, 0x9d, 0x1c, 0xd5, 0x10, 0x81, 0xac, 0x30,
+  0x66, 0x8f, 0xa6, 0x2f, 0xd8, 0x18, 0x6a, 0x63, 0x12, 0x96, 0xfc, 0x1f,
+  0x38, 0xff, 0x05, 0x6d, 0xb6, 0xd0, 0x6a, 0x14, 0x40, 0x9e, 0xb4, 0x36,
+  0x6e, 0x62, 0x9d, 0x54, 0x56, 0x6a, 0x4a, 0x63, 0x6e, 0x2b, 0x2f, 0x9d,
+  0x0e, 0x4d, 0x77, 0xa6, 0x37, 0xb5, 0x97, 0x42, 0xe0, 0xac, 0xe2, 0x7b,
+  0xf5, 0x61, 0xc2, 0x5e, 0xfe, 0xb8, 0x8f, 0x16, 0xc5, 0xe7, 0xdf, 0xef,
+  0x21, 0x6b, 0xfd, 0xe8, 0x77, 0x54, 0xa9, 0x9c, 0x69, 0xc8, 0x55, 0xea,
+  0x00, 0x34, 0xe0, 0x51, 0x30, 0xe4, 0xa4, 0xe0, 0xca, 0xc7, 0xb3, 0xf7,
+  0xa7, 0xdf, 0xfd, 0xed, 0x57, 0xfe, 0x84, 0x93, 0x39, 0xfa, 0x3d, 0x96,
+  0x4c, 0xe8, 0xe0, 0x3f, 0xfe, 0xea, 0x5f, 0x6b, 0x0e, 0xdf, 0x95, 0xd4,
+  0x26, 0x3a, 0xdd, 0x01, 0xad, 0x99, 0x91, 0x95, 0xc8, 0x62, 0x4f, 0xac,
+  0x67, 0xd8, 0xcd, 0x81, 0x31, 0xa9, 0xdc, 0xa4, 0xb9, 0x54, 0x4d, 0x06,
+  0x4d, 0xfc, 0xfe, 0x63, 0x3d, 0x86, 0xc3, 0xb1, 0xb9, 0xbe, 0x0a, 0xf9,
+  0x84, 0xb0, 0x4e, 0x02, 0xfc, 0x44, 0x15, 0x24, 0x86, 0x20, 0x07, 0x27,
+  0x27, 0xbf, 0x2a, 0x15, 0xe0, 0x22, 0x43, 0x54, 0x7d, 0x1d, 0x2b, 0x36,
+  0x76, 0x84, 0x3c, 0xfd, 0x40, 0x67, 0x9b, 0x77, 0xa7, 0x32, 0x9b, 0x7d,
+  0x32, 0x61, 0xe2, 0x2a, 0x05, 0xc3, 0x23, 0xc1, 0xb8, 0xac, 0x36, 0x78,
+  0xc3, 0x89, 0x55, 0xeb, 0x5c, 0xba, 0x50, 0x7d, 0xee, 0x65, 0x5c, 0x4a,
+  0x5c, 0x92, 0xec, 0x5c, 0x2a, 0x6c, 0x60, 0x6a, 0x0a, 0x28, 0x02, 0x15,
+  0x6b, 0x16, 0x06, 0xaa, 0x14, 0x33, 0x3d, 0xb9, 0x90, 0x02, 0xe5, 0x28,
+  0x4c, 0xc4, 0x07, 0x93, 0x43, 0xd8, 0x19, 0x90, 0xa3, 0x65, 0x56, 0x5d,
+  0x53, 0x29, 0x2b, 0x1e, 0x51, 0x52, 0x7c, 0x15, 0x5d, 0x0b, 0x0d, 0x13,
+  0x9a, 0x53, 0x8f, 0xb1, 0x01, 0x2d, 0x26, 0x41, 0x56, 0x85, 0x66, 0x87,
+  0xca, 0x41, 0xc2, 0x2a, 0x03, 0x7a, 0xf7, 0x39, 0xf0, 0x92, 0x34, 0x2a,
+  0xe4, 0xa5, 0x49, 0x1e, 0xa7, 0xad, 0x56, 0x06, 0x05, 0x2c, 0x04, 0x1a,
+  0xd5, 0x55, 0x90, 0x1b, 0x7c, 0x80, 0x3f, 0x5d, 0x57, 0xe9, 0xf8, 0x22,
+  0x5c, 0x3b, 0x1a, 0x14, 0x17, 0x82, 0xbf, 0x55, 0x69, 0x3d, 0xa8, 0x72,
+  0x2b, 0x6e, 0x56, 0x4a, 0x60, 0x92, 0x18, 0xb1, 0xf3, 0x3d, 0xa6, 0x0a,
+  0x44, 0xe0, 0xe6, 0x47, 0xdd, 0x51, 0x7e, 0x94, 0xbc, 0x6c, 0x11, 0x41,
+  0x38, 0x33, 0x57, 0xf7, 0xf6, 0xb3, 0x91, 0x5f, 0x75, 0x8e, 0x2d, 0x17,
+  0xdc, 0x82, 0x7c, 0xb9, 0xcd, 0xe3, 0x3b, 0x96, 0x3c, 0xc0, 0x92, 0xbc,
+  0x4f, 0x8d, 0x67, 0xe4, 0x37, 0x8f, 0x19, 0xce, 0xc1, 0xc6, 0xe2, 0xa9,
+  0x46, 0x35, 0x56, 0x81, 0xd4, 0x91, 0x80, 0x78, 0xb1, 0xad, 0x44, 0x20,
+  0x99, 0x7e, 0x85, 0xa5, 0x33, 0xf1, 0x45, 0x13, 0x9d, 0x3b, 0xd3, 0x40,
+  0x26, 0x0f, 0x3c, 0x86, 0xb1, 0x21, 0x46, 0x7f, 0x74, 0xc7, 0x33, 0xf3,
+  0x24, 0x2b, 0x84, 0xe7, 0xc8, 0xfa, 0xa6, 0xa2, 0xeb, 0xa6, 0xa1, 0xd8,
+  0x76, 0x30, 0xe1, 0xd1, 0x3d, 0x32, 0x72, 0x18, 0x0c, 0x8c, 0x12, 0x19,
+  0x57, 0x5a, 0x2d, 0xed, 0xc4, 0xd3, 0x24, 0x1f, 0xc7, 0xc3, 0x43, 0xa1,
+  0x54, 0x72, 0xad, 0xfb, 0xa6, 0x42, 0x20, 0x53, 0xa2, 0x20, 0x67, 0x8b,
+  0x30, 0x0a, 0x06, 0x0a, 0xd5, 0xa2, 0x31, 0x63, 0xb8, 0x03, 0xc7, 0x45,
+  0x15, 0xea, 0x06, 0x31, 0xc0, 0x7c, 0xfc, 0xb4, 0x9e, 0x53, 0x79, 0x64,
+  0x67, 0x24, 0xe1, 0x4e, 0x49, 0xf0, 0x45, 0xdb, 0x18, 0xb1, 0x4f, 0x48,
+  0x1a, 0x72, 0xa3, 0xe4, 0x2e, 0xd6, 0x32, 0x38, 0xb0, 0x2a, 0x5e, 0xfe,
+  0x02, 0x46, 0x20, 0xb9, 0x53, 0x32, 0x75, 0x50, 0x16, 0xb3, 0x4d, 0x92,
+  0x99, 0x13, 0xd3, 0xc9, 0xde, 0xdc, 0x91, 0x7b, 0x51, 0x67, 0x6f, 0x6f,
+  0xb3, 0x23, 0x01, 0x92, 0x36, 0xe7, 0x13, 0xa4, 0x42, 0x85, 0x8f, 0x6c,
+  0xe0, 0x43, 0x9c, 0x6a, 0x9b, 0x62, 0xe4, 0xd5, 0xb6, 0x64, 0xb6, 0x6b,
+  0x3a, 0x84, 0xcd, 0xfb, 0xd8, 0xef, 0x9f, 0x7c, 0xfc, 0xf2, 0xe0, 0xf0,
+  0xeb, 0xa3, 0x77, 0xaf, 0xa2, 0x7d, 0xa7, 0x18, 0xe7, 0x73, 0x5f, 0x4d,
+  0x7f, 0xa8, 0x92, 0xb1, 0xa3, 0x55, 0x40, 0x9d, 0x6e, 0x1b, 0xe0, 0x33,
+  0x6b, 0x8b, 0x2f, 0xae, 0x74, 0x31, 0xd5, 0x7d, 0xee, 0x30, 0x13, 0x69,
+  0x58, 0x9d, 0x93, 0xae, 0xef, 0x4c, 0x49, 0x54, 0xeb, 0x45, 0xd0, 0x10,
+  0x46, 0x72, 0xa8, 0xd6, 0x94, 0x1a, 0x2f, 0x23, 0x29, 0x42, 0x20, 0xb3,
+  0x0c, 0x22, 0x0d, 0xa7, 0x23, 0x5e, 0x84, 0x5c, 0xd2, 0x8e, 0x47, 0x49,
+  0x3f, 0x1e, 0x35, 0x5a, 0xd6, 0x6b, 0xe6, 0x26, 0x3a, 0x91, 0xae, 0x09,
+  0xed, 0x46, 0xd1, 0x01, 0x69, 0xd8, 0x50, 0xc9, 0xb1, 0x40, 0xfc, 0x24,
+  0x76, 0xd5, 0x89, 0x00, 0xe0, 0xe2, 0x64, 0x2c, 0xd2, 0x22, 0x5f, 0xae,
+  0x75, 0x72, 0x6f, 0xa5, 0x57, 0x18, 0x71, 0x30, 0x5c, 0xa3, 0x63, 0xa6,
+  0xcb, 0x87, 0x2a, 0x5a, 0xc5, 0x75, 0xc7, 0xce, 0xba, 0xd7, 0xf6, 0x80,
+  0x30, 0x49, 0x59, 0x55, 0xe3, 0x6e, 0x74, 0x99, 0xcf, 0xea, 0x31, 0x30,
+  0xe9, 0x65, 0x75, 0x9d, 0x79, 0xb9, 0xcf, 0x60, 0xbb, 0x8e, 0xe8, 0xb7,
+  0x30, 0x4e, 0x82, 0xf5, 0xda, 0xdd, 0x28, 0xaf, 0xe0, 0x9f, 0x60, 0xe5,
+  0xe7, 0xf4, 0x76, 0x39, 0xab, 0xe8, 0xf7, 0xd5, 0x10, 0x36, 0x2b, 0x4f,
+  0x09, 0xf9, 0x10, 0xcb, 0x6a, 0xe2, 0xa0, 0x63, 0x44, 0x3a, 0x1b, 0x16,
+  0xe3, 0x0b, 0x78, 0xd9, 0x4c, 0xfd, 0xaf, 0x27, 0xa7, 0x5f, 0xbd, 0x3a,
+  0x7e, 0x1f, 0xed, 0x37, 0x11, 0x95, 0x03, 0xdc, 0x17, 0x64, 0xbf, 0x66,
+  0x81, 0x63, 0xd7, 0x80, 0x34, 0xd6, 0xad, 0x2b, 0xc5, 0xeb, 0xae, 0x6a,
+  0xf5, 0xd1, 0x44, 0x92, 0xe4, 0xec, 0x04, 0x5a, 0x7b, 0x81, 0x52, 0x6c,
+  0x34, 0xc3, 0x8a, 0xfd, 0xbf, 0x8f, 0x8b, 0xcb, 0x2a, 0x10, 0x85, 0x61,
+  0x1e, 0x37, 0x03, 0x74, 0x0d, 0xc2, 0x10, 0x1b, 0x74, 0xbc, 0x13, 0xf8,
+  0xe7, 0x48, 0x8a, 0x47, 0x28, 0x04, 0x9c, 0x22, 0x02, 0x54, 0x28, 0x40,
+  0xe5, 0x36, 0x0b, 0x1a, 0x45, 0xab, 0xc0, 0x29, 0x57, 0xe9, 0xdd, 0x5a,
+  0x2f, 0x7a, 0x45, 0xa7, 0xd8, 0xcd, 0xe7, 0xaa, 0x52, 0xad, 0xd3, 0xd3,
+  0x38, 0x09, 0xc8, 0x20, 0xaf, 0x49, 0x49, 0x42, 0xf7, 0x38, 0x95, 0x16,
+  0xf6, 0xa2, 0x6f, 0xa9, 0x69, 0x25, 0x11, 0x6f, 0x50, 0xc0, 0x1f, 0xd8,
+  0x3d, 0x28, 0x50, 0x80, 0x07, 0xbc, 0xf4, 0xf5, 0xd1, 0xdf, 0x60, 0x73,
+  0xd0, 0x08, 0x62, 0x78, 0xf1, 0xb9, 0x1b, 0xc3, 0x28, 0x63, 0x69, 0xed,
+  0x51, 0xbd, 0x45, 0x67, 0x33, 0x88, 0x03, 0xa3, 0xe5, 0x45, 0xaa, 0xf0,
+  0xf0, 0x73, 0xfb, 0x1d, 0x44, 0x4a, 0x11, 0x90, 0x2b, 0x50, 0x1c, 0x1c,
+  0xaa, 0x48, 0x2e, 0x5d, 0xc2, 0xd8, 0xff, 0x7c, 0x20, 0xe5, 0x20, 0xfa,
+  0x4a, 0x12, 0x57, 0x36, 0x33, 0x56, 0x06, 0xaa, 0x4c, 0xc9, 0xf8, 0xfe,
+  0xe7, 0xd4, 0x34, 0x4d, 0x04, 0x4e, 0xbd, 0x40, 0x0d, 0x10, 0x06, 0x44,
+  0xc8, 0x08, 0xf6, 0xad, 0xf1, 0xe6, 0xe5, 0xa9, 0xa7, 0xd5, 0x30, 0x22,
+  0x25, 0x0d, 0xc1, 0x01, 0x25, 0x2c, 0x78, 0x53, 0x78, 0xd5, 0x6f, 0xb1,
+  0xcd, 0xce, 0x55, 0x52, 0x5e, 0x8b, 0xa7, 0xe5, 0xd6, 0x12, 0x9a, 0x8b,
+  0x5d, 0xc6, 0x3e, 0x44, 0xf4, 0x2d, 0x71, 0x09, 0x35, 0x15, 0xd2, 0x2d,
+  0xd8, 0xd3, 0xfe, 0x9e, 0x84, 0xab, 0x80, 0xb7, 0x0b, 0x9c, 0xab, 0x2f,
+  0x0b, 0xbc, 0x4d, 0xe8, 0x87, 0xdc, 0xf2, 0xb3, 0x1b, 0xbd, 0xeb, 0xf7,
+  0x03, 0x68, 0x2e, 0x78, 0xbc, 0xe0, 0x31, 0xd8, 0x47, 0x56, 0x55, 0xe1,
+  0xcf, 0xf3, 0xd3, 0xc3, 0xd3, 0x13, 0xf8, 0xcb, 0xd1, 0xeb, 0xe3, 0xef,
+  0xac, 0x39, 0x7b, 0x6e, 0x75, 0x64, 0x2e, 0x49, 0xf2, 0xd0, 0xb4, 0x05,
+  0x10, 0xcb, 0xd1, 0xbc, 0x09, 0xff, 0x2f, 0xbb, 0x63, 0x3f, 0x46, 0xb3,
+  0x6b, 0xb1, 0x2b, 0xca, 0x78, 0x58, 0x53, 0x11, 0x68, 0x79, 0x0a, 0x79,
+  0xc5, 0x55, 0xc0, 0xc9, 0x8d, 0xe0, 0x5a, 0x0d, 0x75, 0x7b, 0x52, 0x70,
+  0x1b, 0x48, 0x67, 0x55, 0xf9, 0x01, 0x7a, 0x0c, 0x3e, 0x31, 0x25, 0x31,
+  0x72, 0xa3, 0x61, 0x79, 0x87, 0xed, 0x35, 0x9b, 0xa7, 0x5d, 0x67, 0x20,
+  0x75, 0x15, 0xd5, 0xb0, 0xbd, 0xb5, 0x94, 0x42, 0x49, 0x2e, 0x59, 0x4b,
+  0x39, 0x21, 0x98, 0x09, 0x33, 0x4c, 0x73, 0x11, 0xb2, 0x72, 0xb9, 0xe7,
+  0x29, 0x87, 0x07, 0x5d, 0x5f, 0xd5, 0x5e, 0xc3, 0x06, 0x05, 0x12, 0x05,
+  0xf1, 0x7a, 0x18, 0x6b, 0x03, 0xff, 0xe3, 0x7d, 0x9d, 0xbe, 0xaa, 0x18,
+  0xb1, 0x6c, 0x9f, 0x68, 0xda, 0xce, 0xd4, 0xf7, 0xde, 0x22, 0xf1, 0xc5,
+  0x3f, 0xd6, 0xb4, 0x7e, 0xab, 0x05, 0x9f, 0xf6, 0x57, 0xee, 0x55, 0x68,
+  0x63, 0xa9, 0x5f, 0xb5, 0xb3, 0x68, 0x0c, 0xf4, 0x4e, 0xfc, 0x7d, 0x96,
+  0xdd, 0x24, 0x04, 0xb5, 0x82, 0xc8, 0x2c, 0x31, 0xbf, 0xd4, 0x1a, 0x23,
+  0x79, 0xd2, 0x20, 0x49, 0x73, 0x94, 0xdd, 0xa7, 0x0c, 0xb2, 0xdb, 0x1a,
+  0xe3, 0xea, 0x49, 0x83, 0xc4, 0x6a, 0xab, 0x7c, 0xf2, 0xc9, 0xd1, 0x77,
+  0xc7, 0xe7, 0xd1, 0xe1, 0xe9, 0xab, 0xc6, 0x99, 0x29, 0x53, 0xee, 0x2e,
+  0x8c, 0xb7, 0x78, 0x0e, 0x9c, 0x07, 0xaf, 0xda, 0xb6, 0xd4, 0x9c, 0x0f,
+  0x8a, 0x7e, 0xc5, 0x4a, 0x71, 0x57, 0xb2, 0x92, 0x31, 0xb8, 0x31, 0x11,
+  0x8c, 0xc2, 0x3d, 0x0e, 0xe6, 0x96, 0x53, 0x3a, 0x53, 0xd9, 0x8a, 0x40,
+  0xec, 0x97, 0x90, 0x94, 0xdc, 0x97, 0xcb, 0x8c, 0x98, 0x33, 0x3a, 0x11,
+  0xa1, 0x6a, 0x48, 0x26, 0x2f, 0x8b, 0x2a, 0x07, 0x15, 0x9c, 0x84, 0x2f,
+  0xc6, 0xe0, 0x09, 0xdd, 0x94, 0x31, 0x55, 0xb2, 0x5a, 0xa7, 0xe3, 0xd6,
+  0x12, 0x6d, 0x6a, 0x95, 0x67, 0x83, 0xdd, 0x89, 0xd1, 0x45, 0x76, 0xe1,
+  0x0d, 0x3b, 0x32, 0x2d, 0x0a, 0x51, 0x57, 0xcb, 0x8b, 0x86, 0x8e, 0x16,
+  0xb0, 0x20, 0xcd, 0x10, 0xe6, 0x3b, 0x5b, 0x92, 0x6e, 0x90, 0x64, 0x63,
+  0x8e, 0x4f, 0x48, 0x45, 0x47, 0xf6, 0xb3, 0xe3, 0x31, 0xda, 0x36, 0x0e,
+  0x02, 0x58, 0xfe, 0x98, 0x52, 0xdc, 0x46, 0x7c, 0x2c, 0xaa, 0x7b, 0xd0,
+  0x80, 0xef, 0xe8, 0xc6, 0xc7, 0xa3, 0x2e, 0x58, 0xe6, 0xf6, 0xcd, 0x1d,
+  0x4d, 0xf7, 0x57, 0xcc, 0xf4, 0xa2, 0x34, 0x6e, 0x57, 0xf5, 0x80, 0xdb,
+  0xd8, 0x88, 0xc2, 0x9e, 0x71, 0x47, 0xaf, 0xb4, 0xca, 0x28, 0x41, 0xc6,
+  0x3f, 0x63, 0x92, 0x50, 0xa5, 0x5f, 0x55, 0x18, 0x35, 0xe9, 0xa9, 0x98,
+  0xde, 0x4d, 0xc7, 0xd9, 0x30, 0xa3, 0x6c, 0x46, 0xc5, 0x86, 0x86, 0x4f,
+  0x11, 0xbd, 0xa8, 0xc5, 0x4e, 0x00, 0x85, 0xd6, 0x6a, 0x12, 0x7a, 0x15,
+  0x8e, 0x0a, 0x22, 0x60, 0x57, 0x40, 0x55, 0x8b, 0x41, 0x82, 0x00, 0x8e,
+  0x84, 0x8f, 0x94, 0xe4, 0x8c, 0x99, 0xa3, 0x3b, 0x10, 0x46, 0x8f, 0xb1,
+  0x98, 0x19, 0xbb, 0xa2, 0xca, 0x93, 0x99, 0x43, 0x33, 0x56, 0xf4, 0x13,
+  0x57, 0xc2, 0xb0, 0xdd, 0x23, 0x1e, 0x37, 0xb4, 0xb8, 0x86, 0xc6, 0xe5,
+  0x30, 0x08, 0x65, 0x10, 0x54, 0xad, 0xc8, 0xe8, 0x33, 0xf7, 0x2b, 0xf8,
+  0x96, 0x7e, 0x83, 0x11, 0xc0, 0xed, 0x27, 0xdc, 0x50, 0xbe, 0xfd, 0x06,
+  0x19, 0x74, 0x0f, 0x7f, 0xe5, 0x79, 0x9b, 0x5f, 0x9c, 0x3c, 0x01, 0xfa,
+  0x90, 0x79, 0xf2, 0x85, 0xf8, 0xe1, 0x53, 0x84, 0xe5, 0x11, 0x27, 0x0f,
+  0x58, 0x4d, 0x63, 0x59, 0xae, 0xfc, 0x84, 0xf2, 0xdd, 0xc8, 0x93, 0x4e,
+  0xd4, 0xb7, 0xf3, 0x01, 0xf5, 0xde, 0x75, 0x5a, 0xbe, 0x94, 0xef, 0x62,
+  0x39, 0x02, 0xdb, 0xb8, 0x04, 0xb2, 0x99, 0x19, 0x46, 0xe4, 0xe1, 0xf8,
+  0x47, 0x58, 0x73, 0x04, 0x57, 0x55, 0x61, 0xfe, 0x2d, 0x6f, 0x78, 0xb8,
+  0x23, 0xad, 0xc8, 0x34, 0x52, 0x6c, 0x56, 0x32, 0xa4, 0x96, 0x55, 0x35,
+  0xb5, 0xb3, 0x26, 0xaf, 0x17, 0x75, 0x10, 0x04, 0x93, 0x8f, 0xde, 0x16,
+  0x5e, 0x7f, 0x93, 0xe2, 0xa2, 0x16, 0x08, 0xf9, 0x08, 0xeb, 0x87, 0x98,
+  0x3e, 0xa0, 0x77, 0x5f, 0x8a, 0x72, 0xe5, 0xf4, 0x3f, 0x41, 0xe6, 0x37,
+  0xae, 0x75, 0x10, 0x02, 0x14, 0x35, 0x09, 0xcc, 0xae, 0x5d, 0x03, 0xb5,
+  0xb9, 0x61, 0xe8, 0x80, 0x8b, 0x42, 0x20, 0x58, 0xda, 0x0a, 0x50, 0x1a,
+  0xa9, 0xe7, 0xc5, 0x6d, 0x42, 0xc2, 0xc5, 0x00, 0x0b, 0x59, 0xef, 0x9a,
+  0xc9, 0x1a, 0x41, 0x2d, 0xc6, 0x2f, 0xa1, 0xcc, 0xc9, 0x23, 0x9c, 0x70,
+  0x98, 0x8a, 0xab, 0xaf, 0xb8, 0x30, 0x5c, 0x2e, 0xb3, 0x2e, 0xb9, 0x9e,
+  0x8d, 0xf4, 0xe4, 0x94, 0x2c, 0x92, 0xcc, 0x37, 0x69, 0x08, 0x23, 0x53,
+  0xe1, 0xcf, 0x1d, 0x45, 0xd9, 0x22, 0x84, 0x3a, 0xeb, 0xd9, 0x34, 0xeb,
+  0xb9, 0x25, 0x4e, 0x39, 0x3b, 0xe8, 0xf7, 0x95, 0x4f, 0x0e, 0x03, 0x2c,
+  0x21, 0xd9, 0x28, 0x88, 0x5d, 0xa9, 0xb8, 0xd9, 0xbe, 0xf5, 0x25, 0x83,
+  0xb4, 0x52, 0x23, 0x37, 0x59, 0xd8, 0xbd, 0x62, 0x28, 0x3e, 0x72, 0x80,
+  0xcb, 0x7a, 0x99, 0xaf, 0x74, 0xc5, 0xb7, 0x8b, 0x29, 0x19, 0xb6, 0x04,
+  0x38, 0xd9, 0x09, 0xe9, 0x4c, 0x78, 0x5b, 0x1a, 0x04, 0x26, 0x1f, 0xc6,
+  0xdd, 0x14, 0x25, 0x99, 0x33, 0x91, 0x6d, 0x7f, 0xd1, 0xdf, 0xf0, 0xa2,
+  0xba, 0xbf, 0x68, 0xd1, 0xdf, 0x04, 0x16, 0xbd, 0x63, 0x0f, 0x0e, 0x7f,
+  0x2c, 0xda, 0xda, 0x7a, 0xae, 0xb5, 0xe2, 0xc0, 0xc7, 0xf4, 0xbd, 0xe0,
+  0x07, 0xe1, 0xb9, 0x98, 0xaa, 0x50, 0x02, 0x5e, 0x0c, 0x7b, 0x7a, 0x9d,
+  0x4f, 0xed, 0x9a, 0x4f, 0x81, 0xa5, 0x83, 0x63, 0xa1, 0x4a, 0xc5, 0xe2,
+  0xc7, 0x17, 0x4b, 0xea, 0x75, 0x44, 0x8f, 0xd1, 0x2d, 0x66, 0xd0, 0xd7,
+  0xe1, 0x7c, 0x6b, 0x9d, 0x85, 0xf3, 0x9d, 0x67, 0xc6, 0xe1, 0xbf, 0xbe,
+  0xa5, 0xf9, 0x77, 0x07, 0x24, 0xa4, 0xc7, 0xe9, 0x84, 0x38, 0x73, 0x94,
+  0x22, 0x32, 0xaf, 0xd5, 0x58, 0x19, 0xa2, 0xe7, 0xa2, 0x4c, 0xa8, 0xd5,
+  0xd9, 0x38, 0xb9, 0x0f, 0x60, 0x91, 0x6b, 0x03, 0x43, 0xf2, 0xab, 0xc1,
+  0xf1, 0xbc, 0x4c, 0x73, 0x74, 0x21, 0x91, 0x9a, 0x20, 0xae, 0x0a, 0x74,
+  0x76, 0x50, 0xca, 0xdd, 0x85, 0x89, 0x7d, 0xca, 0x57, 0x3d, 0xb0, 0x3e,
+  0x0c, 0x2f, 0xd5, 0xed, 0xf2, 0xdb, 0x70, 0x8b, 0x81, 0xcd, 0xe7, 0x76,
+  0x8b, 0x86, 0xce, 0x25, 0x81, 0xe6, 0x1a, 0xa3, 0x82, 0xba, 0xf4, 0x53,
+  0x81, 0xa2, 0x49, 0x09, 0x52, 0xc1, 0xe5, 0xf1, 0xa5, 0xbc, 0x69, 0xbf,
+  0xc2, 0x02, 0xf9, 0x0c, 0xc5, 0x9d, 0x34, 0x75, 0xea, 0x45, 0xa7, 0x14,
+  0x31, 0x6a, 0x74, 0x57, 0x64, 0x7b, 0x2d, 0xb1, 0x31, 0xf7, 0x26, 0xeb,
+  0xbe, 0xb4, 0x7b, 0x6c, 0xa6, 0xa4, 0xa9, 0xb2, 0xeb, 0x2a, 0x67, 0xcd,
+  0x5d, 0xa3, 0xd1, 0xd6, 0x34, 0x7a, 0x7f, 0x74, 0xfe, 0x9e, 0x32, 0xc7,
+  0x50, 0x04, 0x78, 0x56, 0x56, 0x52, 0xae, 0x19, 0x4c, 0x60, 0x11, 0x68,
+  0x56, 0x45, 0xb1, 0x22, 0x82, 0x01, 0xde, 0xcd, 0x8e, 0xf3, 0x3f, 0xf5,
+  0x3d, 0x53, 0x01, 0xc4, 0x24, 0xb7, 0x49, 0x25, 0x4d, 0xe8, 0xf9, 0xad,
+  0x2d, 0x9b, 0x3d, 0x0d, 0x0b, 0xbf, 0x4c, 0x85, 0x2b, 0xa5, 0xe2, 0xb3,
+  0x27, 0x95, 0x09, 0x5a, 0x99, 0xad, 0x0e, 0x0d, 0x7c, 0x88, 0xab, 0x02,
+  0x8a, 0x32, 0x70, 0x4f, 0xca, 0xa7, 0x55, 0x35, 0xe0, 0x29, 0x18, 0xc3,
+  0x52, 0xbe, 0x26, 0xc5, 0x48, 0x5c, 0x87, 0xc0, 0x4d, 0x89, 0xa2, 0x9d,
+  0x8d, 0x8d, 0x40, 0x2d, 0x61, 0x32, 0x00, 0xb1, 0x2a, 0x8a, 0x9e, 0x94,
+  0xfc, 0x73, 0xd9, 0x35, 0xed, 0x17, 0xa9, 0x9f, 0x15, 0xda, 0x22, 0xf1,
+  0x05, 0x86, 0xdc, 0x90, 0x62, 0xbe, 0xd1, 0xb1, 0xc5, 0x52, 0xe6, 0x5b,
+  0x82, 0x20, 0x50, 0xa2, 0xb5, 0xa4, 0x0b, 0xe3, 0x13, 0x70, 0xc6, 0xb6,
+  0x75, 0xb3, 0x90, 0xbb, 0x82, 0xc3, 0xbf, 0xde, 0xcc, 0x3c, 0x09, 0xbe,
+  0xb5, 0x1b, 0xe0, 0x88, 0xfe, 0xf9, 0xe9, 0x7b, 0x61, 0x31, 0xff, 0x76,
+  0x26, 0x8a, 0xd0, 0x13, 0x16, 0x0b, 0xb5, 0xeb, 0x83, 0x4b, 0x32, 0xf0,
+  0x24, 0x8e, 0x6b, 0xba, 0xfb, 0x38, 0x5f, 0x65, 0x19, 0xf0, 0x1e, 0x71,
+  0x2a, 0x64, 0x69, 0xdf, 0x08, 0xce, 0x8d, 0xf6, 0x84, 0xd2, 0x93, 0xe9,
+  0xbc, 0xc4, 0x07, 0xed, 0x94, 0x4f, 0x30, 0xe3, 0xba, 0x20, 0x1f, 0x09,
+  0xc2, 0x0b, 0xf6, 0x94, 0x92, 0x82, 0x28, 0x4d, 0xda, 0xf7, 0x78, 0x91,
+  0x0f, 0xd1, 0xa9, 0x6d, 0xfb, 0xc5, 0x32, 0x5e, 0x96, 0x69, 0x0c, 0x65,
+  0xfc, 0x31, 0x25, 0xe7, 0x72, 0x5b, 0x2c, 0xc9, 0x82, 0x4e, 0x38, 0x6c,
+  0x33, 0xf4, 0xba, 0x2a, 0x16, 0xe5, 0x48, 0xb2, 0x5f, 0xe5, 0xea, 0x54,
+  0x5b, 0xc2, 0xaa, 0xe0, 0xf6, 0xde, 0x3f, 0x3b, 0x7d, 0x7f, 0x6e, 0x6e,
+  0x7d, 0xfc, 0x2c, 0xfd, 0xa0, 0x75, 0x7a, 0xb0, 0xaa, 0x50, 0x40, 0x16,
+  0xe5, 0x6e, 0xc3, 0x1d, 0xf0, 0x62, 0x67, 0x62, 0x2e, 0xf0, 0x96, 0xd0,
+  0x38, 0x3a, 0x10, 0x9c, 0x5a, 0xc4, 0x8d, 0x2b, 0xd8, 0x61, 0x6a, 0xa4,
+  0x0d, 0xfb, 0x5d, 0xe8, 0xaa, 0x99, 0x03, 0x04, 0x6e, 0xf5, 0xde, 0xed,
+  0xcd, 0x00, 0x67, 0xe0, 0x95, 0xf0, 0xfe, 0xa8, 0x7f, 0xce, 0x53, 0xc7,
+  0xbf, 0x79, 0x53, 0x67, 0x28, 0x2a, 0xf9, 0xa1, 0x67, 0xc3, 0x18, 0xce,
+  0xc0, 0x6c, 0x75, 0x74, 0xd7, 0xe1, 0xf8, 0x81, 0x5e, 0xda, 0xdb, 0xdb,
+  0x4e, 0x95, 0x04, 0x89, 0x4c, 0xe1, 0x13, 0x3a, 0xdf, 0xf4, 0x83, 0x8e,
+  0x7c, 0xa4, 0x03, 0x9a, 0x99, 0x9c, 0x87, 0x46, 0xf7, 0xc0, 0xed, 0x1d,
+  0x3b, 0xc4, 0x14, 0xaf, 0x2a, 0x19, 0xe1, 0x98, 0x61, 0xd0, 0xc6, 0xf4,
+  0xc3, 0x58, 0x79, 0x85, 0xee, 0x0b, 0xe6, 0x0a, 0x7e, 0xce, 0x8e, 0xb3,
+  0x6b, 0x7c, 0xbf, 0xaa, 0x2d, 0x38, 0x73, 0xc1, 0x1f, 0x6b, 0xc6, 0x30,
+  0x29, 0x1c, 0x2d, 0x9e, 0xdb, 0x66, 0x56, 0xff, 0x32, 0x19, 0xd9, 0x1a,
+  0x07, 0x5e, 0x7b, 0xe3, 0x5a, 0x00, 0x7d, 0x2b, 0xcb, 0x67, 0xdc, 0x7b,
+  0x22, 0x29, 0xc7, 0xd8, 0xe5, 0x16, 0xa4, 0x48, 0xc9, 0xe8, 0x12, 0xb7,
+  0x79, 0xa8, 0xf7, 0x99, 0xf3, 0x0d, 0xb9, 0x82, 0xd0, 0x91, 0x38, 0x74,
+  0xae, 0xea, 0x64, 0x24, 0xa7, 0xd8, 0x2a, 0xfc, 0xe8, 0x5a, 0x36, 0x17,
+  0x45, 0x2f, 0x3a, 0x4b, 0x4b, 0xea, 0x69, 0x04, 0xdc, 0xfa, 0x1f, 0x76,
+  0x38, 0x3e, 0x26, 0x18, 0x2f, 0x56, 0x55, 0x00, 0xb1, 0xbb, 0x7a, 0xfc,
+  0x13, 0x82, 0xf1, 0xb2, 0x9d, 0xf3, 0xbc, 0xf5, 0xbe, 0xb4, 0x2f, 0x57,
+  0xb0, 0x14, 0x30, 0xe1, 0xdb, 0x8f, 0xec, 0x08, 0x67, 0x81, 0x7d, 0x4f,
+  0x43, 0x18, 0xe1, 0x8c, 0xa7, 0x59, 0xda, 0x69, 0x8f, 0x78, 0x84, 0x0b,
+  0x7d, 0xa6, 0x21, 0xc4, 0x9d, 0xa1, 0xf8, 0x3a, 0x38, 0x18, 0x98, 0xbe,
+  0xea, 0x58, 0x6a, 0x85, 0xca, 0x1c, 0x8c, 0x95, 0xa3, 0xac, 0x1d, 0x9b,
+  0x7a, 0x4b, 0x37, 0xb1, 0x8a, 0x68, 0x6b, 0xf0, 0x9c, 0xdb, 0xd4, 0x4d,
+  0x9a, 0xd9, 0x0f, 0x3b, 0xcc, 0x8b, 0x86, 0x6f, 0xcc, 0x0d, 0xd6, 0x98,
+  0x9d, 0xd4, 0x78, 0x89, 0x53, 0x6f, 0x90, 0x10, 0x22, 0x6b, 0x02, 0xf7,
+  0xbb, 0x6b, 0x00, 0xec, 0xec, 0xda, 0xa1, 0x2e, 0x08, 0xa3, 0x56, 0x0b,
+  0x10, 0x0e, 0x1a, 0x61, 0x55, 0xd3, 0xca, 0x35, 0x33, 0x4f, 0xba, 0x06,
+  0x65, 0xe0, 0x50, 0x39, 0xdf, 0x78, 0x2e, 0x76, 0x31, 0x1a, 0xc6, 0xf9,
+  0xbd, 0x2d, 0xc0, 0xec, 0x71, 0x5a, 0x15, 0x7b, 0xd6, 0xb8, 0x99, 0xb7,
+  0xfc, 0x46, 0xdc, 0xc5, 0x57, 0xe2, 0xb9, 0x99, 0x24, 0x77, 0xde, 0x25,
+  0x3f, 0x99, 0x4d, 0xa4, 0xf6, 0xc8, 0xf9, 0xd2, 0x0b, 0x71, 0x73, 0x70,
+  0xb9, 0x9c, 0xc1, 0xe2, 0x75, 0x16, 0x82, 0x36, 0x97, 0x98, 0xd4, 0x9a,
+  0x1f, 0x07, 0xe2, 0x11, 0x8b, 0x51, 0x2a, 0xd3, 0xf1, 0x31, 0xd0, 0x07,
+  0x03, 0x05, 0xad, 0x28, 0xbc, 0xea, 0x70, 0x28, 0x1c, 0x70, 0x6a, 0xa4,
+  0xb7, 0x3c, 0xc6, 0xbf, 0x52, 0x94, 0xc9, 0x40, 0xfc, 0xb6, 0x4c, 0x7f,
+  0x22, 0x65, 0xb2, 0xc7, 0xd7, 0x0d, 0x63, 0x5b, 0xf0, 0x2a, 0xf3, 0x59,
+  0xe2, 0x18, 0xfa, 0x3b, 0x2f, 0xc5, 0x87, 0x25, 0x3e, 0x12, 0x4c, 0x2d,
+  0xcb, 0xd3, 0xda, 0x4b, 0x86, 0xd9, 0xdd, 0xb4, 0xfe, 0xdd, 0x34, 0x2d,
+  0xa5, 0x16, 0xd8, 0x2d, 0xb3, 0xc1, 0x4e, 0x5a, 0xfd, 0x37, 0xd1, 0xdb,
+  0x57, 0xbb, 0x98, 0x21, 0x7c, 0x99, 0x96, 0xd3, 0x12, 0x6b, 0x40, 0x94,
+  0x87, 0x4f, 0xbf, 0x76, 0x06, 0xdb, 0xb2, 0x29, 0xa0, 0xda, 0x97, 0x40,
+  0xc5, 0x19, 0x9b, 0x0c, 0xb0, 0x85, 0x88, 0x8b, 0x74, 0xd9, 0x95, 0xcc,
+  0x00, 0xc5, 0xed, 0x57, 0x3c, 0x69, 0xd2, 0x5b, 0x42, 0x40, 0x32, 0xce,
+  0x47, 0xb6, 0xad, 0x04, 0x2b, 0xef, 0xa7, 0xe4, 0xb3, 0xbf, 0x44, 0xd3,
+  0x20, 0x70, 0xa2, 0x76, 0x59, 0x6a, 0x1e, 0xf2, 0xb9, 0x47, 0x25, 0xd6,
+  0x7f, 0x8d, 0x54, 0xf4, 0x56, 0x84, 0x6c, 0x77, 0xd7, 0x75, 0x2d, 0x60,
+  0x07, 0x21, 0x71, 0xf1, 0x93, 0x4b, 0x1f, 0x75, 0x14, 0xe7, 0xd9, 0x67,
+  0xe6, 0x59, 0xf4, 0x2a, 0x51, 0x68, 0x40, 0xdb, 0xbc, 0xcf, 0x79, 0x43,
+  0xd4, 0x5f, 0x35, 0x12, 0x54, 0x35, 0x63, 0x8d, 0xc7, 0xa1, 0xbd, 0x51,
+  0x14, 0x77, 0x5f, 0xb6, 0x1c, 0x2a, 0xd4, 0x41, 0xd3, 0x30, 0x26, 0x2d,
+  0x2a, 0x9b, 0x5e, 0xb9, 0x87, 0xf3, 0x19, 0xdf, 0xd2, 0x67, 0xed, 0xaa,
+  0x29, 0x95, 0x81, 0xa9, 0x0b, 0x5e, 0xa7, 0x47, 0x9d, 0x59, 0xff, 0xf0,
+  0x20, 0x9a, 0x57, 0x08, 0x4e, 0xbc, 0xee, 0x7c, 0x64, 0x53, 0xce, 0x0c,
+  0x2c, 0xb9, 0xb8, 0xcc, 0xb3, 0x9f, 0x15, 0xdd, 0x0c, 0xef, 0x67, 0x6d,
+  0x57, 0xef, 0x3c, 0xbe, 0x25, 0x02, 0xe3, 0x26, 0x19, 0x67, 0x22, 0x14,
+  0x1b, 0x8d, 0x14, 0x9f, 0x6d, 0x0b, 0xd7, 0xde, 0x65, 0x78, 0x44, 0x39,
+  0xf9, 0x0f, 0x8b, 0xfa, 0x30, 0xd1, 0x2c, 0x6d, 0x40, 0xc9, 0x3d, 0xdb,
+  0x11, 0xad, 0x4b, 0xb5, 0x63, 0xbc, 0x7b, 0x91, 0x10, 0x63, 0x6a, 0xc2,
+  0xd0, 0x16, 0xd3, 0xcf, 0xe4, 0xde, 0x93, 0xad, 0xa4, 0x88, 0x1a, 0xaa,
+  0x9a, 0x22, 0xa1, 0x11, 0xf3, 0xa9, 0x4c, 0x6f, 0xb3, 0x5c, 0x2a, 0xe3,
+  0xbc, 0xd7, 0x9f, 0xcd, 0xf1, 0x4d, 0x56, 0x7c, 0x69, 0x1e, 0x11, 0x2f,
+  0x39, 0xcf, 0x3f, 0xb7, 0x27, 0xa1, 0xd1, 0xc0, 0x42, 0xbb, 0x17, 0x74,
+  0xdd, 0x26, 0x25, 0x7a, 0x96, 0xd8, 0x8d, 0x92, 0x72, 0x47, 0xcd, 0x40,
+  0xcf, 0xc5, 0x0b, 0xf3, 0xf9, 0x71, 0x81, 0xd2, 0xd4, 0xf9, 0x1e, 0xb3,
+  0xd4, 0x6b, 0x0a, 0x99, 0x59, 0xf3, 0x20, 0x8f, 0xce, 0x43, 0xe8, 0x35,
+  0xcf, 0x5e, 0x0a, 0x6f, 0xe8, 0x7d, 0x69, 0x0c, 0xd6, 0x79, 0x6f, 0x3c,
+  0xdf, 0x70, 0xd5, 0xd5, 0x11, 0xa6, 0x10, 0x31, 0xca, 0xd7, 0xdc, 0x17,
+  0x98, 0x33, 0x8e, 0xc7, 0x88, 0x9b, 0x39, 0xe6, 0x67, 0x6c, 0xb7, 0x01,
+  0xfb, 0xd8, 0x56, 0x43, 0xe8, 0x9e, 0xbb, 0x0a, 0x54, 0x74, 0xfc, 0xca,
+  0x79, 0x70, 0xdb, 0x2e, 0x30, 0x19, 0xa3, 0x36, 0x70, 0xcf, 0xbe, 0xaa,
+  0x2a, 0x5a, 0xc5, 0xb7, 0x9c, 0x7a, 0xe6, 0xe7, 0xcc, 0x19, 0xef, 0x0a,
+  0x8e, 0xb5, 0x11, 0xf9, 0xbd, 0x67, 0x98, 0x1d, 0x0e, 0x0d, 0x98, 0xb2,
+  0x05, 0x52, 0xf6, 0xf6, 0xfe, 0xf9, 0xb3, 0x05, 0xcf, 0xca, 0xa5, 0x59,
+  0x99, 0xab, 0xde, 0x79, 0xef, 0x79, 0xe3, 0x98, 0xab, 0x2d, 0xa0, 0xf5,
+  0x8c, 0x70, 0xca, 0xf0, 0x90, 0x45, 0xab, 0x08, 0x58, 0xf4, 0x1f, 0xea,
+  0x17, 0x2c, 0x11, 0xed, 0xbf, 0xfa, 0x0f, 0x77, 0xaa, 0x2f, 0x5c, 0x08,
+  0x07, 0x76, 0x0a, 0x72, 0x2d, 0x7f, 0x3e, 0x6c, 0xf4, 0x23, 0x6d, 0x39,
+  0xf1, 0x9c, 0x11, 0x78, 0xbb, 0x41, 0x85, 0x98, 0xe5, 0x56, 0x68, 0xb0,
+  0x05, 0x28, 0x38, 0x65, 0x23, 0xb7, 0x2b, 0x04, 0x8a, 0x7b, 0x71, 0x40,
+  0x39, 0x3e, 0xd4, 0x8d, 0xd6, 0x09, 0xa8, 0xae, 0x66, 0x6c, 0x6e, 0x9b,
+  0x15, 0x85, 0x0a, 0xdf, 0x5f, 0x6c, 0xb5, 0x24, 0x17, 0xe9, 0x8c, 0x87,
+  0x30, 0x5b, 0xb6, 0xc7, 0xb5, 0x09, 0x25, 0x9a, 0xa8, 0x65, 0xc1, 0x3e,
+  0x2e, 0x74, 0x06, 0xd9, 0x01, 0x44, 0x5f, 0xc1, 0xc4, 0x5d, 0x44, 0xbf,
+  0x4e, 0x87, 0xd7, 0xde, 0x0e, 0xbd, 0xd8, 0x31, 0x24, 0x22, 0xab, 0x04,
+  0x0c, 0xfc, 0xb9, 0x26, 0xfc, 0x0b, 0xde, 0xf9, 0xb7, 0x59, 0xc5, 0xc1,
+  0x40, 0x60, 0xe7, 0xf7, 0xe7, 0xfd, 0xb3, 0xe8, 0xb0, 0x9f, 0xfe, 0x5d,
+  0x32, 0xf0, 0x1d, 0x01, 0xf7, 0xe2, 0x59, 0xf8, 0xe9, 0xbe, 0xf8, 0xe7,
+  0x8e, 0xa9, 0xbb, 0x12, 0xd0, 0xb3, 0xf1, 0xd2, 0x73, 0x61, 0x6a, 0x75,
+  0xe0, 0xb3, 0x1f, 0x0b, 0xa7, 0x46, 0x12, 0x6d, 0xdc, 0xd8, 0x9d, 0x17,
+  0x2f, 0xac, 0x69, 0x72, 0x35, 0xcb, 0xaf, 0x8d, 0xd2, 0x27, 0x98, 0xef,
+  0xba, 0x55, 0xce, 0x1b, 0x2f, 0x95, 0xc1, 0x1d, 0x8f, 0xa6, 0xc9, 0xb5,
+  0xed, 0x8a, 0xa7, 0x41, 0x1c, 0x88, 0x12, 0xd0, 0x04, 0x29, 0xd9, 0x48,
+  0x7c, 0x7e, 0xb9, 0x61, 0x6e, 0x51, 0x41, 0x87, 0xbd, 0xa6, 0xc4, 0x1f,
+  0xe1, 0x20, 0xcd, 0xeb, 0x9b, 0x66, 0x39, 0xfa, 0x12, 0xec, 0x23, 0xce,
+  0x08, 0x9b, 0x0d, 0x61, 0xde, 0x56, 0x1b, 0x18, 0x3a, 0xc6, 0x79, 0x9c,
+  0x19, 0xa1, 0x8f, 0xf1, 0xc5, 0x89, 0x30, 0x5f, 0x96, 0xab, 0xe7, 0xac,
+  0xe5, 0x0e, 0x33, 0x2f, 0x6d, 0x2b, 0xe7, 0x22, 0x50, 0x76, 0x48, 0x43,
+  0xe5, 0x78, 0x3f, 0x29, 0x0f, 0x84, 0x4d, 0x28, 0xfa, 0xb2, 0x1d, 0x61,
+  0x47, 0x47, 0x68, 0x61, 0xb5, 0x9a, 0xc1, 0x8c, 0xaf, 0x26, 0xf1, 0x8c,
+  0xa5, 0x97, 0xbb, 0x12, 0x32, 0x7a, 0xc8, 0x9f, 0xb7, 0xbe, 0x1d, 0xc9,
+  0xd4, 0x4d, 0xe5, 0x0e, 0x56, 0x79, 0x88, 0xfb, 0xae, 0x0d, 0x58, 0x2e,
+  0xce, 0x3c, 0x2e, 0xc6, 0xd2, 0x82, 0xd5, 0x45, 0xfe, 0xbc, 0xa6, 0x07,
+  0xcf, 0x83, 0x53, 0x5a, 0xe0, 0xcf, 0x7b, 0xc9, 0xfc, 0x4b, 0x59, 0x1b,
+  0x0e, 0xb3, 0x18, 0x93, 0x0f, 0x13, 0x30, 0xd8, 0x2b, 0xc8, 0xf1, 0x7c,
+  0x82, 0x39, 0x27, 0xd3, 0x83, 0x7c, 0xd2, 0x94, 0x22, 0x34, 0xf6, 0xb4,
+  0x00, 0xec, 0xca, 0x70, 0xaf, 0x83, 0xd0, 0xd8, 0x99, 0x49, 0xa3, 0xe5,
+  0x00, 0xb8, 0xb1, 0x8c, 0x85, 0x3a, 0x01, 0xa3, 0xf8, 0xbb, 0xef, 0xf8,
+  0x68, 0x19, 0xb4, 0x78, 0x89, 0x3d, 0x9a, 0x36, 0xf0, 0x70, 0x31, 0xb2,
+  0x7a, 0x88, 0x9b, 0x45, 0x11, 0xbb, 0x32, 0x1d, 0xa7, 0xd8, 0xb3, 0x85,
+  0x8d, 0x55, 0x92, 0x72, 0xa1, 0x74, 0x3c, 0x20, 0x25, 0x47, 0xde, 0x31,
+  0xab, 0xac, 0xe6, 0xf6, 0xa0, 0x37, 0x24, 0x3c, 0xd0, 0xd4, 0x86, 0x19,
+  0x1c, 0x7c, 0x38, 0x7f, 0x73, 0xfa, 0xbe, 0x1f, 0xad, 0x23, 0x54, 0xd9,
+  0xf9, 0xfb, 0xe3, 0x2f, 0x3f, 0x9c, 0xc3, 0x3f, 0x75, 0xa4, 0x57, 0x49,
+  0x9e, 0x81, 0x06, 0xd1, 0xaf, 0xd3, 0x1c, 0x84, 0xc1, 0xa5, 0xae, 0x8d,
+  0xfb, 0x49, 0x01, 0x13, 0x15, 0xa5, 0xa2, 0x52, 0x62, 0x32, 0x49, 0x31,
+  0xb6, 0xd9, 0x89, 0x1c, 0x69, 0xc0, 0x42, 0x84, 0xc2, 0xfa, 0x37, 0xb2,
+  0x16, 0xc6, 0x9a, 0xe6, 0x01, 0x47, 0xe7, 0x6f, 0x0e, 0xde, 0x7d, 0xdd,
+  0xd7, 0x86, 0xbd, 0xdf, 0x7e, 0xfb, 0x6d, 0x3b, 0x44, 0x4f, 0x76, 0x46,
+  0x95, 0x7e, 0xf2, 0x49, 0xff, 0xe8, 0x28, 0x3a, 0x38, 0xe9, 0x9f, 0xea,
+  0x03, 0x17, 0xf5, 0x74, 0x75, 0x73, 0x0d, 0x74, 0xe8, 0xcb, 0xb4, 0x86,
+  0xbf, 0x7c, 0xf2, 0xc9, 0xff, 0x0f, 0xc9, 0x6b, 0xd2, 0x51, 0x1f, 0x3d,
+  0x03, 0x00,
 };
 #define BUF_SIZE 0x10000
 static voidpf zalloc_func(voidpf opaque, unsigned int items, unsigned int size)
diff --git a/src/tool_listhelp.c b/src/tool_listhelp.c
new file mode 100644
index 0000000..ce92ec0
--- /dev/null
+++ b/src/tool_listhelp.c
@@ -0,0 +1,764 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "tool_setup.h"
+#include "tool_help.h"
+
+/*
+ * DO NOT edit tool_listhelp.c manually.
+ * This source file is generated with the following command:
+
+  cd $srcroot/docs/cmdline-opts
+  ./gen.pl listhelp *.d > $srcroot/src/tool_listhelp.c
+ */
+
+const struct helptxt helptext[] = {
+  {"    --abstract-unix-socket <path>",
+   "Connect via abstract Unix domain socket",
+   CURLHELP_CONNECTION},
+  {"    --alt-svc <file name>",
+   "Enable alt-svc with this cache file",
+   CURLHELP_HTTP},
+  {"    --anyauth",
+   "Pick any authentication method",
+   CURLHELP_HTTP | CURLHELP_PROXY | CURLHELP_AUTH},
+  {"-a, --append",
+   "Append to target file when uploading",
+   CURLHELP_FTP | CURLHELP_SFTP},
+  {"    --aws-sigv4 <provider1[:provider2[:region[:service]]]>",
+   "Use AWS V4 signature authentication",
+   CURLHELP_AUTH | CURLHELP_HTTP},
+  {"    --basic",
+   "Use HTTP Basic Authentication",
+   CURLHELP_AUTH},
+  {"    --cacert <file>",
+   "CA certificate to verify peer against",
+   CURLHELP_TLS},
+  {"    --capath <dir>",
+   "CA directory to verify peer against",
+   CURLHELP_TLS},
+  {"-E, --cert <certificate[:password]>",
+   "Client certificate file and password",
+   CURLHELP_TLS},
+  {"    --cert-status",
+   "Verify the status of the server cert via OCSP-staple",
+   CURLHELP_TLS},
+  {"    --cert-type <type>",
+   "Certificate type (DER/PEM/ENG)",
+   CURLHELP_TLS},
+  {"    --ciphers <list of ciphers>",
+   "SSL ciphers to use",
+   CURLHELP_TLS},
+  {"    --compressed",
+   "Request compressed response",
+   CURLHELP_HTTP},
+  {"    --compressed-ssh",
+   "Enable SSH compression",
+   CURLHELP_SCP | CURLHELP_SSH},
+  {"-K, --config <file>",
+   "Read config from a file",
+   CURLHELP_CURL},
+  {"    --connect-timeout <fractional seconds>",
+   "Maximum time allowed for connection",
+   CURLHELP_CONNECTION},
+  {"    --connect-to <HOST1:PORT1:HOST2:PORT2>",
+   "Connect to host",
+   CURLHELP_CONNECTION},
+  {"-C, --continue-at <offset>",
+   "Resumed transfer offset",
+   CURLHELP_CONNECTION},
+  {"-b, --cookie <data|filename>",
+   "Send cookies from string/file",
+   CURLHELP_HTTP},
+  {"-c, --cookie-jar <filename>",
+   "Write cookies to <filename> after operation",
+   CURLHELP_HTTP},
+  {"    --create-dirs",
+   "Create necessary local directory hierarchy",
+   CURLHELP_CURL},
+  {"    --create-file-mode <mode>",
+   "File mode for created files",
+   CURLHELP_SFTP | CURLHELP_SCP | CURLHELP_FILE | CURLHELP_UPLOAD},
+  {"    --crlf",
+   "Convert LF to CRLF in upload",
+   CURLHELP_FTP | CURLHELP_SMTP},
+  {"    --crlfile <file>",
+   "Use this CRL list",
+   CURLHELP_TLS},
+  {"    --curves <algorithm list>",
+   "(EC) TLS key exchange algorithm(s) to request",
+   CURLHELP_TLS},
+  {"-d, --data <data>",
+   "HTTP POST data",
+   CURLHELP_IMPORTANT | CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
+  {"    --data-ascii <data>",
+   "HTTP POST ASCII data",
+   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
+  {"    --data-binary <data>",
+   "HTTP POST binary data",
+   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
+  {"    --data-raw <data>",
+   "HTTP POST data, '@' allowed",
+   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
+  {"    --data-urlencode <data>",
+   "HTTP POST data url encoded",
+   CURLHELP_HTTP | CURLHELP_POST | CURLHELP_UPLOAD},
+  {"    --delegation <LEVEL>",
+   "GSS-API delegation permission",
+   CURLHELP_AUTH},
+  {"    --digest",
+   "Use HTTP Digest Authentication",
+   CURLHELP_PROXY | CURLHELP_AUTH | CURLHELP_HTTP},
+  {"-q, --disable",
+   "Disable .curlrc",
+   CURLHELP_CURL},
+  {"    --disable-eprt",
+   "Inhibit using EPRT or LPRT",
+   CURLHELP_FTP},
+  {"    --disable-epsv",
+   "Inhibit using EPSV",
+   CURLHELP_FTP},
+  {"    --disallow-username-in-url",
+   "Disallow username in url",
+   CURLHELP_CURL | CURLHELP_HTTP},
+  {"    --dns-interface <interface>",
+   "Interface to use for DNS requests",
+   CURLHELP_DNS},
+  {"    --dns-ipv4-addr <address>",
+   "IPv4 address to use for DNS requests",
+   CURLHELP_DNS},
+  {"    --dns-ipv6-addr <address>",
+   "IPv6 address to use for DNS requests",
+   CURLHELP_DNS},
+  {"    --dns-servers <addresses>",
+   "DNS server addrs to use",
+   CURLHELP_DNS},
+  {"    --doh-cert-status",
+   "Verify the status of the DoH server cert via OCSP-staple",
+   CURLHELP_DNS | CURLHELP_TLS},
+  {"    --doh-insecure",
+   "Allow insecure DoH server connections",
+   CURLHELP_DNS | CURLHELP_TLS},
+  {"    --doh-url <URL>",
+   "Resolve host names over DoH",
+   CURLHELP_DNS},
+  {"-D, --dump-header <filename>",
+   "Write the received headers to <filename>",
+   CURLHELP_HTTP | CURLHELP_FTP},
+  {"    --egd-file <file>",
+   "EGD socket path for random data",
+   CURLHELP_TLS},
+  {"    --engine <name>",
+   "Crypto engine to use",
+   CURLHELP_TLS},
+  {"    --etag-compare <file>",
+   "Pass an ETag from a file as a custom header",
+   CURLHELP_HTTP},
+  {"    --etag-save <file>",
+   "Parse ETag from a request and save it to a file",
+   CURLHELP_HTTP},
+  {"    --expect100-timeout <seconds>",
+   "How long to wait for 100-continue",
+   CURLHELP_HTTP},
+  {"-f, --fail",
+   "Fail silently (no output at all) on HTTP errors",
+   CURLHELP_IMPORTANT | CURLHELP_HTTP},
+  {"    --fail-early",
+   "Fail on first transfer error, do not continue",
+   CURLHELP_CURL},
+  {"    --fail-with-body",
+   "Fail on HTTP errors but save the body",
+   CURLHELP_HTTP | CURLHELP_OUTPUT},
+  {"    --false-start",
+   "Enable TLS False Start",
+   CURLHELP_TLS},
+  {"-F, --form <name=content>",
+   "Specify multipart MIME data",
+   CURLHELP_HTTP | CURLHELP_UPLOAD},
+  {"    --form-string <name=string>",
+   "Specify multipart MIME data",
+   CURLHELP_HTTP | CURLHELP_UPLOAD},
+  {"    --ftp-account <data>",
+   "Account data string",
+   CURLHELP_FTP | CURLHELP_AUTH},
+  {"    --ftp-alternative-to-user <command>",
+   "String to replace USER [name]",
+   CURLHELP_FTP},
+  {"    --ftp-create-dirs",
+   "Create the remote dirs if not present",
+   CURLHELP_FTP | CURLHELP_SFTP | CURLHELP_CURL},
+  {"    --ftp-method <method>",
+   "Control CWD usage",
+   CURLHELP_FTP},
+  {"    --ftp-pasv",
+   "Use PASV/EPSV instead of PORT",
+   CURLHELP_FTP},
+  {"-P, --ftp-port <address>",
+   "Use PORT instead of PASV",
+   CURLHELP_FTP},
+  {"    --ftp-pret",
+   "Send PRET before PASV",
+   CURLHELP_FTP},
+  {"    --ftp-skip-pasv-ip",
+   "Skip the IP address for PASV",
+   CURLHELP_FTP},
+  {"    --ftp-ssl-ccc",
+   "Send CCC after authenticating",
+   CURLHELP_FTP | CURLHELP_TLS},
+  {"    --ftp-ssl-ccc-mode <active/passive>",
+   "Set CCC mode",
+   CURLHELP_FTP | CURLHELP_TLS},
+  {"    --ftp-ssl-control",
+   "Require SSL/TLS for FTP login, clear for transfer",
+   CURLHELP_FTP | CURLHELP_TLS},
+  {"-G, --get",
+   "Put the post data in the URL and use GET",
+   CURLHELP_HTTP | CURLHELP_UPLOAD},
+  {"-g, --globoff",
+   "Disable URL sequences and ranges using {} and []",
+   CURLHELP_CURL},
+  {"    --happy-eyeballs-timeout-ms <milliseconds>",
+   "Time for IPv6 before trying IPv4",
+   CURLHELP_CONNECTION},
+  {"    --haproxy-protocol",
+   "Send HAProxy PROXY protocol v1 header",
+   CURLHELP_HTTP | CURLHELP_PROXY},
+  {"-I, --head",
+   "Show document info only",
+   CURLHELP_HTTP | CURLHELP_FTP | CURLHELP_FILE},
+  {"-H, --header <header/@file>",
+   "Pass custom header(s) to server",
+   CURLHELP_HTTP},
+  {"-h, --help <category>",
+   "Get help for commands",
+   CURLHELP_IMPORTANT | CURLHELP_CURL},
+  {"    --hostpubmd5 <md5>",
+   "Acceptable MD5 hash of the host public key",
+   CURLHELP_SFTP | CURLHELP_SCP},
+  {"    --hostpubsha256 <sha256>",
+   "Acceptable SHA256 hash of the host public key",
+   CURLHELP_SFTP | CURLHELP_SCP},
+  {"    --hsts <file name>",
+   "Enable HSTS with this cache file",
+   CURLHELP_HTTP},
+  {"    --http0.9",
+   "Allow HTTP 0.9 responses",
+   CURLHELP_HTTP},
+  {"-0, --http1.0",
+   "Use HTTP 1.0",
+   CURLHELP_HTTP},
+  {"    --http1.1",
+   "Use HTTP 1.1",
+   CURLHELP_HTTP},
+  {"    --http2",
+   "Use HTTP 2",
+   CURLHELP_HTTP},
+  {"    --http2-prior-knowledge",
+   "Use HTTP 2 without HTTP/1.1 Upgrade",
+   CURLHELP_HTTP},
+  {"    --http3",
+   "Use HTTP v3",
+   CURLHELP_HTTP},
+  {"    --ignore-content-length",
+   "Ignore the size of the remote resource",
+   CURLHELP_HTTP | CURLHELP_FTP},
+  {"-i, --include",
+   "Include protocol response headers in the output",
+   CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
+  {"-k, --insecure",
+   "Allow insecure server connections when using SSL",
+   CURLHELP_TLS},
+  {"    --interface <name>",
+   "Use network INTERFACE (or address)",
+   CURLHELP_CONNECTION},
+  {"-4, --ipv4",
+   "Resolve names to IPv4 addresses",
+   CURLHELP_CONNECTION | CURLHELP_DNS},
+  {"-6, --ipv6",
+   "Resolve names to IPv6 addresses",
+   CURLHELP_CONNECTION | CURLHELP_DNS},
+  {"-j, --junk-session-cookies",
+   "Ignore session cookies read from file",
+   CURLHELP_HTTP},
+  {"    --keepalive-time <seconds>",
+   "Interval time for keepalive probes",
+   CURLHELP_CONNECTION},
+  {"    --key <key>",
+   "Private key file name",
+   CURLHELP_TLS | CURLHELP_SSH},
+  {"    --key-type <type>",
+   "Private key file type (DER/PEM/ENG)",
+   CURLHELP_TLS},
+  {"    --krb <level>",
+   "Enable Kerberos with security <level>",
+   CURLHELP_FTP},
+  {"    --libcurl <file>",
+   "Dump libcurl equivalent code of this command line",
+   CURLHELP_CURL},
+  {"    --limit-rate <speed>",
+   "Limit transfer speed to RATE",
+   CURLHELP_CONNECTION},
+  {"-l, --list-only",
+   "List only mode",
+   CURLHELP_FTP | CURLHELP_POP3},
+  {"    --local-port <num/range>",
+   "Force use of RANGE for local port numbers",
+   CURLHELP_CONNECTION},
+  {"-L, --location",
+   "Follow redirects",
+   CURLHELP_HTTP},
+  {"    --location-trusted",
+   "Like --location, and send auth to other hosts",
+   CURLHELP_HTTP | CURLHELP_AUTH},
+  {"    --login-options <options>",
+   "Server login options",
+   CURLHELP_IMAP | CURLHELP_POP3 | CURLHELP_SMTP | CURLHELP_AUTH},
+  {"    --mail-auth <address>",
+   "Originator address of the original email",
+   CURLHELP_SMTP},
+  {"    --mail-from <address>",
+   "Mail from this address",
+   CURLHELP_SMTP},
+  {"    --mail-rcpt <address>",
+   "Mail to this address",
+   CURLHELP_SMTP},
+  {"    --mail-rcpt-allowfails",
+   "Allow RCPT TO command to fail for some recipients",
+   CURLHELP_SMTP},
+  {"-M, --manual",
+   "Display the full manual",
+   CURLHELP_CURL},
+  {"    --max-filesize <bytes>",
+   "Maximum file size to download",
+   CURLHELP_CONNECTION},
+  {"    --max-redirs <num>",
+   "Maximum number of redirects allowed",
+   CURLHELP_HTTP},
+  {"-m, --max-time <fractional seconds>",
+   "Maximum time allowed for transfer",
+   CURLHELP_CONNECTION},
+  {"    --metalink",
+   "Process given URLs as metalink XML file",
+   CURLHELP_MISC},
+  {"    --negotiate",
+   "Use HTTP Negotiate (SPNEGO) authentication",
+   CURLHELP_AUTH | CURLHELP_HTTP},
+  {"-n, --netrc",
+   "Must read .netrc for user name and password",
+   CURLHELP_CURL},
+  {"    --netrc-file <filename>",
+   "Specify FILE for netrc",
+   CURLHELP_CURL},
+  {"    --netrc-optional",
+   "Use either .netrc or URL",
+   CURLHELP_CURL},
+  {"-:, --next",
+   "Make next URL use its separate set of options",
+   CURLHELP_CURL},
+  {"    --no-alpn",
+   "Disable the ALPN TLS extension",
+   CURLHELP_TLS | CURLHELP_HTTP},
+  {"-N, --no-buffer",
+   "Disable buffering of the output stream",
+   CURLHELP_CURL},
+  {"    --no-keepalive",
+   "Disable TCP keepalive on the connection",
+   CURLHELP_CONNECTION},
+  {"    --no-npn",
+   "Disable the NPN TLS extension",
+   CURLHELP_TLS | CURLHELP_HTTP},
+  {"    --no-progress-meter",
+   "Do not show the progress meter",
+   CURLHELP_VERBOSE},
+  {"    --no-sessionid",
+   "Disable SSL session-ID reusing",
+   CURLHELP_TLS},
+  {"    --noproxy <no-proxy-list>",
+   "List of hosts which do not use proxy",
+   CURLHELP_PROXY},
+  {"    --ntlm",
+   "Use HTTP NTLM authentication",
+   CURLHELP_AUTH | CURLHELP_HTTP},
+  {"    --ntlm-wb",
+   "Use HTTP NTLM authentication with winbind",
+   CURLHELP_AUTH | CURLHELP_HTTP},
+  {"    --oauth2-bearer <token>",
+   "OAuth 2 Bearer Token",
+   CURLHELP_AUTH},
+  {"-o, --output <file>",
+   "Write to file instead of stdout",
+   CURLHELP_IMPORTANT | CURLHELP_CURL},
+  {"    --output-dir <dir>",
+   "Directory to save files in",
+   CURLHELP_CURL},
+  {"-Z, --parallel",
+   "Perform transfers in parallel",
+   CURLHELP_CONNECTION | CURLHELP_CURL},
+  {"    --parallel-immediate",
+   "Do not wait for multiplexing (with --parallel)",
+   CURLHELP_CONNECTION | CURLHELP_CURL},
+  {"    --parallel-max <num>",
+   "Maximum concurrency for parallel transfers",
+   CURLHELP_CONNECTION | CURLHELP_CURL},
+  {"    --pass <phrase>",
+   "Pass phrase for the private key",
+   CURLHELP_SSH | CURLHELP_TLS | CURLHELP_AUTH},
+  {"    --path-as-is",
+   "Do not squash .. sequences in URL path",
+   CURLHELP_CURL},
+  {"    --pinnedpubkey <hashes>",
+   "FILE/HASHES Public key to verify peer against",
+   CURLHELP_TLS},
+  {"    --post301",
+   "Do not switch to GET after following a 301",
+   CURLHELP_HTTP | CURLHELP_POST},
+  {"    --post302",
+   "Do not switch to GET after following a 302",
+   CURLHELP_HTTP | CURLHELP_POST},
+  {"    --post303",
+   "Do not switch to GET after following a 303",
+   CURLHELP_HTTP | CURLHELP_POST},
+  {"    --preproxy [protocol://]host[:port]",
+   "Use this proxy first",
+   CURLHELP_PROXY},
+  {"-#, --progress-bar",
+   "Display transfer progress as a bar",
+   CURLHELP_VERBOSE},
+  {"    --proto <protocols>",
+   "Enable/disable PROTOCOLS",
+   CURLHELP_CONNECTION | CURLHELP_CURL},
+  {"    --proto-default <protocol>",
+   "Use PROTOCOL for any URL missing a scheme",
+   CURLHELP_CONNECTION | CURLHELP_CURL},
+  {"    --proto-redir <protocols>",
+   "Enable/disable PROTOCOLS on redirect",
+   CURLHELP_CONNECTION | CURLHELP_CURL},
+  {"-x, --proxy [protocol://]host[:port]",
+   "Use this proxy",
+   CURLHELP_PROXY},
+  {"    --proxy-anyauth",
+   "Pick any proxy authentication method",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --proxy-basic",
+   "Use Basic authentication on the proxy",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --proxy-cacert <file>",
+   "CA certificate to verify peer against for proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-capath <dir>",
+   "CA directory to verify peer against for proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-cert <cert[:passwd]>",
+   "Set client certificate for proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-cert-type <type>",
+   "Client certificate type for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-ciphers <list>",
+   "SSL ciphers to use for proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-crlfile <file>",
+   "Set a CRL list for proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-digest",
+   "Use Digest authentication on the proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-header <header/@file>",
+   "Pass custom header(s) to proxy",
+   CURLHELP_PROXY},
+  {"    --proxy-insecure",
+   "Do HTTPS proxy connections without verifying the proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-key <key>",
+   "Private key for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-key-type <type>",
+   "Private key file type for proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-negotiate",
+   "Use HTTP Negotiate (SPNEGO) authentication on the proxy",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --proxy-ntlm",
+   "Use NTLM authentication on the proxy",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --proxy-pass <phrase>",
+   "Pass phrase for the private key for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
+  {"    --proxy-pinnedpubkey <hashes>",
+   "FILE/HASHES public key to verify proxy with",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-service-name <name>",
+   "SPNEGO proxy service name",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-ssl-allow-beast",
+   "Allow security flaw for interop for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-ssl-auto-client-cert",
+   "Use auto client certificate for proxy (Schannel)",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-tls13-ciphers <ciphersuite list>",
+   "TLS 1.3 proxy cipher suites",
+   CURLHELP_PROXY | CURLHELP_TLS},
+  {"    --proxy-tlsauthtype <type>",
+   "TLS authentication type for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
+  {"    --proxy-tlspassword <string>",
+   "TLS password for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
+  {"    --proxy-tlsuser <name>",
+   "TLS username for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
+  {"    --proxy-tlsv1",
+   "Use TLSv1 for HTTPS proxy",
+   CURLHELP_PROXY | CURLHELP_TLS | CURLHELP_AUTH},
+  {"-U, --proxy-user <user:password>",
+   "Proxy user and password",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --proxy1.0 <host[:port]>",
+   "Use HTTP/1.0 proxy on given port",
+   CURLHELP_PROXY},
+  {"-p, --proxytunnel",
+   "Operate through an HTTP proxy tunnel (using CONNECT)",
+   CURLHELP_PROXY},
+  {"    --pubkey <key>",
+   "SSH Public key file name",
+   CURLHELP_SFTP | CURLHELP_SCP | CURLHELP_AUTH},
+  {"-Q, --quote <command>",
+   "Send command(s) to server before transfer",
+   CURLHELP_FTP | CURLHELP_SFTP},
+  {"    --random-file <file>",
+   "File for reading random data from",
+   CURLHELP_MISC},
+  {"-r, --range <range>",
+   "Retrieve only the bytes within RANGE",
+   CURLHELP_HTTP | CURLHELP_FTP | CURLHELP_SFTP | CURLHELP_FILE},
+  {"    --raw",
+   "Do HTTP \"raw\"; no transfer decoding",
+   CURLHELP_HTTP},
+  {"-e, --referer <URL>",
+   "Referrer URL",
+   CURLHELP_HTTP},
+  {"-J, --remote-header-name",
+   "Use the header-provided filename",
+   CURLHELP_OUTPUT},
+  {"-O, --remote-name",
+   "Write output to a file named as the remote file",
+   CURLHELP_IMPORTANT | CURLHELP_OUTPUT},
+  {"    --remote-name-all",
+   "Use the remote file name for all URLs",
+   CURLHELP_OUTPUT},
+  {"-R, --remote-time",
+   "Set the remote file's time on the local output",
+   CURLHELP_OUTPUT},
+  {"-X, --request <command>",
+   "Specify request command to use",
+   CURLHELP_CONNECTION},
+  {"    --request-target <path>",
+   "Specify the target for this request",
+   CURLHELP_HTTP},
+  {"    --resolve <[+]host:port:addr[,addr]...>",
+   "Resolve the host+port to this address",
+   CURLHELP_CONNECTION},
+  {"    --retry <num>",
+   "Retry request if transient problems occur",
+   CURLHELP_CURL},
+  {"    --retry-all-errors",
+   "Retry all errors (use with --retry)",
+   CURLHELP_CURL},
+  {"    --retry-connrefused",
+   "Retry on connection refused (use with --retry)",
+   CURLHELP_CURL},
+  {"    --retry-delay <seconds>",
+   "Wait time between retries",
+   CURLHELP_CURL},
+  {"    --retry-max-time <seconds>",
+   "Retry only within this period",
+   CURLHELP_CURL},
+  {"    --sasl-authzid <identity>",
+   "Identity for SASL PLAIN authentication",
+   CURLHELP_AUTH},
+  {"    --sasl-ir",
+   "Enable initial response in SASL authentication",
+   CURLHELP_AUTH},
+  {"    --service-name <name>",
+   "SPNEGO service name",
+   CURLHELP_MISC},
+  {"-S, --show-error",
+   "Show error even when -s is used",
+   CURLHELP_CURL},
+  {"-s, --silent",
+   "Silent mode",
+   CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
+  {"    --socks4 <host[:port]>",
+   "SOCKS4 proxy on given host + port",
+   CURLHELP_PROXY},
+  {"    --socks4a <host[:port]>",
+   "SOCKS4a proxy on given host + port",
+   CURLHELP_PROXY},
+  {"    --socks5 <host[:port]>",
+   "SOCKS5 proxy on given host + port",
+   CURLHELP_PROXY},
+  {"    --socks5-basic",
+   "Enable username/password auth for SOCKS5 proxies",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --socks5-gssapi",
+   "Enable GSS-API auth for SOCKS5 proxies",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --socks5-gssapi-nec",
+   "Compatibility with NEC SOCKS5 server",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --socks5-gssapi-service <name>",
+   "SOCKS5 proxy service name for GSS-API",
+   CURLHELP_PROXY | CURLHELP_AUTH},
+  {"    --socks5-hostname <host[:port]>",
+   "SOCKS5 proxy, pass host name to proxy",
+   CURLHELP_PROXY},
+  {"-Y, --speed-limit <speed>",
+   "Stop transfers slower than this",
+   CURLHELP_CONNECTION},
+  {"-y, --speed-time <seconds>",
+   "Trigger 'speed-limit' abort after this time",
+   CURLHELP_CONNECTION},
+  {"    --ssl",
+   "Try SSL/TLS",
+   CURLHELP_TLS},
+  {"    --ssl-allow-beast",
+   "Allow security flaw to improve interop",
+   CURLHELP_TLS},
+  {"    --ssl-auto-client-cert",
+   "Use auto client certificate (Schannel)",
+   CURLHELP_TLS},
+  {"    --ssl-no-revoke",
+   "Disable cert revocation checks (Schannel)",
+   CURLHELP_TLS},
+  {"    --ssl-reqd",
+   "Require SSL/TLS",
+   CURLHELP_TLS},
+  {"    --ssl-revoke-best-effort",
+   "Ignore missing/offline cert CRL dist points",
+   CURLHELP_TLS},
+  {"-2, --sslv2",
+   "Use SSLv2",
+   CURLHELP_TLS},
+  {"-3, --sslv3",
+   "Use SSLv3",
+   CURLHELP_TLS},
+  {"    --stderr <file>",
+   "Where to redirect stderr",
+   CURLHELP_VERBOSE},
+  {"    --styled-output",
+   "Enable styled output for HTTP headers",
+   CURLHELP_VERBOSE},
+  {"    --suppress-connect-headers",
+   "Suppress proxy CONNECT response headers",
+   CURLHELP_PROXY},
+  {"    --tcp-fastopen",
+   "Use TCP Fast Open",
+   CURLHELP_CONNECTION},
+  {"    --tcp-nodelay",
+   "Use the TCP_NODELAY option",
+   CURLHELP_CONNECTION},
+  {"-t, --telnet-option <opt=val>",
+   "Set telnet option",
+   CURLHELP_TELNET},
+  {"    --tftp-blksize <value>",
+   "Set TFTP BLKSIZE option",
+   CURLHELP_TFTP},
+  {"    --tftp-no-options",
+   "Do not send any TFTP options",
+   CURLHELP_TFTP},
+  {"-z, --time-cond <time>",
+   "Transfer based on a time condition",
+   CURLHELP_HTTP | CURLHELP_FTP},
+  {"    --tls-max <VERSION>",
+   "Set maximum allowed TLS version",
+   CURLHELP_TLS},
+  {"    --tls13-ciphers <ciphersuite list>",
+   "TLS 1.3 cipher suites to use",
+   CURLHELP_TLS},
+  {"    --tlsauthtype <type>",
+   "TLS authentication type",
+   CURLHELP_TLS | CURLHELP_AUTH},
+  {"    --tlspassword <string>",
+   "TLS password",
+   CURLHELP_TLS | CURLHELP_AUTH},
+  {"    --tlsuser <name>",
+   "TLS user name",
+   CURLHELP_TLS | CURLHELP_AUTH},
+  {"-1, --tlsv1",
+   "Use TLSv1.0 or greater",
+   CURLHELP_TLS},
+  {"    --tlsv1.0",
+   "Use TLSv1.0 or greater",
+   CURLHELP_TLS},
+  {"    --tlsv1.1",
+   "Use TLSv1.1 or greater",
+   CURLHELP_TLS},
+  {"    --tlsv1.2",
+   "Use TLSv1.2 or greater",
+   CURLHELP_TLS},
+  {"    --tlsv1.3",
+   "Use TLSv1.3 or greater",
+   CURLHELP_TLS},
+  {"    --tr-encoding",
+   "Request compressed transfer encoding",
+   CURLHELP_HTTP},
+  {"    --trace <file>",
+   "Write a debug trace to FILE",
+   CURLHELP_VERBOSE},
+  {"    --trace-ascii <file>",
+   "Like --trace, but without hex output",
+   CURLHELP_VERBOSE},
+  {"    --trace-time",
+   "Add time stamps to trace/verbose output",
+   CURLHELP_VERBOSE},
+  {"    --unix-socket <path>",
+   "Connect through this Unix domain socket",
+   CURLHELP_CONNECTION},
+  {"-T, --upload-file <file>",
+   "Transfer local FILE to destination",
+   CURLHELP_IMPORTANT | CURLHELP_UPLOAD},
+  {"    --url <url>",
+   "URL to work with",
+   CURLHELP_CURL},
+  {"-B, --use-ascii",
+   "Use ASCII/text transfer",
+   CURLHELP_MISC},
+  {"-u, --user <user:password>",
+   "Server user and password",
+   CURLHELP_IMPORTANT | CURLHELP_AUTH},
+  {"-A, --user-agent <name>",
+   "Send User-Agent <name> to server",
+   CURLHELP_IMPORTANT | CURLHELP_HTTP},
+  {"-v, --verbose",
+   "Make the operation more talkative",
+   CURLHELP_IMPORTANT | CURLHELP_VERBOSE},
+  {"-V, --version",
+   "Show version number and quit",
+   CURLHELP_IMPORTANT | CURLHELP_CURL},
+  {"-w, --write-out <format>",
+   "Use output FORMAT after completion",
+   CURLHELP_VERBOSE},
+  {"    --xattr",
+   "Store metadata in extended file attributes",
+   CURLHELP_MISC},
+  { NULL, NULL, CURLHELP_HIDDEN }
+};
diff --git a/src/tool_main.c b/src/tool_main.c
index 9f16a4e..23ba6cb 100644
--- a/src/tool_main.c
+++ b/src/tool_main.c
@@ -118,7 +118,7 @@
     curl_free(env);
     curl_dbg_memdebug(fname);
     /* this weird stuff here is to make curl_free() get called before
-       curl_gdb_memdebug() as otherwise memory tracking will log a free()
+       curl_dbg_memdebug() as otherwise memory tracking will log a free()
        without an alloc! */
   }
   /* if CURL_MEMLIMIT is set, this enables fail-on-alloc-number-N feature */
@@ -214,7 +214,7 @@
   convert_cleanup();
 #ifdef USE_NSS
   if(PR_Initialized()) {
-    /* prevent valgrind from reporting still reachable mem from NSRP arenas */
+    /* prevent valgrind from reporting still reachable mem from NSPR arenas */
     PL_ArenaFinish();
     /* prevent valgrind from reporting possibly lost memory (fd cache, ...) */
     PR_Cleanup();
diff --git a/src/tool_operate.c b/src/tool_operate.c
index e6ca575..ed3b2f5 100644
--- a/src/tool_operate.c
+++ b/src/tool_operate.c
@@ -515,6 +515,21 @@
             sleeptime = LONG_MAX;
           else
             sleeptime = (long)retry_after * 1000; /* milliseconds */
+
+          /* if adding retry_after seconds to the process would exceed the
+             maximum time allowed for retrying, then exit the retries right
+             away */
+          if(config->retry_maxtime) {
+            curl_off_t seconds = tvdiff(tvnow(), per->retrystart)/1000;
+
+            if((CURL_OFF_T_MAX - retry_after < seconds) ||
+               (seconds + retry_after > config->retry_maxtime)) {
+              warnf(config->global, "The Retry-After: time would "
+                    "make this command line exceed the maximum allowed time "
+                    "for retries.");
+              goto noretry;
+            }
+          }
         }
       }
       warnf(config->global, "Problem %s. "
@@ -570,6 +585,7 @@
       return CURLE_OK;
     }
   } /* if retry_numretries */
+  noretry:
 
   if((global->progressmode == CURL_PROGRESS_BAR) &&
      per->progressbar.calls)
@@ -778,19 +794,100 @@
                     !strcmp(state->outfiles, "-")) && urlnum > 1);
 
       if(state->up < state->infilenum) {
-        struct per_transfer *per;
+        struct per_transfer *per = NULL;
         struct OutStruct *outs;
         struct InStruct *input;
         struct OutStruct *heads;
         struct OutStruct *etag_save;
         struct HdrCbData *hdrcbdata = NULL;
-        CURL *curl = curl_easy_init();
-        result = add_per_transfer(&per);
-        if(result || !curl) {
-          curl_easy_cleanup(curl);
+        struct OutStruct etag_first;
+        CURL *curl;
+
+        /* --etag-save */
+        memset(&etag_first, 0, sizeof(etag_first));
+        etag_save = &etag_first;
+        etag_save->stream = stdout;
+
+        /* --etag-compare */
+        if(config->etag_compare_file) {
+          char *etag_from_file = NULL;
+          char *header = NULL;
+          ParameterError pe;
+
+          /* open file for reading: */
+          FILE *file = fopen(config->etag_compare_file, FOPEN_READTEXT);
+          if(!file && !config->etag_save_file) {
+            errorf(global,
+                   "Failed to open %s\n", config->etag_compare_file);
+            result = CURLE_READ_ERROR;
+            break;
+          }
+
+          if((PARAM_OK == file2string(&etag_from_file, file)) &&
+             etag_from_file) {
+            header = aprintf("If-None-Match: %s", etag_from_file);
+            Curl_safefree(etag_from_file);
+          }
+          else
+            header = aprintf("If-None-Match: \"\"");
+
+          if(!header) {
+            if(file)
+              fclose(file);
+            errorf(global,
+                   "Failed to allocate memory for custom etag header\n");
+            result = CURLE_OUT_OF_MEMORY;
+            break;
+          }
+
+          /* add Etag from file to list of custom headers */
+          pe = add2list(&config->headers, header);
+          Curl_safefree(header);
+
+          if(file)
+            fclose(file);
+          if(pe != PARAM_OK) {
+            result = CURLE_OUT_OF_MEMORY;
+            break;
+          }
+        }
+
+        if(config->etag_save_file) {
+          /* open file for output: */
+          if(strcmp(config->etag_save_file, "-")) {
+            FILE *newfile = fopen(config->etag_save_file, "wb");
+            if(!newfile) {
+              warnf(global, "Failed creating file for saving etags: \"%s\". "
+                    "Skip this transfer\n", config->etag_save_file);
+              Curl_safefree(state->outfiles);
+              glob_cleanup(state->urls);
+              return CURLE_OK;
+            }
+            else {
+              etag_save->filename = config->etag_save_file;
+              etag_save->s_isreg = TRUE;
+              etag_save->fopened = TRUE;
+              etag_save->stream = newfile;
+            }
+          }
+          else {
+            /* always use binary mode for protocol header output */
+            set_binmode(etag_save->stream);
+          }
+        }
+
+        curl = curl_easy_init();
+        if(curl)
+          result = add_per_transfer(&per);
+        else
           result = CURLE_OUT_OF_MEMORY;
+        if(result) {
+          curl_easy_cleanup(curl);
+          if(etag_save->fopened)
+            fclose(etag_save->stream);
           break;
         }
+        per->etag_save = etag_first; /* copy the whole struct */
         if(state->uploadfile) {
           per->uploadfile = strdup(state->uploadfile);
           if(!per->uploadfile) {
@@ -844,76 +941,6 @@
         /* default output stream is stdout */
         outs->stream = stdout;
 
-        /* --etag-compare */
-        if(config->etag_compare_file) {
-          char *etag_from_file = NULL;
-          char *header = NULL;
-
-          /* open file for reading: */
-          FILE *file = fopen(config->etag_compare_file, FOPEN_READTEXT);
-          if(!file && !config->etag_save_file) {
-            errorf(global,
-                   "Failed to open %s\n", config->etag_compare_file);
-            result = CURLE_READ_ERROR;
-            break;
-          }
-
-          if((PARAM_OK == file2string(&etag_from_file, file)) &&
-             etag_from_file) {
-            header = aprintf("If-None-Match: %s", etag_from_file);
-            Curl_safefree(etag_from_file);
-          }
-          else
-            header = aprintf("If-None-Match: \"\"");
-
-          if(!header) {
-            if(file)
-              fclose(file);
-            errorf(global,
-                   "Failed to allocate memory for custom etag header\n");
-            result = CURLE_OUT_OF_MEMORY;
-            break;
-          }
-
-          /* add Etag from file to list of custom headers */
-          add2list(&config->headers, header);
-
-          Curl_safefree(header);
-
-          if(file) {
-            fclose(file);
-          }
-        }
-
-        /* --etag-save */
-        etag_save = &per->etag_save;
-        etag_save->stream = stdout;
-
-        if(config->etag_save_file) {
-          /* open file for output: */
-          if(strcmp(config->etag_save_file, "-")) {
-            FILE *newfile = fopen(config->etag_save_file, "wb");
-            if(!newfile) {
-              warnf(
-                global,
-                "Failed to open %s\n", config->etag_save_file);
-
-              result = CURLE_WRITE_ERROR;
-              break;
-            }
-            else {
-              etag_save->filename = config->etag_save_file;
-              etag_save->s_isreg = TRUE;
-              etag_save->fopened = TRUE;
-              etag_save->stream = newfile;
-            }
-          }
-          else {
-            /* always use binary mode for protocol header output */
-            set_binmode(etag_save->stream);
-          }
-        }
-
         if(state->urls) {
           result = glob_next_url(&per->this_url, state->urls);
           if(result)
@@ -950,8 +977,11 @@
           if(!per->outfile) {
             /* extract the file name from the URL */
             result = get_url_file_name(&per->outfile, per->this_url);
-            if(result)
+            if(result) {
+              errorf(global, "Failed to extract a sensible file name"
+                     " from the URL to use for storage!\n");
               break;
+            }
             if(!*per->outfile && !config->content_disposition) {
               errorf(global, "Remote file name has no length!\n");
               result = CURLE_WRITE_ERROR;
@@ -1389,6 +1419,11 @@
           my_setopt_str(curl, CURLOPT_SSH_HOST_PUBLIC_KEY_MD5,
                         config->hostpubmd5);
 
+          /* new in libcurl 7.80.0: SSH host key sha256 checking allows us
+             to fail if we are not talking to who we think we should */
+          my_setopt_str(curl, CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256,
+              config->hostpubsha256);
+
           /* new in libcurl 7.56.0 */
           if(config->ssh_compression)
             my_setopt(curl, CURLOPT_SSH_COMPRESSION, 1L);
@@ -2123,6 +2158,7 @@
     (void)curl_easy_setopt(per->curl, CURLOPT_PRIVATE, per);
     (void)curl_easy_setopt(per->curl, CURLOPT_XFERINFOFUNCTION, xferinfo_cb);
     (void)curl_easy_setopt(per->curl, CURLOPT_XFERINFODATA, per);
+    (void)curl_easy_setopt(per->curl, CURLOPT_NOPROGRESS, 0L);
 
     mcode = curl_multi_add_handle(multi, per->curl);
     if(mcode)
@@ -2149,6 +2185,10 @@
   struct timeval start = tvnow();
   bool more_transfers;
   bool added_transfers;
+  /* wrapitup is set TRUE after a critical error occurs to end all transfers */
+  bool wrapitup = FALSE;
+  /* wrapitup_processed is set TRUE after the per transfer abort flag is set */
+  bool wrapitup_processed = FALSE;
   time_t tick = time(NULL);
 
   multi = curl_multi_init();
@@ -2163,6 +2203,21 @@
   }
 
   while(!mcode && (still_running || more_transfers)) {
+    /* If stopping prematurely (eg due to a --fail-early condition) then signal
+       that any transfers in the multi should abort (via progress callback). */
+    if(wrapitup) {
+      if(!still_running)
+        break;
+      if(!wrapitup_processed) {
+        struct per_transfer *per;
+        for(per = transfers; per; per = per->next) {
+          if(per->added)
+            per->abort = TRUE;
+        }
+        wrapitup_processed = TRUE;
+      }
+    }
+
     mcode = curl_multi_poll(multi, NULL, 0, 1000, NULL);
     if(!mcode)
       mcode = curl_multi_perform(multi, &still_running);
@@ -2184,6 +2239,10 @@
           curl_easy_getinfo(easy, CURLINFO_PRIVATE, (void *)&ended);
           curl_multi_remove_handle(multi, easy);
 
+          if(ended->abort && tres == CURLE_ABORTED_BY_CALLBACK) {
+            msnprintf(ended->errorbuffer, sizeof(ended->errorbuffer),
+              "Transfer aborted due to critical error in another transfer");
+          }
           tres = post_per_transfer(global, ended, tres, &retry, &delay);
           progress_finalize(ended); /* before it goes away */
           all_added--; /* one fewer added */
@@ -2194,12 +2253,22 @@
             ended->startat = delay ? time(NULL) + delay/1000 : 0;
           }
           else {
-            if(tres)
+            /* result receives this transfer's error unless the transfer was
+               marked for abort due to a critical error in another transfer */
+            if(tres && (!ended->abort || !result))
               result = tres;
+            if(is_fatal_error(result) || (result && global->fail_early))
+              wrapitup = TRUE;
             (void)del_per_transfer(ended);
           }
         }
       } while(msg);
+      if(wrapitup) {
+        if(still_running)
+          continue;
+        else
+          break;
+      }
       if(!checkmore) {
         time_t tock = time(NULL);
         if(tick != tock) {
@@ -2218,6 +2287,8 @@
           /* we added new ones, make sure the loop doesn't exit yet */
           still_running = 1;
       }
+      if(is_fatal_error(result) || (result && global->fail_early))
+        wrapitup = TRUE;
     }
   }
 
@@ -2245,8 +2316,12 @@
   bool added = FALSE;
 
   result = create_transfer(global, share, &added);
-  if(result || !added)
+  if(result)
     return result;
+  if(!added) {
+    errorf(global, "no transfer performed\n");
+    return CURLE_READ_ERROR;
+  }
   for(per = transfers; per;) {
     bool retry;
     long delay;
diff --git a/src/tool_operate.h b/src/tool_operate.h
index 282b785..6199405 100644
--- a/src/tool_operate.h
+++ b/src/tool_operate.h
@@ -56,6 +56,9 @@
   time_t startat; /* when doing parallel transfers, this is a retry transfer
                      that has been set to sleep until this time before it
                      should get started (again) */
+  bool abort; /* when doing parallel transfers and this is TRUE then a critical
+                 error (eg --fail-early) has occurred in another transfer and
+                 this transfer will be aborted in the progress callback */
 
   /* for parallel progress bar */
   curl_off_t dltotal;
diff --git a/src/tool_progress.c b/src/tool_progress.c
index da6c2bc..031f8b8 100644
--- a/src/tool_progress.c
+++ b/src/tool_progress.c
@@ -101,6 +101,9 @@
   per->ultotal = ultotal;
   per->ulnow = ulnow;
 
+  if(per->abort)
+    return 1;
+
   if(config->readbusy) {
     config->readbusy = FALSE;
     curl_easy_pause(per->curl, CURLPAUSE_CONT);
diff --git a/src/tool_util.c b/src/tool_util.c
index a7535db..a16852c 100644
--- a/src/tool_util.c
+++ b/src/tool_util.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -86,7 +86,7 @@
     (void)gettimeofday(&now, NULL);
 #else
   else {
-    now.tv_sec = (long)time(NULL);
+    now.tv_sec = time(NULL);
     now.tv_usec = 0;
   }
 #endif
@@ -115,7 +115,7 @@
   ** time() returns the value of time in seconds since the Epoch.
   */
   struct timeval now;
-  now.tv_sec = (long)time(NULL);
+  now.tv_sec = time(NULL);
   now.tv_usec = 0;
   return now;
 }
diff --git a/src/tool_version.h b/src/tool_version.h
index e16b3fb..93bd7ef 100644
--- a/src/tool_version.h
+++ b/src/tool_version.h
@@ -25,7 +25,7 @@
 
 #define CURL_NAME "curl"
 #define CURL_COPYRIGHT LIBCURL_COPYRIGHT
-#define CURL_VERSION "7.78.0"
+#define CURL_VERSION "7.80.0"
 #define CURL_VERSION_MAJOR LIBCURL_VERSION_MAJOR
 #define CURL_VERSION_MINOR LIBCURL_VERSION_MINOR
 #define CURL_VERSION_PATCH LIBCURL_VERSION_PATCH
diff --git a/src/tool_vms.c b/src/tool_vms.c
index e250b7a..a267831 100644
--- a/src/tool_vms.c
+++ b/src/tool_vms.c
@@ -128,7 +128,7 @@
 };
 
 /* Array of DECC$* feature names and their desired values. */
-static struct decc_feat_t decc_feat_array[] = {
+static const struct decc_feat_t decc_feat_array[] = {
   /* Preserve command-line case with SET PROCESS/PARSE_STYLE=EXTENDED */
   { "DECC$ARGV_PARSE_STYLE", 1 },
   /* Preserve case for file names on ODS5 disks. */
diff --git a/src/tool_xattr.c b/src/tool_xattr.c
index 08e92fa..76ee524 100644
--- a/src/tool_xattr.c
+++ b/src/tool_xattr.c
@@ -24,7 +24,8 @@
 #ifdef HAVE_FSETXATTR
 #  include <sys/xattr.h> /* header from libc, not from libattr */
 #  define USE_XATTR
-#elif defined(__FreeBSD_version) && (__FreeBSD_version > 500000)
+#elif (defined(__FreeBSD_version) && (__FreeBSD_version > 500000)) || \
+      defined(__MidnightBSD_version)
 #  include <sys/types.h>
 #  include <sys/extattr.h>
 #  define USE_XATTR
@@ -111,7 +112,7 @@
         err = fsetxattr(fd, mappings[i].attr, value, strlen(value), 0, 0);
 #elif defined(HAVE_FSETXATTR_5)
         err = fsetxattr(fd, mappings[i].attr, value, strlen(value), 0);
-#elif defined(__FreeBSD_version)
+#elif defined(__FreeBSD_version) || defined(__MidnightBSD_version)
         {
           ssize_t rc = extattr_set_fd(fd, EXTATTR_NAMESPACE_USER,
                                       mappings[i].attr, value, strlen(value));
diff --git a/test-driver b/test-driver
index 9759384..be73b80 100755
--- a/test-driver
+++ b/test-driver
@@ -3,7 +3,7 @@
 
 scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 2011-2020 Free Software Foundation, Inc.
+# Copyright (C) 2011-2021 Free Software Foundation, Inc.
 #
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -105,8 +105,11 @@
 trap "st=141; $do_exit" 13
 trap "st=143; $do_exit" 15
 
-# Test script is run here.
-"$@" >$log_file 2>&1
+# Test script is run here. We create the file first, then append to it,
+# to ameliorate tests themselves also writing to the log file. Our tests
+# don't, but others can (automake bug#35762).
+: >"$log_file"
+"$@" >>"$log_file" 2>&1
 estatus=$?
 
 if test $enable_hard_errors = no && test $estatus -eq 99; then
@@ -128,7 +131,7 @@
 # know whether the test passed or failed simply by looking at the '.log'
 # file, without the need of also peaking into the corresponding '.trs'
 # file (automake bug#11814).
-echo "$res $test_name (exit status: $estatus)" >>$log_file
+echo "$res $test_name (exit status: $estatus)" >>"$log_file"
 
 # Report outcome to console.
 echo "${col}${res}${std}: $test_name"
diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt
index acd53d3..5771bd2 100644
--- a/tests/CMakeLists.txt
+++ b/tests/CMakeLists.txt
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -46,5 +46,6 @@
 add_runtests(test-full      "-a -p -r")
 # !flaky means that it'll skip all tests using the flaky keyword
 add_runtests(test-nonflaky  "-a -p !flaky")
+add_runtests(test-ci        "-a -p !flaky -r -rm")
 add_runtests(test-torture   "-a -t")
 add_runtests(test-event     "-a -e")
diff --git a/tests/FILEFORMAT.md b/tests/FILEFORMAT.md
index 7a9c482..df61c41 100644
--- a/tests/FILEFORMAT.md
+++ b/tests/FILEFORMAT.md
@@ -148,6 +148,7 @@
 - `%SRCDIR` - Full path to the source dir
 - `%SSHPORT` - Port number of the SCP/SFTP server
 - `%SSHSRVMD5` - MD5 of SSH server's public key
+- `%SSHSRVSHA256` - SHA256 of SSH server's public key
 - `%SSH_PWD` - Current directory friendly for the SSH server
 - `%TESTNUMBER` - Number of the test case
 - `%TFTP6PORT` - IPv6 port number of the TFTP server
diff --git a/tests/Makefile.am b/tests/Makefile.am
index 8f47bb0..7c64981 100644
--- a/tests/Makefile.am
+++ b/tests/Makefile.am
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -71,6 +71,9 @@
 
 # !flaky means that it'll skip all tests using the flaky keyword
 TEST_NF = -a -p !flaky
+
+# special CI target derived from nonflaky with CI-specific flags
+TEST_CI = $(TEST_NF) -r -rm
 endif
 
 # make sure that PERL is pointing to an executable
@@ -86,6 +89,9 @@
 am-test: perlcheck all
 	$(TEST) $(TEST_AM) $(TFLAGS)
 
+ci-test: perlcheck all
+	$(TEST) $(TEST_CI) $(TFLAGS)
+
 full-test: perlcheck all
 	$(TEST) $(TEST_F) $(TFLAGS)
 
diff --git a/tests/data/DISABLED b/tests/data/DISABLED
index e04eaa8..82609cf 100644
--- a/tests/data/DISABLED
+++ b/tests/data/DISABLED
@@ -15,6 +15,8 @@
 # of running runtests.pl as a child of itself sharing
 # some of the directories.
 1182
+# test 1184 causes flakiness in CI builds, mostly visible on macOS
+1184
 1209
 1211
 # fnmatch differences are just too common to make testing them sensible
@@ -27,6 +29,8 @@
 # test 1801 causes problems on Mac OS X and github
 # https://github.com/curl/curl/issues/380
 1801
+# test 2086 causes issues on Windows only
+2086
 #
 #
 # Tests that are disabled here for Hyper are SUPPOSED to work but
@@ -36,30 +40,11 @@
 # hyper support remains EXPERIMENTAL as long as there's a test number
 # listed below
 %if hyper
-154
-155
-158
-206
-207
-209
-213
-217
-246
-262
 265
 266
-281
-287
-319
-326
 357
 358
 359
-547
-551
-552
-555
-559
 565
 579
 580
@@ -71,49 +56,9 @@
 672
 673
 718
-1001
-1002
-1008
 1021
-1033
-1051
-1060
-1061
-1070
-1071
-1074
-1077
-1078
-1115
-1122
-1123
-1124
-1125
-1129
-1130
-1131
-1137
-1138
-1144
 1156
-1160
-1164
-1170
-1171
-1176
-1266
-1267
-1280
-1287
-1288
-1294
-1416
 1417
-1428
-1429
-1430
-1431
-1432
 1455
 1456
 1525
@@ -129,9 +74,5 @@
 1701
 1702
 1800
-2002
-2003
-2058
-2059
-2060
 %endif
+2043
diff --git a/tests/data/Makefile.inc b/tests/data/Makefile.inc
index 1636969..9a8b64b 100644
--- a/tests/data/Makefile.inc
+++ b/tests/data/Makefile.inc
@@ -60,14 +60,15 @@
 test334 test335 test336 test337 test338 test339 test340 test341 test342 \
 test343 test344 test345 test346 test347 test348 test349 test350 test351 \
 test352 test353 test354 test355 test356 test357 test358 test359 test360 \
-test361 test362 test363 test364 \
+test361 test362 test363 test364 test365 test366 test367 test368 test369 \
+test370 \
 \
-test393 test394 test395 test396 test397 \
+test392 test393 test394 test395 test396 test397 \
 \
 test400 test401 test402 test403 test404 test405 test406 test407 test408 \
 test409 test410 \
 \
-test430 test431 test432 test433 test434 \
+test430 test431 test432 test433 test434 test435 \
 \
 test490 test491 test492 test493 test494 \
 \
@@ -106,7 +107,7 @@
 test863 test864 test865 test866 test867 test868 test869 test870 test871 \
 test872 test873 test874 test875 test876 test877 test878 test879 test880 \
 test881 test882 test883 test884 test885 test886 test887 test888 test889 \
-test890 test891 test892 test893 test894 test895 test896 \
+test890 test891 test892 test893 test894 test895 test896 test897 \
 \
 test900 test901 test902 test903 test904 test905 test906 test907 test908 \
 test909 test910 test911 test912 test913 test914 test915 test916 test917 \
@@ -118,6 +119,8 @@
 test963 test964 test965 test966 test967 test968 test969 test970 test971 \
 test972 \
 \
+test980 test981 test982 test983 test984 test985 test986 \
+\
 test1000 test1001 test1002 test1003 test1004 test1005 test1006 test1007 \
 test1008 test1009 test1010 test1011 test1012 test1013 test1014 test1015 \
 test1016 test1017 test1018 test1019 test1020 test1021 test1022 test1023 \
@@ -141,7 +144,7 @@
 test1160 test1161 test1162 test1163 test1164 test1165 test1166 test1167 \
 test1168 test1169 test1170 test1171 test1172 test1173 test1174 test1175 \
 test1176 test1177 test1178 test1179 test1180 test1181 test1182 test1183 \
-\
+test1184 test1185 \
 test1188 \
 \
 test1190 test1191 test1192 test1193 test1194 test1195 test1196 test1197 \
@@ -180,14 +183,14 @@
 test1440 test1441 test1442 test1443 test1444 test1445 test1446 test1447 \
 test1448 test1449 test1450 test1451 test1452 test1453 test1454 test1455 \
 test1456 test1457 test1458 test1459 test1460 test1461 test1462 test1463 \
-test1464 test1465 \
+test1464 test1465 test1466 \
 \
 test1500 test1501 test1502 test1503 test1504 test1505 test1506 test1507 \
 test1508 test1509 test1510 test1511 test1512 test1513 test1514 test1515 \
 test1516 test1517 test1518 test1519 test1520 test1521 test1522 test1523 \
 test1524 test1525 test1526 test1527 test1528 test1529 test1530 test1531 \
 test1532 test1533 test1534 test1535 test1536 test1537 test1538 test1539 \
-test1540 \
+test1540          test1542 \
 \
 test1550 test1551 test1552 test1553 test1554 test1555 test1556 test1557 \
 test1558 test1559 test1560 test1561 test1562 test1563 test1564 test1565 \
@@ -213,21 +216,19 @@
 test1908 test1909 test1910 test1911 test1912 test1913 test1914 test1915 \
 test1916 test1917 test1918 \
 \
-test1933 test1934 test1935 test1936 \
+test1933 test1934 test1935 test1936 test1937 test1938 \
 \
 test2000 test2001 test2002 test2003 test2004 \
 \
                                                                test2023 \
 test2024 test2025 test2026 test2027 test2028 test2029 test2030 test2031 \
-test2032          test2034 test2035 test2036 test2037 test2038 test2039 \
+test2032 test2033 test2034 test2035 test2036 test2037 test2038 test2039 \
 test2040 test2041 test2042 test2043 test2044 test2045 test2046 test2047 \
 test2048 test2049 test2050 test2051 test2052 test2053 test2054 test2055 \
 test2056 test2057 test2058 test2059 test2060 test2061 test2062 test2063 \
-test2064 test2065 test2066 test2067 test2068 test2069 \
-test2064 test2065 test2066 test2067 test2068 test2069 test2070 \
-         test2071 test2072 test2073 test2074 test2075 test2076 test2077 \
-test2078 \
-test2080 test2081 \
+test2064 test2065 test2066 test2067 test2068 test2069 test2070 test2071 \
+test2072 test2073 test2074 test2075 test2076 test2077 test2078 test2079 \
+test2080 test2081 test2082 test2083 test2084 test2085 test2086 test2087 \
 \
 test2100 \
 \
@@ -235,4 +236,5 @@
 \
 test3000 test3001 test3002 test3003 test3004 test3005 test3006 test3007 \
 test3008 test3009 test3010 test3011 test3012 test3013 test3014 test3015 \
-test3016 test3017 test3018 test3019 test3020
+test3016 test3017 test3018 test3019 test3020 test3021 test3022 test3023 \
+test3024
diff --git a/tests/data/test1007 b/tests/data/test1007
index e3c12b8..c50e97d 100644
--- a/tests/data/test1007
+++ b/tests/data/test1007
@@ -31,12 +31,12 @@
 69
 </errorcode>
 <protocol>
-opcode: 2
-mode: octet
-tsize: 27
-blksize: 512
-timeout: 6
-filename: /invalid-file
+opcode = 2
+mode = octet
+tsize = 27
+blksize = 512
+timeout = 6
+filename = /invalid-file
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test1009 b/tests/data/test1009
index 223fcdb..9e1fa55 100644
--- a/tests/data/test1009
+++ b/tests/data/test1009
@@ -36,12 +36,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test1049 b/tests/data/test1049
index 713b4bb..54d2390 100644
--- a/tests/data/test1049
+++ b/tests/data/test1049
@@ -36,12 +36,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test1093 b/tests/data/test1093
index 5e1484d..4fbc7b8 100644
--- a/tests/data/test1093
+++ b/tests/data/test1093
@@ -36,12 +36,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test1094 b/tests/data/test1094
index 3ed53f2..dd1452b 100644
--- a/tests/data/test1094
+++ b/tests/data/test1094
@@ -42,12 +42,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: netascii
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = netascii
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test1099 b/tests/data/test1099
index f2fa2f2..7709991 100644
--- a/tests/data/test1099
+++ b/tests/data/test1099
@@ -31,18 +31,18 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: an/invalid-file
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = an/invalid-file
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 <stdout>
 data for %TESTNUMBER
diff --git a/tests/data/test1122 b/tests/data/test1122
index 8f2fd87..a9f6c43 100644
--- a/tests/data/test1122
+++ b/tests/data/test1122
@@ -11,16 +11,17 @@
 # Server-side
 <reply>
 <data base64="yes">
-SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
-dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
-UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
-VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
-U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcA0KQ29udGVudC1MZW5ndGg6IDQ0DQoN
-Ch+LCAh5nqtBAANsYWxhbGEAy8nMS1Uw5FLIAdFGXAoQhjEXAAoCcWAYAAAA
+SFRUUC8xLjEgMjAwIE9LIHN3c2Nsb3NlDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUz
+IEdNVA0KU2VydmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8x
+LjMuMjYuMWEgUEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3Bl
+cmwvMS4yOQ0KVmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsg
+Y2hhcnNldD1JU08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcA0KQ29udGVudC1MZW5n
+dGg6IDQ0DQoNCh+LCAh5nqtBAANsYWxhbGEAy8nMS1Uw5FLIAdFGXAoQhjEXAAoCcWAYAAAA
 </data>
 
+# This ignore Content-Length
 <datacheck>
-HTTP/1.1 200 OK

+HTTP/1.1 200 OK swsclose

 Date: Mon, 29 Nov 2004 21:56:53 GMT

 Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29

 Vary: Accept-Encoding

diff --git a/tests/data/test1123 b/tests/data/test1123
index 5ee8400..036c78d 100644
--- a/tests/data/test1123
+++ b/tests/data/test1123
@@ -15,30 +15,30 @@
 dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
 UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
 VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
-U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZGVmbGF0ZQ0KQ29udGVudC1MZW5ndGg6IDEz
-MDUNCg0KeJzcWNtu4zYQfTeQf2D91AK2brYTOXC0KHLZBM02wdoFuk8GLdE2G0kUSMq5PPTbO5Qo
-ibEcr3eDvgRIYnLmnMPhDEmTmXx6SmK0IVxQlp51XcvpIpKGLKLp6qx7M73r+/5o3He7n4LO5JeL
-u/PZt/tLlHH2DwllP6ZCAhBNv01nl19Qdy1ldmrbS07EOiFYWimR9gKHDySN7GXS1zzRd6yhFcmo
-C6JbWkEHocqm2k1vTqPAPXa9iW0YSkSEJZnjKCKAGI/9vuP3PRc5w1PHPfXGE9vwG4Q8Ux9R4DnO
-sO86fddHjnfqwc9AUyrEqzhSnJC5WDMugzDncR2OYW/jl3kcF3CE0wjFdNGmFhAdHhGhljpnSVJS
-UoIkY7UAx/wZLRlHYUxJKvuCRgT99fUWSY5TsYSKWjCLRshQ3hkMogLhcgSlWqlwVd8ljYk46uRC
-ddQY4jmV+MlCNxKJPMtAX6Dr2ey+V/yd9tAVtI86V0X74uZ81kOzy9s/L+Hz9uJ3gF3d3F72iuE/
-391fX36FNgzwSGKIqZTqZ0zInm7m0AoZe6BEFNooz2KGIxgCllqekKiZdQ9lWIhHxiPVhMjSPFkU
-9un09qgTEi7pkoZQVzD9QTj4mChDgWo8wQjFtCAbGXsknERHncVzlaQekmvyZsarslhHndkaqAjD
-74KmajMJSG2dapVgBpsOec5RJ8bpKscrIooYSLqhnKUJDCBAR5fQWBsbKnFM5fNchIyTYHTiD63R
-ycTesm+BM8JDkAwGlntsYCvzFhrm8wB7bWwgC5Ne1yzLY8ybsY5HY4hhCMt529MiVAO6A8t3XxFe
-h2I4ymCc0Su0EQ7HxbnhWyNnYuuO6ZmHLAddz6282vAKUw7iD2qMMYDIFyLkNJNwRIpgoE6H16YS
-BqVPw/Vc7eXggixxHsuJbRpLGNR/Xh1gGZQ92HloVielrdaLPbFbrEZszRLythAsYMpLFXV42iZD
-69YCjaZcvRwuB2CtpGiNyOLFO1wEwFpE0RqRF5odLgJgLaJojUi4hj1GYrY6XKqmaMFGopHlWXK4
-IIC1lKI1IhFZHC4CYC2iaI0IE0+HiwBYiyiaUS8RqfPyB2pWEqq6abqxzHMOaRMk0Ou36hqF2Ygf
-KMlGVMXYCENE3RwOV1FoLVMQG52Ecs744UolXmtpslnXhAVVraBZemIKhxyk4MvNzP4bncPpASmj
-eYJuS8fErhAar76n5JyTmNSZa5nn+v4WnFiuZ8EF6Q33G2x1rzo5dvxRi1hdsNocdS/afXHaBSzn
-Yu+azATOUQITXjM5l2v4qoactUwlEucSbjKiDqnsV93aoE9gnFISo6kkKXzDrya26WxRoEq76/7v
-Aq8ioopsIFt0zmIS3D2mhNe4wlRFapuhVr1qCasveE4TmmJpzk5yuCEUtYGC1p2W1/OO97kHe7n7
-nK7v7+W6e8eFpbE/6r1u93i4zz3eS/bHe73OXrc7+k7c3wlsf2SD1tjl/W67/LAmMngywUMMrqO1
-Tm18RvI5I2ddTkJ4HSibeknVi7LBmRvZUUPtcuwk6nsLuE+Gqhg7XTuZxuOsRd1+uL3FlVSqDQV2
-uLOjX/Vt6redWiW23mkN4u28seLehuP/L2nOT2dsOHhnxtT76uMnyvUGI/cdmXqBp9jHz9LAc4Yn
-78jSNaFJhOOPn6jhcDTw3pGosA9PffEzeTIs+qyv/ysUdP4DAAD//4IzEaNjAAAAAP//AwDdOI7R
+U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZGVmbGF0ZSwgY2h1bmtlZA0KDQo1MTkNCnic
+3FjbbuM2EH03kH9g/dQCtm62EzlwtChy2QTNNsHaBbpPBi3RNhtJFEjKuTz02zuUKImxHK93g74E
+SGJy5pzD4QxJk5l8ekpitCFcUJaedV3L6SKShiyi6eqsezO96/v+aNx3u5+CzuSXi7vz2bf7S5Rx
+9g8JZT+mQgIQTb9NZ5dfUHctZXZq20tOxDohWFopkfYChw8kjexl0tc80XesoRXJqAuiW1pBB6HK
+ptpNb06jwD12vYltGEpEhCWZ4ygigBiP/b7j9z0XOcNTxz31xhPb8BuEPFMfUeA5zrDvOn3XR453
+6sHPQFMqxKs4UpyQuVgzLoMw53EdjmFv45d5HBdwhNMIxXTRphYQHR4RoZY6Z0lSUlKCJGO1AMf8
+GS0ZR2FMSSr7gkYE/fX1FkmOU7GEilowi0bIUN4ZDKIC4XIEpVqpcFXfJY2JOOrkQnXUGOI5lfjJ
+QjcSiTzLQF+g69nsvlf8nfbQFbSPOldF++LmfNZDs8vbPy/h8/bid4Bd3dxe9orhP9/dX19+hTYM
+8EhiiKmU6mdMyJ5u5tAKGXugRBTaKM9ihiMYApZanpComXUPZViIR8Yj1YTI0jxZFPbp9PaoExIu
+6ZKGUFcw/UE4+JgoQ4FqPMEIxbQgGxl7JJxER53Fc5WkHpJr8mbGq7JYR53ZGqgIw++CpmozCUht
+nWqVYAabDnnOUSfG6SrHKyKKGEi6oZylCQwgQEeX0FgbGypxTOXzXISMk2B04g+t0cnE3rJvgTPC
+Q5AMBpZ7bGAr8xYa5vMAe21sIAuTXtcsy2PMm7GOR2OIYQjLedvTIlQDugPLd18RXodiOMpgnNEr
+tBEOx8W54VsjZ2LrjumZhywHXc+tvNrwClMO4g9qjDGAyBci5DSTcESKYKBOh9emEgalT8P1XO3l
+4IIscR7LiW0aSxjUf14dYBmUPdh5aFYnpa3Wiz2xW6xGbM0S8rYQLGDKSxV1eNomQ+vWAo2mXL0c
+LgdgraRojcjixTtcBMBaRNEakReaHS4CYC2iaI1IuIY9RmK2OlyqpmjBRqKR5VlyuCCAtZSiNSIR
+WRwuAmAtomiNCBNPh4sAWIsomlEvEanz8gdqVhKqumm6scxzDmkTJNDrt+oahdmIHyjJRlTF2AhD
+RN0cDldRaC1TEBudhHLO+OFKJV5rabJZ14QFVa2gWXpiCoccpODLzcz+G53D6QEpo3mCbkvHxK4Q
+Gq++p+Sck5jUmWuZ5/r+FpxYrmfBBekN9xtsda86OXb8UYtYXbDaHHUv2n1x2gUs52LvmswEzlEC
+E14zOZdr+KqGnLVMJRLnEm4yog6p7Ffd2qBPYJxSEqOpJCl8w68mtulsUaBKu+v+7wKvIqKKbCBb
+dM5iEtw9poTXuMJURWqboVa9agmrL3hOE5piac5OcrghFLWBgtadltfzjve5B3u5+5yu7+/lunvH
+haWxP+q9bvd4uM893kv2x3u9zl63O/pO3N8JbH9kg9bY5f1uu/ywJjJ4MsFDDK6jtU5tfEbyOSNn
+XU5CeB0om3pJ1YuywZkb2VFD7XLsJOp7C7hPhqoYO107mcbjrEXdfri9xZVUqg0Fdrizo1/1beq3
+nVoltt5pDeLtvLHi3obj/y9pzk9nbDh4Z8bU++rjJ8r1BiP3HZl6gafYx8/SwHOGJ+/I0jWhSYTj
+j5+o4XA08N6RqLAPT33xM3kyLPqsr/8rFHT+AwAA//+CMxGjYwAAAAD//wMA3TiO0Q0KMA0KDQo=
 </data>
 
 <datacheck>
@@ -47,8 +47,7 @@
 Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29

 Vary: Accept-Encoding

 Content-Type: text/html; charset=ISO-8859-1

-Transfer-Encoding: deflate

-Content-Length: 1305

+Transfer-Encoding: deflate, chunked

 

 <?xml version="1.0" encoding="ISO-8859-1"?>
 <!DOCTYPE project-listing SYSTEM "http://freshmeat.net/backend/fm-projects-0.4.dtd">
diff --git a/tests/data/test1125 b/tests/data/test1125
index 1bb306b..43e00a5 100644
--- a/tests/data/test1125
+++ b/tests/data/test1125
@@ -15,8 +15,8 @@
 dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
 UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
 VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
-U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcA0KQ29udGVudC1MZW5ndGg6IDQ0DQoN
-Ch+LCAh5nqtBAANsYWxhbGEAy8nMS1Uw5FLIAdFGXAoQhjEXAAoCcWAYAAAA
+U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcCwgY2h1bmtlZA0KDQoyYw0KH4sICHme
+q0EAA2xhbGFsYQDLycxLVTDkUsgB0UZcChCGMRcACgJxYBgAAAANCjANCg0K
 </data>
 
 <datacheck>
@@ -25,8 +25,7 @@
 Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29

 Vary: Accept-Encoding

 Content-Type: text/html; charset=ISO-8859-1

-Transfer-Encoding: gzip

-Content-Length: 44

+Transfer-Encoding: gzip, chunked

 

 line 1
  line 2
diff --git a/tests/data/test1138 b/tests/data/test1138
index 6c5f00d..c982583 100644
--- a/tests/data/test1138
+++ b/tests/data/test1138
@@ -11,7 +11,7 @@
 <reply>
 <data>
 HTTP/1.1 302 OK swsclose

-Location: ../moo.html/?name=آغاز-سم-زدایی-از-بازار-پول&testcase=/%TESTNUMBER0002    

+Location: ../moo.html/?name=آغاز-سم-زدایی-از-بازار-پول&testcase=/%TESTNUMBER0002

 Date: Tue, 09 Nov 2010 14:49:00 GMT

 Connection: close

 

@@ -26,7 +26,7 @@
 </data2>
 <datacheck>
 HTTP/1.1 302 OK swsclose

-Location: ../moo.html/?name=آغاز-سم-زدایی-از-بازار-پول&testcase=/%TESTNUMBER0002    

+Location: ../moo.html/?name=آغاز-سم-زدایی-از-بازار-پول&testcase=/%TESTNUMBER0002

 Date: Tue, 09 Nov 2010 14:49:00 GMT

 Connection: close

 

diff --git a/tests/data/test1144 b/tests/data/test1144
index 1fc852b..7e2242b 100644
--- a/tests/data/test1144
+++ b/tests/data/test1144
@@ -40,6 +40,10 @@
 #
 # Client-side
 <client>
+# hyper doesn't support HTTP/0.9
+<features>
+!hyper
+</features>
 <server>
 http
 </server>
diff --git a/tests/data/test1160 b/tests/data/test1160
index ac10e5a..e24ce93 100644
--- a/tests/data/test1160
+++ b/tests/data/test1160
@@ -15,7 +15,7 @@
 HTTP/1.1 200 OK

 Date: Tue, 09 Nov 2010 14:49:00 GMT

 Content-Length: 0

-Set-Cookie:             ÿ=         ;                                                                                                                     ÿ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz†……€zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzúzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz󠁖zzzzzzzzzzzz~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz¶zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz

+Set-Cookie: ____________ÿ=         ;                                                                                                                     ÿ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz†……€zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzúzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz󠁖zzzzzzzzzzzz~zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz¶zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz

 

 </data>
 </reply>
diff --git a/tests/data/test1164 b/tests/data/test1164
index 6140c2e..aedd6c9 100644
--- a/tests/data/test1164
+++ b/tests/data/test1164
@@ -22,6 +22,10 @@
 #
 # Client-side
 <client>
+# hyper doesn't support HTTP/0.9
+<features>
+!hyper
+</features>
 <server>
 http
 </server>
diff --git a/tests/data/test1170 b/tests/data/test1170
index 688fbed..fd718f3 100644
--- a/tests/data/test1170
+++ b/tests/data/test1170
@@ -15,8 +15,8 @@
 dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
 UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
 VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
-U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcA0KQ29udGVudC1MZW5ndGg6IDQ0DQoN
-Ch+LCAh5nqtBAANsYWxhbGEAy8nMS1Uw5FLIAdFGXAoQhjEXAAoCcWAYAAAA
+U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcCwgY2h1bmtlZA0KDQoyYw0KH4sICHme
+q0EAA2xhbGFsYQDLycxLVTDkUsgB0UZcChCGMRcACgJxYBgAAAANCjANCg0K
 </data>
 
 <datacheck>
@@ -25,8 +25,7 @@
 Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29

 Vary: Accept-Encoding

 Content-Type: text/html; charset=ISO-8859-1

-Transfer-Encoding: gzip

-Content-Length: 44

+Transfer-Encoding: gzip, chunked

 

 line 1
  line 2
diff --git a/tests/data/test1171 b/tests/data/test1171
index 7057e0c..e66f87c 100644
--- a/tests/data/test1171
+++ b/tests/data/test1171
@@ -15,8 +15,8 @@
 dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
 UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
 VmFyeTogQWNjZXB0LUVuY29kaW5nDQpDb250ZW50LVR5cGU6IHRleHQvaHRtbDsgY2hhcnNldD1J
-U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcA0KQ29udGVudC1MZW5ndGg6IDQ0DQoN
-Ch+LCAh5nqtBAANsYWxhbGEAy8nMS1Uw5FLIAdFGXAoQhjEXAAoCcWAYAAAA
+U08tODg1OS0xDQpUcmFuc2Zlci1FbmNvZGluZzogZ3ppcCwgY2h1bmtlZA0KDQoyYw0KH4sICHme
+q0EAA2xhbGFsYQDLycxLVTDkUsgB0UZcChCGMRcACgJxYBgAAAANCjANCg0K
 </data>
 
 <datacheck>
@@ -25,8 +25,7 @@
 Server: Apache/1.3.31 (Debian GNU/Linux) mod_gzip/1.3.26.1a PHP/4.3.9-1 mod_ssl/2.8.20 OpenSSL/0.9.7d mod_perl/1.29

 Vary: Accept-Encoding

 Content-Type: text/html; charset=ISO-8859-1

-Transfer-Encoding: gzip

-Content-Length: 44

+Transfer-Encoding: gzip, chunked

 

 line 1
  line 2
diff --git a/tests/data/test1173 b/tests/data/test1173
index dd09f81..f52afa6 100644
--- a/tests/data/test1173
+++ b/tests/data/test1173
@@ -15,12 +15,18 @@
 </server>
 
  <name>
-Basic man page syntax check
+Man page syntax checks
  </name>
 
 <command type="perl">
-%SRCDIR/manpage-syntax.pl %SRCDIR/../docs/*.1  %SRCDIR/../docs/libcurl/*.3 %SRCDIR/../docs/libcurl/opts/*.3
+%SRCDIR/manpage-syntax.pl %SRCDIR/../docs/libcurl/symbols-in-versions %SRCDIR/../docs/*.1  %SRCDIR/../docs/libcurl/*.3 %SRCDIR/../docs/libcurl/opts/*.3
 </command>
 </client>
 
+<verify>
+<stderr>
+ok
+</stderr>
+</verify>
+
 </testcase>
diff --git a/tests/data/test1176 b/tests/data/test1176
index bc3711c..d2471e1 100644
--- a/tests/data/test1176
+++ b/tests/data/test1176
@@ -9,17 +9,17 @@
 # Server-side
 <reply>
 <data nocheck="yes">
-HTTP/1.1 200 OK
-Date: Tue, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
-ETag: "21025-dc7-39462498"
-Accept-Ranges: bytes
-Content-Length: 6
-Connection: close
-Content-Type: text/html
-Funny-head: yesyes
-
+HTTP/1.1 200 OK

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Server: test-server/fake

+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

 -foo-
 </data>
 </reply>
@@ -31,7 +31,7 @@
 http
 </server>
  <name>
-HTTP GET
+--output using #0
  </name>
  <command option="no-output">
 http://%HOSTIP:%HTTPPORT/%TESTNUMBER -o 'log/base-#0'
@@ -49,17 +49,17 @@
 

 </protocol>
 <file name="log/base-#0">
-HTTP/1.1 200 OK
-Date: Tue, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
-ETag: "21025-dc7-39462498"
-Accept-Ranges: bytes
-Content-Length: 6
-Connection: close
-Content-Type: text/html
-Funny-head: yesyes
-
+HTTP/1.1 200 OK

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Server: test-server/fake

+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

 -foo-
 </file>
 </verify>
diff --git a/tests/data/test1184 b/tests/data/test1184
new file mode 100644
index 0000000..feac348
--- /dev/null
+++ b/tests/data/test1184
@@ -0,0 +1,108 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP CONNECT
+HTTP proxy
+proxytunnel
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<connect>
+HTTP/1.1 200 Mighty fine indeed

+Server: test tunnel 2000

+

+</connect>
+
+<data nocheck="yes">
+HTTP/1.1 302 OK

+Location: http://%HOSTIP.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER0002

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+Connection: close

+

+contents
+</data>
+
+<data2 nocheck="yes">
+HTTP/1.1 200 OK

+Content-Length: 7

+

+second
+</data2>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+http-proxy
+</server>
+ <name>
+HTTP 1.1 CONNECT with redirect and set -H user-agent
+ </name>
+ <command>
+-x %HOSTIP:%PROXYPORT -p http://%HOSTIP.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER -L -H "User-Agent: %TESTNUMBER-agent"
+</command>
+<features>
+proxy
+</features>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<proxy>
+CONNECT %HOSTIP.%TESTNUMBER:%HTTPPORT HTTP/1.1

+Host: %HOSTIP.%TESTNUMBER:%HTTPPORT

+User-Agent: curl/%VERSION

+Proxy-Connection: Keep-Alive

+

+CONNECT %HOSTIP.%TESTNUMBER:%HTTPPORT HTTP/1.1

+Host: %HOSTIP.%TESTNUMBER:%HTTPPORT

+User-Agent: curl/%VERSION

+Proxy-Connection: Keep-Alive

+

+</proxy>
+<protocol>
+GET /we/want/that/page/%TESTNUMBER HTTP/1.1

+Host: %HOSTIP.%TESTNUMBER:%HTTPPORT

+Accept: */*

+User-Agent: %TESTNUMBER-agent

+

+GET /we/want/that/page/%TESTNUMBER0002 HTTP/1.1

+Host: %HOSTIP.%TESTNUMBER:%HTTPPORT

+Accept: */*

+User-Agent: %TESTNUMBER-agent

+

+</protocol>
+<stdout>
+HTTP/1.1 200 Mighty fine indeed

+Server: test tunnel 2000

+

+HTTP/1.1 302 OK

+Location: http://%HOSTIP.%TESTNUMBER:%HTTPPORT/we/want/that/page/%TESTNUMBER0002

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Server: test-server/fake

+Content-Type: text/html

+Funny-head: yesyes

+Content-Length: 9

+Connection: close

+

+HTTP/1.1 200 Mighty fine indeed

+Server: test tunnel 2000

+

+HTTP/1.1 200 OK

+Content-Length: 7

+

+second
+</stdout>
+</verify>
+</testcase>
diff --git a/tests/data/test1185 b/tests/data/test1185
new file mode 100644
index 0000000..47b4f22
--- /dev/null
+++ b/tests/data/test1185
@@ -0,0 +1,184 @@
+<testcase>
+<info>
+<keywords>
+checksrc
+</keywords>
+</info>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<name>
+checksrc
+</name>
+
+<command type="perl">
+%SRCDIR/../lib/checksrc.pl log/code%TESTNUMBER.c
+</command>
+<file name="log/code%TESTNUMBER.c">
+/* test source code
+ * Violate each rule at least once.
+ **/
+int hello; /*------------------------------------------------------------------*/
+int	tab;
+int trailing_space;
+int a = func ();
+int b = func( b);
+int b = func(b );
+func(a, b , c);
+
+int hello()
+{
+  return(2);
+}
+func(a, b,c);
+
+if(a == 2) {
+  ;
+} else {
+  moo = 2;
+}
+
+if(a == 2){ /* followed by comment */
+  ;
+}
+
+func() ;
+
+a = sprintf(buffer, "%s", moo);
+
+FILE *f = fopen("filename", "r");
+
+void startfunc(int a, int b) {
+  func();
+}
+
+ for(;;) {
+     func(1);
+ } while(1);
+
+ char * name = "hello";
+ char* name = "hello";
+
+ int foo=bar;
+ int foo= bar;
+ int foo = bar;
+ int foo = bar;foo++;
+ for(;;)  {
+ }
+
+ int a = sizeof int;
+ int a = snprintf(buffer, sizeof(buffer), "%d", 99);
+
+ if(a) b++;
+
+ // CPP comment?
+
+ /* comment doesn't end
+
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<stdout>
+./log/code1185.c:4:82: warning: Longer than 79 columns (LONGLINE)
+ int hello; /*------------------------------------------------------------------*/
+./log/code1185.c:5:4: error: Contains TAB character (TABS)
+ int	tab;
+    ^
+./log/code1185.c:7:13: warning:  func with space (SPACEBEFOREPAREN)
+ int a = func ();
+             ^
+./log/code1185.c:8:14: warning: space after open parenthesis (SPACEAFTERPAREN)
+ int b = func( b);
+              ^
+./log/code1185.c:9:16: warning: space before close parenthesis (SPACEBEFORECLOSE)
+ int b = func(b );
+                ^
+./log/code1185.c:10:11: warning: space before comma (SPACEBEFORECOMMA)
+ func(a, b , c);
+           ^
+./log/code1185.c:14:9: warning: return without space before paren (RETURNNOSPACE)
+   return(2);
+         ^
+./log/code1185.c:16:11: warning: comma without following space (COMMANOSPACE)
+ func(a, b,c);
+           ^
+./log/code1185.c:18:12: warning: wrongly placed open brace (BRACEPOS)
+ if(a == 2) {
+            ^
+./log/code1185.c:20:1: warning: else after closing brace on same line (BRACEELSE)
+ } else {
+ ^
+./log/code1185.c:24:11: warning: missing space after close paren (PARENBRACE)
+ if(a == 2){  
+           ^
+./log/code1185.c:28:7: warning: no space before semicolon (SPACESEMICOLON)
+ func() ;
+       ^
+./log/code1185.c:30:5: warning: use of sprintf is banned (BANNEDFUNC)
+ a = sprintf(buffer, "%s", moo);
+     ^
+./log/code1185.c:32:11: warning: use of non-binary fopen without FOPEN_* macro: r (FOPENMODE)
+ FILE *f = fopen("filename", "r");
+           ^
+./log/code1185.c:34:30: warning: wrongly placed open brace (BRACEPOS)
+ void startfunc(int a, int b) {
+                              ^
+./log/code1185.c:39:6: warning: not indented 2 steps (uses 4) (INDENTATION)
+      func(1);
+      ^
+./log/code1185.c:42:8: warning: space after declarative asterisk (ASTERISKSPACE)
+  char * name = "hello";
+        ^
+./log/code1185.c:43:7: warning: space after declarative asterisk (ASTERISKSPACE)
+  char* name = "hello";
+       ^
+./log/code1185.c:43:6: warning: no space before asterisk (ASTERISKNOSPACE)
+  char* name = "hello";
+      ^
+./log/code1185.c:45:10: warning: no space after equals sign (EQUALSNOSPACE)
+  int foo=bar;
+          ^
+./log/code1185.c:46:9: warning: no space before equals sign (NOSPACEEQUALS)
+  int foo= bar;
+         ^
+./log/code1185.c:48:16: warning: no space after semicolon (SEMINOSPACE)
+  int foo = bar;foo++;
+                ^
+./log/code1185.c:49:10: warning: multiple spaces (MULTISPACE)
+  for(;;)  {
+          ^
+./log/code1185.c:50:2: warning: not indented 2 steps (uses 0) (INDENTATION)
+  }
+  ^
+./log/code1185.c:52:16: warning: sizeof without parenthesis (SIZEOFNOPAREN)
+  int a = sizeof int;
+                ^
+./log/code1185.c:53:10: warning: use of snprintf is banned (SNPRINTF)
+  int a = snprintf(buffer, sizeof(buffer), "%d", 99);
+          ^
+./log/code1185.c:55:7: warning: conditional block on the same line (ONELINECONDITION)
+  if(a) b++;
+       ^
+./log/code1185.c:57:2: warning: // comment (CPPCOMMENTS)
+  // CPP comment?
+  ^
+./log/code1185.c:1:1: error: Missing copyright statement (COPYRIGHT)
+ 
+ ^
+./log/code1185.c:1:1: error: Missing closing comment (OPENCOMMENT)
+ 
+ ^
+checksrc: 0 errors and 30 warnings
+</stdout>
+<errorcode>
+5
+</errorcode>
+</verify>
+</testcase>
diff --git a/tests/data/test1238 b/tests/data/test1238
index 606dd1f..cfb541c 100644
--- a/tests/data/test1238
+++ b/tests/data/test1238
@@ -45,12 +45,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 # 28 = CURLE_OPERATION_TIMEDOUT
 <errorcode>
diff --git a/tests/data/test1242 b/tests/data/test1242
index 9f573a7..61938a0 100644
--- a/tests/data/test1242
+++ b/tests/data/test1242
@@ -35,9 +35,9 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test1243 b/tests/data/test1243
index f8b246f..ba08a83 100644
--- a/tests/data/test1243
+++ b/tests/data/test1243
@@ -36,9 +36,9 @@
  to server
 </upload>
 <protocol>
-opcode: 2
-mode: octet
-filename: /test%TESTNUMBER.txt
+opcode = 2
+mode = octet
+filename = /test%TESTNUMBER.txt
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test1266 b/tests/data/test1266
index c5c8ba3..2e72ae4 100644
--- a/tests/data/test1266
+++ b/tests/data/test1266
@@ -19,6 +19,10 @@
 #
 # Client-side
 <client>
+# hyper doesn't grok HTTP/0.9
+<features>
+!hyper
+</features>
 <server>
 http
 </server>
diff --git a/tests/data/test1267 b/tests/data/test1267
index 7ca6dde..920fc57 100644
--- a/tests/data/test1267
+++ b/tests/data/test1267
@@ -19,6 +19,10 @@
 #
 # Client-side
 <client>
+# hyper doesn't grok HTTP/0.9
+<features>
+!hyper
+</features>
 <server>
 http
 </server>
diff --git a/tests/data/test1272 b/tests/data/test1272
index fc1baea..39c6290 100644
--- a/tests/data/test1272
+++ b/tests/data/test1272
@@ -22,6 +22,9 @@
 <server>
 gophers
 </server>
+<killserver>
+gophers
+</killserver>
  <name>
 Gophers index
  </name>
diff --git a/tests/data/test1273 b/tests/data/test1273
index 61d475a..0c076cb 100644
--- a/tests/data/test1273
+++ b/tests/data/test1273
@@ -44,6 +44,9 @@
 <server>
 http
 </server>
+<killserver>
+http
+</killserver>
  <name>
 -f and resume transfer of an entirely-downloaded file
  </name>
diff --git a/tests/data/test1280 b/tests/data/test1280
index 3744dc8..3f5bdd5 100644
--- a/tests/data/test1280
+++ b/tests/data/test1280
@@ -9,11 +9,11 @@
 # Server-side
 <reply>
 <data>
-HTTP/1.1 200 OK
-Date: Tue, 09 Nov 2010 14:49:00 GMT
-Content-Length: 6
-Connection: close
-
+HTTP/1.1 200 OK

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Content-Length: 6

+Connection: close

+

 bytes
 </data>
 </reply>
diff --git a/tests/data/test1287 b/tests/data/test1287
index 5493e7d..0d0ad47 100644
--- a/tests/data/test1287
+++ b/tests/data/test1287
@@ -83,8 +83,10 @@
 

 </protocol>
 <file name="log/stderr%TESTNUMBER" mode="text">
+%if !hyper
 * Ignoring Content-Length in CONNECT 200 response
 * Ignoring Transfer-Encoding in CONNECT 200 response
+%endif
 </file>
 <stripfile>
 s/^.*(?=\* Ignoring (?:Content-Length|Transfer-Encoding) )// or $_ = ''
diff --git a/tests/data/test1294 b/tests/data/test1294
index 7f2a377..396f8a1 100644
--- a/tests/data/test1294
+++ b/tests/data/test1294
@@ -28,8 +28,10 @@
 #
 # Client-side
 <client>
+# hyper doesn't support the added crazy header
 <features>
 debug
+!hyper
 </features>
 <server>
 http
diff --git a/tests/data/test1400 b/tests/data/test1400
index 08fa023..b4d29d3 100644
--- a/tests/data/test1400
+++ b/tests/data/test1400
@@ -79,7 +79,7 @@
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1401 b/tests/data/test1401
index 609b34c..65efc47 100644
--- a/tests/data/test1401
+++ b/tests/data/test1401
@@ -96,7 +96,7 @@
                                            (long)CURLPROTO_HTTP);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1402 b/tests/data/test1402
index 89515a8..c111af4 100644
--- a/tests/data/test1402
+++ b/tests/data/test1402
@@ -84,7 +84,7 @@
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1403 b/tests/data/test1403
index f8964f8..f86f011 100644
--- a/tests/data/test1403
+++ b/tests/data/test1403
@@ -79,7 +79,7 @@
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1404 b/tests/data/test1404
index 49f66a1..3b41c5c 100644
--- a/tests/data/test1404
+++ b/tests/data/test1404
@@ -153,7 +153,7 @@
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1405 b/tests/data/test1405
index 0a144e1..aa7cf4d 100644
--- a/tests/data/test1405
+++ b/tests/data/test1405
@@ -93,7 +93,7 @@
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1406 b/tests/data/test1406
index 4983747..969df63 100644
--- a/tests/data/test1406
+++ b/tests/data/test1406
@@ -86,7 +86,7 @@
   curl_easy_setopt(hnd, CURLOPT_INFILESIZE_LARGE, (curl_off_t)38);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1407 b/tests/data/test1407
index 5dba139..7f48de2 100644
--- a/tests/data/test1407
+++ b/tests/data/test1407
@@ -66,7 +66,7 @@
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1420 b/tests/data/test1420
index d100a61..92905fa 100644
--- a/tests/data/test1420
+++ b/tests/data/test1420
@@ -71,7 +71,7 @@
   curl_easy_setopt(hnd, CURLOPT_TCP_KEEPALIVE, 1L);
 
   /* Here is a list of options the curl code used that cannot get generated
-     as source easily. You may select to either not use them or implement
+     as source easily. You may choose to either not use them or implement
      them yourself.
 
   CURLOPT_WRITEDATA set to a objectpointer
diff --git a/tests/data/test1429 b/tests/data/test1429
index 9fc3cd2..2f9dfb9 100644
--- a/tests/data/test1429
+++ b/tests/data/test1429
@@ -9,17 +9,17 @@
 
 <reply>
 <data nocheck="yes">
-HTTP/1.1 2345 OK
-Date: Tue, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
-ETag: "21025-dc7-39462498"
-Accept-Ranges: bytes
-Content-Length: 6
-Connection: close
-Content-Type: text/html
-Funny-head: yesyes
-
+HTTP/1.1 999 OK

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Server: test-server/fake

+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

 -foo-
 </data>
 </reply>
@@ -32,10 +32,10 @@
 </server>
 
 <name>
-HTTP GET with 4-digit response code
+HTTP GET with 999 response code
  </name>
  <command>
-http://%HOSTIP:%HTTPPORT/%TESTNUMBER --write-out '%{response_code}' --http0.9
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER --write-out '%{response_code}'
 </command>
 </client>
 
@@ -43,19 +43,19 @@
 # Verify data after the test has been "shot"
 <verify>
 <stdout nonewline="yes">
-HTTP/1.1 2345 OK
-Date: Tue, 09 Nov 2010 14:49:00 GMT
-Server: test-server/fake
-Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT
-ETag: "21025-dc7-39462498"
-Accept-Ranges: bytes
-Content-Length: 6
-Connection: close
-Content-Type: text/html
-Funny-head: yesyes
-
+HTTP/1.1 999 OK

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Server: test-server/fake

+Last-Modified: Tue, 13 Jun 2000 12:10:00 GMT

+ETag: "21025-dc7-39462498"

+Accept-Ranges: bytes

+Content-Length: 6

+Connection: close

+Content-Type: text/html

+Funny-head: yesyes

+

 -foo-
-234
+999
 </stdout>
 <protocol>
 GET /%TESTNUMBER HTTP/1.1

diff --git a/tests/data/test1430 b/tests/data/test1430
index 3dbeae8..8ed513c 100644
--- a/tests/data/test1430
+++ b/tests/data/test1430
@@ -7,7 +7,7 @@
 </info>
 
 <reply>
-<data>
+<data nocheck="yes">
 HTTP/1.1 -12 OK
 Date: Tue, 09 Nov 2010 14:49:00 GMT
 Server: test-server/fake
@@ -47,5 +47,10 @@
 Accept: */*

 

 </protocol>
+# 1 - CURLE_UNSUPPORTED_PROTOCOL
+# Due to invalid HTTP response code
+<errorcode>
+1
+</errorcode>
 </verify>
 </testcase>
diff --git a/tests/data/test1431 b/tests/data/test1431
index be6277d..26cf4aa 100644
--- a/tests/data/test1431
+++ b/tests/data/test1431
@@ -7,7 +7,7 @@
 </info>
 
 <reply>
-<data>
+<data nocheck="yes">
 HTTP/1.1 2 OK
 Date: Tue, 09 Nov 2010 14:49:00 GMT
 Server: test-server/fake
@@ -47,5 +47,8 @@
 Accept: */*

 

 </protocol>
+<errorcode>
+1
+</errorcode>
 </verify>
 </testcase>
diff --git a/tests/data/test1432 b/tests/data/test1432
index ab76e94..d134688 100644
--- a/tests/data/test1432
+++ b/tests/data/test1432
@@ -48,5 +48,8 @@
 Accept: */*

 

 </protocol>
+<errorcode>
+1
+</errorcode>
 </verify>
 </testcase>
diff --git a/tests/data/test1451 b/tests/data/test1451
index cdbd398..9fdd68a 100644
--- a/tests/data/test1451
+++ b/tests/data/test1451
@@ -29,7 +29,7 @@
 -u 'curltest:curltest' smb://%HOSTIP:%SMBPORT/TESTS/%TESTNUMBER
 </command>
 <precheck>
-python -c "__import__('pkgutil').find_loader('impacket') or (__import__('sys').stdout.write('Test only works if Python package impacket is installed\n'), __import__('sys').exit(1))"
+python3 -c "__import__('pkgutil').find_loader('impacket') or (__import__('sys').stdout.write('Test only works if Python package impacket is installed\n'), __import__('sys').exit(1))"
 </precheck>
 </client>
 
diff --git a/tests/data/test1461 b/tests/data/test1461
index 301dc14..847f8d1 100644
--- a/tests/data/test1461
+++ b/tests/data/test1461
@@ -32,18 +32,18 @@
 </errorcode>
 <stdout mode="text">
 Usage: curl [options...] <url>
- -d, --data <data>   HTTP POST data
- -f, --fail          Fail silently (no output at all) on HTTP errors
- -h, --help <category>  Get help for commands
- -i, --include       Include protocol response headers in the output
- -o, --output <file>  Write to file instead of stdout
- -O, --remote-name   Write output to a file named as the remote file
- -s, --silent        Silent mode
- -T, --upload-file <file>  Transfer local FILE to destination
- -u, --user <user:password>  Server user and password
- -A, --user-agent <name>  Send User-Agent <name> to server
- -v, --verbose       Make the operation more talkative
- -V, --version       Show version number and quit
+ -d, --data <data>          HTTP POST data
+ -f, --fail                 Fail silently (no output at all) on HTTP errors
+ -h, --help <category>      Get help for commands
+ -i, --include              Include protocol response headers in the output
+ -o, --output <file>        Write to file instead of stdout
+ -O, --remote-name          Write output to a file named as the remote file
+ -s, --silent               Silent mode
+ -T, --upload-file <file>   Transfer local FILE to destination
+ -u, --user <user:password> Server user and password
+ -A, --user-agent <name>    Send User-Agent <name> to server
+ -v, --verbose              Make the operation more talkative
+ -V, --version              Show version number and quit
 
 This is not the full help, this menu is stripped into categories.
 Use "--help category" to get an overview of all categories.
diff --git a/tests/data/test1463 b/tests/data/test1463
index 9326748..3904324 100644
--- a/tests/data/test1463
+++ b/tests/data/test1463
@@ -37,9 +37,9 @@
 <stdout mode="text">
 Usage: curl [options...] <url>
 file: FILE protocol options
-     --create-file-mode <mode>  File mode (octal) for created files
- -I, --head          Show document info only
- -r, --range <range>  Retrieve only the bytes within RANGE
+     --create-file-mode <mode> File mode for created files
+ -I, --head                    Show document info only
+ -r, --range <range>           Retrieve only the bytes within RANGE
 </stdout>
 </verify>
 </testcase>
diff --git a/tests/data/test1464 b/tests/data/test1464
index 2ddacef..44a7adc 100644
--- a/tests/data/test1464
+++ b/tests/data/test1464
@@ -37,9 +37,9 @@
 <stdout mode="text">
 Usage: curl [options...] <url>
 file: FILE protocol options
-     --create-file-mode <mode>  File mode (octal) for created files
- -I, --head          Show document info only
- -r, --range <range>  Retrieve only the bytes within RANGE
+     --create-file-mode <mode> File mode for created files
+ -I, --head                    Show document info only
+ -r, --range <range>           Retrieve only the bytes within RANGE
 </stdout>
 </verify>
 </testcase>
diff --git a/tests/data/test1465 b/tests/data/test1465
index ebbd5d6..e8caaa2 100644
--- a/tests/data/test1465
+++ b/tests/data/test1465
Binary files differ
diff --git a/tests/data/test1466 b/tests/data/test1466
new file mode 100644
index 0000000..0955d66
--- /dev/null
+++ b/tests/data/test1466
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 405 405
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+HTTP GET with 3-digit response and only digits in reason
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test1538 b/tests/data/test1538
index f375412..1e5287f 100644
--- a/tests/data/test1538
+++ b/tests/data/test1538
@@ -152,6 +152,25 @@
 s4: Out of memory
 s5: Feature not enabled in this library
 s6: CURLSHcode unknown
+u0: No error
+u1: An invalid CURLU pointer was passed as argument
+u2: An invalid 'part' argument was passed as argument
+u3: A malformed input was passed to a URL API function
+u4: The port number was not a decimal number between 0 and 65535
+u5: This libcurl build doesn't support the given URL scheme
+u6: URL decode error, most likely because of rubbish in the input
+u7: A memory function failed
+u8: Credentials was passed in the URL when prohibited
+u9: An unknown part ID was passed to a URL API function
+u10: There is no scheme part in the URL
+u11: There is no user part in the URL
+u12: There is no password part in the URL
+u13: There is no options part in the URL
+u14: There is no host part in the URL
+u15: There is no port part in the URL
+u16: There is no query part in the URL
+u17: There is no fragment part in the URL
+u18: CURLUcode unknown
 </stdout>
 </verify>
 
diff --git a/tests/data/test1542 b/tests/data/test1542
new file mode 100644
index 0000000..6a9b7f0
--- /dev/null
+++ b/tests/data/test1542
@@ -0,0 +1,67 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+connection re-use
+persistent connection
+CURLOPT_MAXLIFETIME_CONN
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

+Content-Length: 0

+

+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+<tool>
+lib%TESTNUMBER
+</tool>
+ <name>
+connection reuse with CURLOPT_MAXLIFETIME_CONN
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Accept: */*

+

+</protocol>
+<file name="log/stderr%TESTNUMBER" mode="text">
+== Info: Connection #0 to host %HOSTIP left intact
+== Info: Connection #0 to host %HOSTIP left intact
+== Info: Connection #0 to host %HOSTIP left intact
+== Info: Closing connection 0
+== Info: Connection #1 to host %HOSTIP left intact
+</file>
+<stripfile>
+$_ = '' if (($_ !~ /left intact/) && ($_ !~ /Closing connection/))
+</stripfile>
+</verify>
+</testcase>
diff --git a/tests/data/test1559 b/tests/data/test1559
index 41fdf3a..6366afb 100644
--- a/tests/data/test1559
+++ b/tests/data/test1559
@@ -35,9 +35,9 @@
 <stdout>
 CURLOPT_URL 10000000 bytes URL == 43
 CURLOPT_POSTFIELDS 10000000 bytes data == 0
-CURLUPART_URL 10000000 bytes URL == 3
-CURLUPART_SCHEME 10000000 bytes scheme == 3
-CURLUPART_USER 10000000 bytes user == 3
+CURLUPART_URL 10000000 bytes URL == 3 (A malformed input was passed to a URL API function)
+CURLUPART_SCHEME 10000000 bytes scheme == 3 (A malformed input was passed to a URL API function)
+CURLUPART_USER 10000000 bytes user == 3 (A malformed input was passed to a URL API function)
 </stdout>
 </verify>
 
diff --git a/tests/data/test1560 b/tests/data/test1560
index e8767b2..f6722fd 100644
--- a/tests/data/test1560
+++ b/tests/data/test1560
@@ -2,7 +2,7 @@
 <info>
 <keywords>
 unittest
-URL API
+URLAPI
 </keywords>
 </info>
 
diff --git a/tests/data/test1561 b/tests/data/test1561
index b6f8f2b..fbfea08 100644
--- a/tests/data/test1561
+++ b/tests/data/test1561
@@ -65,6 +65,9 @@
 http
 https
 </server>
+<killserver>
+https
+</killserver>
 <name>
 Cookies set over HTTP can't override secure ones
 </name>
diff --git a/tests/data/test1660 b/tests/data/test1660
index 3ddd8d4..cbbcf75 100644
--- a/tests/data/test1660
+++ b/tests/data/test1660
@@ -20,6 +20,7 @@
 # This file was generated by libcurl! Edit at your own risk.
 .readfrom.example "20211001 04:47:41"
 .old.example "20161001 04:47:41"
+.new.example "unlimited"
 </file>
 
 # This date is exactly "20190124 22:34:21" UTC
@@ -59,7 +60,7 @@
 'forexample.net' is not HSTS
 'example.net' is not HSTS
 expire.example [expire.example]: 1548369268
-Number of entries: 3
+Number of entries: 4
 expire.example [expire.example]: 1548369268
 expire.example [expire.example]: 1548369268
 expire.example [expire.example]: 1548369268
@@ -74,6 +75,7 @@
 <file name="log/hsts%TESTNUMBER" mode="text">
 # Your HSTS cache. https://curl.se/docs/hsts.html
 # This file was generated by libcurl! Edit at your own risk.
+.new.example "unlimited"
 .example.com "20191001 04:47:41"
 example.org "20200124 22:34:21"
 </file>
diff --git a/tests/data/test1915 b/tests/data/test1915
index c47840a..544dd4f 100644
--- a/tests/data/test1915
+++ b/tests/data/test1915
@@ -36,15 +36,18 @@
 
 # Verify data after the test has been "shot"
 <verify>
-# it fails because there's nothing on that port
+# 7 CURLE_COULDNT_CONNECT (expected since there's nothing listening there)
+# 42 CURLE_ABORTED_BY_CALLBACK
 <errorcode>
-7
+42
 </errorcode>
 <stdout>
-[0/4] 1.example.com 20300320 01:02:03
-[1/4] 2.example.com 20300320 01:02:03
-[2/4] 3.example.com 20300320 01:02:03
-[3/4] 4.example.com 20300320 01:02:03
+[0/4] 1.example.com 20370320 01:02:03
+[1/4] 2.example.com 20370320 03:02:01
+[2/4] 3.example.com 20370319 01:02:03
+[3/4] 4.example.com unlimited
+First request returned 7
+Second request returned 42
 </stdout>
 </verify>
 </testcase>
diff --git a/tests/data/test1937 b/tests/data/test1937
new file mode 100644
index 0000000..e24445a
--- /dev/null
+++ b/tests/data/test1937
@@ -0,0 +1,72 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP POST
+CURLOPT_AWS_SIGV4
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 302 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Content-Length: 0
+Location: /%TESTNUMBER0002
+
+</data>
+<data2>
+HTTP/1.1 200 OK
+Date: Thu, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Content-Length: 0
+
+</data2>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+# this relies on the debug feature which allow to set the time
+<features>
+SSL
+debug
+crypto
+</features>
+
+<name>
+HTTP POST with AWS_SIGV4
+</name>
+<tool>
+lib%TESTNUMBER
+</tool>
+
+<command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER/testapi/test
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<strip>
+^User-Agent:.*
+^Content-Type:.*
+^Accept:.*
+</strip>
+<protocol nonewline="yes">
+POST /%TESTNUMBER/testapi/test HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: PROVIDER14-HMAC-SHA256 Credential=keyId/19700101/region/service/provider14_request, SignedHeaders=content-type;host;x-provider2-date, Signature=391e410177d0e9ee80728082446ef69d6b29157fe71f8b4805fce7c186fd956d

+X-Provider2-Date: 19700101T000000Z

+Content-Length: 8

+

+postData
+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test1938 b/tests/data/test1938
new file mode 100644
index 0000000..5341de0
--- /dev/null
+++ b/tests/data/test1938
Binary files differ
diff --git a/tests/data/test2002 b/tests/data/test2002
index 68144f8..2cd2801 100644
--- a/tests/data/test2002
+++ b/tests/data/test2002
@@ -85,12 +85,12 @@
 TYPE I

 SIZE %TESTNUMBER0002

 RETR %TESTNUMBER0002

-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER0003
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER0003
 QUIT

 </protocol>
 <stdout>
diff --git a/tests/data/test2003 b/tests/data/test2003
index 76d8521..a1d5a9f 100644
--- a/tests/data/test2003
+++ b/tests/data/test2003
@@ -85,18 +85,18 @@
 TYPE I

 SIZE %TESTNUMBER0002

 RETR %TESTNUMBER0002

-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER0003
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER0003
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER0003
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER0003
 EPSV

 SIZE %TESTNUMBER0002

 RETR %TESTNUMBER0002

diff --git a/tests/data/test2004 b/tests/data/test2004
index 6ef9c6c..17a7316 100644
--- a/tests/data/test2004
+++ b/tests/data/test2004
@@ -42,18 +42,18 @@
 # Verify data after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 <stdout>
 Test data file
diff --git a/tests/data/test2033 b/tests/data/test2033
new file mode 100644
index 0000000..0645932
--- /dev/null
+++ b/tests/data/test2033
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+Schannel
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+simple HTTPS GET with DER public key pinning (Schannel variant)
+ </name>
+ <setenv>
+# This test is pointless if we're not using the schannel backend
+CURL_SSL_BACKEND=schannel
+ </setenv>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey %SRCDIR/certs/Server-localhost-sv.pub.der --ssl-revoke-best-effort https://localhost:%HTTPSPORT/%TESTNUMBER
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: localhost:%HTTPSPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test2034 b/tests/data/test2034
index 3ddd420..83f984a 100644
--- a/tests/data/test2034
+++ b/tests/data/test2034
@@ -26,6 +26,7 @@
 <features>
 SSL
 SSLpinning
+!Schannel
 </features>
 <server>
 https Server-localhost-sv.pem
diff --git a/tests/data/test2037 b/tests/data/test2037
index f43215f..2b17e53 100644
--- a/tests/data/test2037
+++ b/tests/data/test2037
@@ -26,6 +26,7 @@
 <features>
 SSL
 SSLpinning
+!Schannel
 </features>
 <server>
 https Server-localhost-sv.pem
diff --git a/tests/data/test2041 b/tests/data/test2041
index e4a2391..1958bb7 100644
--- a/tests/data/test2041
+++ b/tests/data/test2041
@@ -26,6 +26,7 @@
 <features>
 SSL
 SSLpinning
+!Schannel
 </features>
 <server>
 https Server-localhost-sv.pem
diff --git a/tests/data/test207 b/tests/data/test207
index 73d363c..3719201 100644
--- a/tests/data/test207
+++ b/tests/data/test207
@@ -58,8 +58,13 @@
 
 # curl: (18) transfer closed with outstanding read data remaining
 # 18 == CURLE_PARTIAL_FILE
+# 56 == CURLE_RECV_ERROR
 <errorcode>
+%if hyper
+56
+%else
 18
+%endif
 </errorcode>
 </verify>
 </testcase>
diff --git a/tests/data/test2070 b/tests/data/test2070
index 7258638..74cdd7d 100644
--- a/tests/data/test2070
+++ b/tests/data/test2070
@@ -24,8 +24,8 @@
 # Client-side
 <client>
 <features>
+SSL
 Schannel
-!MinGW
 </features>
 <server>
 https Server-localhost-sv.pem
diff --git a/tests/data/test2079 b/tests/data/test2079
new file mode 100644
index 0000000..67ffa16
--- /dev/null
+++ b/tests/data/test2079
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+Schannel
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+simple HTTPS GET with PEM public key pinning (Schannel variant)
+ </name>
+ <setenv>
+# This test is pointless if we're not using the schannel backend
+CURL_SSL_BACKEND=schannel
+ </setenv>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey %SRCDIR/certs/Server-localhost-sv.pub.pem --ssl-revoke-best-effort https://localhost:%HTTPSPORT/%TESTNUMBER
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: localhost:%HTTPSPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test2080 b/tests/data/test2080
index 9a33703..9c8d538 100644
--- a/tests/data/test2080
+++ b/tests/data/test2080
Binary files differ
diff --git a/tests/data/test2082 b/tests/data/test2082
new file mode 100644
index 0000000..4c37772
--- /dev/null
+++ b/tests/data/test2082
@@ -0,0 +1,51 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Content-Length: 0
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+Pre-request callback for HTTP
+</name>
+<tool>
+libprereq
+</tool>
+
+<command>
+%HOSTIP:%HTTPPORT/%TESTNUMBER
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stripfile>
+s/^Local port = \d+/Local port = stripped/
+</stripfile>
+<stdout>
+Connected to %HOSTIP
+Connected from %CLIENTIP
+Remote port = %HTTPPORT
+Local port = stripped
+Returning = 0
+</stdout>
+</verify>
+</testcase>
diff --git a/tests/data/test2083 b/tests/data/test2083
new file mode 100644
index 0000000..9256151
--- /dev/null
+++ b/tests/data/test2083
@@ -0,0 +1,45 @@
+<testcase>
+<info>
+<keywords>
+FTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data>
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+ftp
+</server>
+
+<name>
+Pre-request callback for FTP
+</name>
+<tool>
+libprereq
+</tool>
+
+<command>
+ftp://%HOSTIP:%FTPPORT/test-%TESTNUMBER/
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stripfile>
+s/^Local port = \d+/Local port = stripped/
+</stripfile>
+<stdout>
+Connected to %HOSTIP
+Connected from %CLIENTIP
+Remote port = %FTPPORT
+Local port = stripped
+Returning = 0
+</stdout>
+</verify>
+</testcase>
diff --git a/tests/data/test2084 b/tests/data/test2084
new file mode 100644
index 0000000..ced7086
--- /dev/null
+++ b/tests/data/test2084
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Content-Length: 0
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+Pre-request callback for HTTP with callback terminating transfer
+</name>
+<tool>
+libprereq
+</tool>
+
+<command>
+%HOSTIP:%HTTPPORT/%TESTNUMBER#err
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+42
+</errorcode>
+<stripfile>
+s/^Local port = \d+/Local port = stripped/
+</stripfile>
+<stdout>
+Connected to %HOSTIP
+Connected from %CLIENTIP
+Remote port = %HTTPPORT
+Local port = stripped
+Returning = 1
+</stdout>
+</verify>
+</testcase>
diff --git a/tests/data/test2085 b/tests/data/test2085
new file mode 100644
index 0000000..665a756
--- /dev/null
+++ b/tests/data/test2085
@@ -0,0 +1,64 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+followlocation
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 302 OK swsclose
+Location: data2.html/%TESTNUMBER0002
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+</data>
+<data2 nocheck="yes">
+HTTP/1.1 200 OK swsclose
+Location: this should be ignored
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Connection: close
+
+body
+</data2>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+
+<name>
+Pre-request callback for HTTP with location following
+</name>
+<tool>
+libprereq
+</tool>
+
+<command>
+%HOSTIP:%HTTPPORT/%TESTNUMBER#redir
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stripfile>
+s/^Local port = \d+/Local port = stripped/
+</stripfile>
+<stdout>
+Connected to %HOSTIP
+Connected from %CLIENTIP
+Remote port = %HTTPPORT
+Local port = stripped
+Returning = 0
+Connected to %HOSTIP
+Connected from %CLIENTIP
+Remote port = %HTTPPORT
+Local port = stripped
+Returning = 0
+</stdout>
+</verify>
+</testcase>
diff --git a/tests/data/test2086 b/tests/data/test2086
new file mode 100644
index 0000000..ce60aa8
--- /dev/null
+++ b/tests/data/test2086
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+IPv6
+</keywords>
+</info>
+
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Type: text/html
+Content-Length: 0
+
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http-ipv6
+</server>
+
+<name>
+Pre-request callback for HTTP IPv6
+</name>
+<tool>
+libprereq
+</tool>
+
+<command>
+%HOST6IP:%HTTP6PORT/%TESTNUMBER#ipv6
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<stripfile>
+s/^Local port = \d+/Local port = stripped/
+</stripfile>
+<stdout>
+Connected to %HOST6IP
+Connected from %CLIENT6IP
+Remote port = %HTTP6PORT
+Local port = stripped
+Returning = 0
+</stdout>
+</verify>
+</testcase>
diff --git a/tests/data/test2087 b/tests/data/test2087
new file mode 100644
index 0000000..78751ea
--- /dev/null
+++ b/tests/data/test2087
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+SSLpinning
+Schannel
+</features>
+<server>
+https Server-localhost-sv.pem
+</server>
+ <name>
+simple HTTPS GET with base64-sha256 public key pinning (Schannel variant)
+ </name>
+ <setenv>
+# This test is pointless if we're not using the schannel backend
+CURL_SSL_BACKEND=schannel
+ </setenv>
+ <command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --pinnedpubkey sha256//+JYNkp2GTGRgrvZMUkOxbFJQQqYpwNE6toGmBjz00D8= --ssl-revoke-best-effort https://localhost:%HTTPSPORT/%TESTNUMBER
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: localhost:%HTTPSPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test262 b/tests/data/test262
index 1e03f27..43994b0 100644
--- a/tests/data/test262
+++ b/tests/data/test262
Binary files differ
diff --git a/tests/data/test271 b/tests/data/test271
index a9a4436..f6d5ad7 100644
--- a/tests/data/test271
+++ b/tests/data/test271
@@ -35,12 +35,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test283 b/tests/data/test283
index 201df9f..2c1ebd2 100644
--- a/tests/data/test283
+++ b/tests/data/test283
@@ -28,12 +28,12 @@
 69
 </errorcode>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 1024
-timeout: 6
-filename: /invalid-file
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 1024
+timeout = 6
+filename = /invalid-file
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test284 b/tests/data/test284
index bee74f4..2f4ea43 100644
--- a/tests/data/test284
+++ b/tests/data/test284
@@ -59,12 +59,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 512
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 512
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test285 b/tests/data/test285
index 23fe66e..ab055e4 100644
--- a/tests/data/test285
+++ b/tests/data/test285
@@ -36,12 +36,12 @@
  to server
 </upload>
 <protocol>
-opcode: 2
-mode: octet
-tsize: 32
-blksize: 512
-timeout: 6
-filename: /test%TESTNUMBER.txt
+opcode = 2
+mode = octet
+tsize = 32
+blksize = 512
+timeout = 6
+filename = /test%TESTNUMBER.txt
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test286 b/tests/data/test286
index 3fa774b..febd5e3 100644
--- a/tests/data/test286
+++ b/tests/data/test286
@@ -84,12 +84,12 @@
 123456789ABCDEF
 </upload>
 <protocol>
-opcode: 2
-mode: octet
-tsize: 512
-blksize: 512
-timeout: 6
-filename: /test%TESTNUMBER.txt
+opcode = 2
+mode = octet
+tsize = 512
+blksize = 512
+timeout = 6
+filename = /test%TESTNUMBER.txt
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test3000 b/tests/data/test3000
index db5299e..05f4a01 100644
--- a/tests/data/test3000
+++ b/tests/data/test3000
@@ -25,6 +25,7 @@
 <client>
 <features>
 SSL
+!Schannel
 </features>
 <server>
 https Server-localhost-firstSAN-sv.pem
diff --git a/tests/data/test3001 b/tests/data/test3001
index 534a5cd..3a95432 100644
--- a/tests/data/test3001
+++ b/tests/data/test3001
@@ -25,6 +25,7 @@
 <client>
 <features>
 SSL
+!Schannel
 </features>
 <server>
 https Server-localhost-lastSAN-sv.pem
diff --git a/tests/data/test3021 b/tests/data/test3021
new file mode 100644
index 0000000..0a02e18
--- /dev/null
+++ b/tests/data/test3021
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+SFTP
+server sha256 key check
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+sftp
+</server>
+ <name>
+SFTP correct sha256 host key
+ </name>
+ <command>
+--hostpubsha256 %SSHSRVSHA256 --key curl_client_key --pubkey curl_client_key.pub -u %USER: sftp://%HOSTIP:%SSHPORT%SSH_PWD/log/file%TESTNUMBER.txt
+</command>
+<file name="log/file%TESTNUMBER.txt">
+test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/tests/data/test3022 b/tests/data/test3022
new file mode 100644
index 0000000..f347790
--- /dev/null
+++ b/tests/data/test3022
@@ -0,0 +1,44 @@
+<testcase>
+<info>
+<keywords>
+SCP
+server sha256 key check
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+test
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+scp
+</server>
+ <name>
+SCP correct sha256 host key
+ </name>
+ <command>
+--hostpubsha256 %SSHSRVSHA256 --key curl_client_key --pubkey curl_client_key.pub -u %USER: scp://%HOSTIP:%SSHPORT%SSH_PWD/log/file%TESTNUMBER.txt
+</command>
+<file name="log/file%TESTNUMBER.txt">
+test
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+0
+</errorcode>
+<valgrind>
+disable
+</valgrind>
+</verify>
+</testcase>
diff --git a/tests/data/test3023 b/tests/data/test3023
new file mode 100644
index 0000000..fe43c19
--- /dev/null
+++ b/tests/data/test3023
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+Schannel
+</features>
+<server>
+https Server-localhost-firstSAN-sv.pem
+</server>
+<name>
+HTTPS GET to localhost, first subject alt name matches, CN does not match (Schannel variant)
+</name>
+<setenv>
+# This test is pointless if we're not using the schannel backend
+CURL_SSL_BACKEND=schannel
+</setenv>
+<command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --ssl-revoke-best-effort https://localhost:%HTTPSPORT/%TESTNUMBER
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: localhost:%HTTPSPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test3024 b/tests/data/test3024
new file mode 100644
index 0000000..55b2678
--- /dev/null
+++ b/tests/data/test3024
@@ -0,0 +1,60 @@
+<testcase>
+<info>
+<keywords>
+HTTPS
+HTTP GET
+PEM certificate
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 7
+
+MooMoo
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+Schannel
+</features>
+<server>
+https Server-localhost-lastSAN-sv.pem
+</server>
+<name>
+HTTPS GET to localhost, last subject alt name matches, CN does not match (Schannel variant)
+</name>
+<setenv>
+# This test is pointless if we're not using the schannel backend
+CURL_SSL_BACKEND=schannel
+</setenv>
+<command>
+--cacert %SRCDIR/certs/EdelCurlRoot-ca.crt --ssl-revoke-best-effort https://localhost:%HTTPSPORT/%TESTNUMBER
+</command>
+# Ensure that we're running on localhost because we're checking the host name
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: localhost:%HTTPSPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test31 b/tests/data/test31
index 2ccb032..ac27726 100644
--- a/tests/data/test31
+++ b/tests/data/test31
@@ -24,32 +24,32 @@
 Funny-head: yesyes

 %if !hyper
 Set-Cookie: foobar=name; domain=anything.com; path=/ ; secure

-Set-Cookie:ismatch=this  ; domain=127.0.0.1; path=/silly/

-Set-Cookie: overwrite=this  ; domain=127.0.0.1; path=/overwrite/

-Set-Cookie: overwrite=this2  ; domain=127.0.0.1; path=/overwrite

-Set-Cookie: sec1value=secure1  ; domain=127.0.0.1; path=/secure1/ ; secure

-Set-Cookie: sec2value=secure2  ; domain=127.0.0.1; path=/secure2/ ; secure=

-Set-Cookie: sec3value=secure3  ; domain=127.0.0.1; path=/secure3/ ; secure=

-Set-Cookie: sec4value=secure4  ; secure=; domain=127.0.0.1; path=/secure4/ ; 

-Set-Cookie: sec5value=secure5  ; secure; domain=127.0.0.1; path=/secure5/ ; 

-Set-Cookie: sec6value=secure6  ; secure ; domain=127.0.0.1; path=/secure6/ ; 

-Set-Cookie: sec7value=secure7  ; secure   ; domain=127.0.0.1; path=/secure7/ ; 

-Set-Cookie: sec8value=secure8  ; secure= ; domain=127.0.0.1; path=/secure8/ ; 

-Set-Cookie: secure=very1  ; secure=; domain=127.0.0.1; path=/secure9/; 

-Set-Cookie: httpo1=value1  ; domain=127.0.0.1; path=/p1/; httponly

-Set-Cookie: httpo2=value2  ; domain=127.0.0.1; path=/p2/; httponly=

-Set-Cookie: httpo3=value3  ; httponly; domain=127.0.0.1; path=/p3/;

-Set-Cookie: httpo4=value4  ; httponly=; domain=127.0.0.1; path=/p4/; 

-Set-Cookie: httponly=myvalue1  ; domain=127.0.0.1; path=/p4/; httponly

-Set-Cookie: httpandsec=myvalue2  ; domain=127.0.0.1; path=/p4/; httponly; secure

-Set-Cookie: httpandsec2=myvalue3; domain=127.0.0.1; path=/p4/; httponly=; secure

-Set-Cookie: httpandsec3=myvalue4  ; domain=127.0.0.1; path=/p4/; httponly; secure=

-Set-Cookie: httpandsec4=myvalue5  ; domain=127.0.0.1; path=/p4/; httponly=; secure=

-Set-Cookie: httpandsec5=myvalue6  ; domain=127.0.0.1; path=/p4/; secure; httponly=

-Set-Cookie: httpandsec6=myvalue7  ; domain=127.0.0.1; path=/p4/; secure=; httponly=

-Set-Cookie: httpandsec7=myvalue8  ; domain=127.0.0.1; path=/p4/; secure; httponly

-Set-Cookie: httpandsec8=myvalue9; domain=127.0.0.1; path=/p4/; secure=; httponly

-Set-Cookie: partmatch=present; domain=127.0.0.1 ; path=/;

+Set-Cookie:ismatch=this  ; domain=test31.curl; path=/silly/

+Set-Cookie: overwrite=this  ; domain=test31.curl; path=/overwrite/

+Set-Cookie: overwrite=this2  ; domain=test31.curl; path=/overwrite

+Set-Cookie: sec1value=secure1  ; domain=test31.curl; path=/secure1/ ; secure

+Set-Cookie: sec2value=secure2  ; domain=test31.curl; path=/secure2/ ; secure=

+Set-Cookie: sec3value=secure3  ; domain=test31.curl; path=/secure3/ ; secure=

+Set-Cookie: sec4value=secure4  ; secure=; domain=test31.curl; path=/secure4/ ; 

+Set-Cookie: sec5value=secure5  ; secure; domain=test31.curl; path=/secure5/ ; 

+Set-Cookie: sec6value=secure6  ; secure ; domain=test31.curl; path=/secure6/ ; 

+Set-Cookie: sec7value=secure7  ; secure   ; domain=test31.curl; path=/secure7/ ; 

+Set-Cookie: sec8value=secure8  ; secure= ; domain=test31.curl; path=/secure8/ ; 

+Set-Cookie: secure=very1  ; secure=; domain=test31.curl; path=/secure9/; 

+Set-Cookie: httpo1=value1  ; domain=test31.curl; path=/p1/; httponly

+Set-Cookie: httpo2=value2  ; domain=test31.curl; path=/p2/; httponly=

+Set-Cookie: httpo3=value3  ; httponly; domain=test31.curl; path=/p3/;

+Set-Cookie: httpo4=value4  ; httponly=; domain=test31.curl; path=/p4/; 

+Set-Cookie: httponly=myvalue1  ; domain=test31.curl; path=/p4/; httponly

+Set-Cookie: httpandsec=myvalue2  ; domain=test31.curl; path=/p4/; httponly; secure

+Set-Cookie: httpandsec2=myvalue3; domain=test31.curl; path=/p4/; httponly=; secure

+Set-Cookie: httpandsec3=myvalue4  ; domain=test31.curl; path=/p4/; httponly; secure=

+Set-Cookie: httpandsec4=myvalue5  ; domain=test31.curl; path=/p4/; httponly=; secure=

+Set-Cookie: httpandsec5=myvalue6  ; domain=test31.curl; path=/p4/; secure; httponly=

+Set-Cookie: httpandsec6=myvalue7  ; domain=test31.curl; path=/p4/; secure=; httponly=

+Set-Cookie: httpandsec7=myvalue8  ; domain=test31.curl; path=/p4/; secure; httponly

+Set-Cookie: httpandsec8=myvalue9; domain=test31.curl; path=/p4/; secure=; httponly

+Set-Cookie: partmatch=present; domain=test31.curl ; path=/;

 Set-Cookie:eat=this; domain=moo.foo.moo;

 Set-Cookie: eat=this-too; domain=.foo.moo;

 Set-Cookie: nodomainnovalue

@@ -58,7 +58,7 @@
 Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030

 Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2030

 Set-Cookie: magic=yessir; path=/silly/; HttpOnly

-Set-Cookie: blexp=yesyes; domain=127.0.0.1; domain=127.0.0.1; expiry=totally bad;

+Set-Cookie: blexp=yesyes; domain=test31.curl; domain=test31.curl; expiry=totally bad;

 Set-Cookie: partialip=nono; domain=.0.0.1;

 Set-Cookie: withspaces=  yes  within and around    ;

 Set-Cookie: withspaces2 =before equals;

@@ -66,32 +66,32 @@
 Set-Cookie: securewithspace=after    ; secure =

 %else
 Set-Cookie: foobar=name; domain=anything.com; path=/ ; secure

-Set-Cookie: ismatch=this  ; domain=127.0.0.1; path=/silly/

-Set-Cookie: overwrite=this  ; domain=127.0.0.1; path=/overwrite/

-Set-Cookie: overwrite=this2  ; domain=127.0.0.1; path=/overwrite

-Set-Cookie: sec1value=secure1  ; domain=127.0.0.1; path=/secure1/ ; secure

-Set-Cookie: sec2value=secure2  ; domain=127.0.0.1; path=/secure2/ ; secure=

-Set-Cookie: sec3value=secure3  ; domain=127.0.0.1; path=/secure3/ ; secure=

-Set-Cookie: sec4value=secure4  ; secure=; domain=127.0.0.1; path=/secure4/ ;

-Set-Cookie: sec5value=secure5  ; secure; domain=127.0.0.1; path=/secure5/ ;

-Set-Cookie: sec6value=secure6  ; secure ; domain=127.0.0.1; path=/secure6/ ;

-Set-Cookie: sec7value=secure7  ; secure   ; domain=127.0.0.1; path=/secure7/ ;

-Set-Cookie: sec8value=secure8  ; secure= ; domain=127.0.0.1; path=/secure8/ ;

-Set-Cookie: secure=very1  ; secure=; domain=127.0.0.1; path=/secure9/;

-Set-Cookie: httpo1=value1  ; domain=127.0.0.1; path=/p1/; httponly

-Set-Cookie: httpo2=value2  ; domain=127.0.0.1; path=/p2/; httponly=

-Set-Cookie: httpo3=value3  ; httponly; domain=127.0.0.1; path=/p3/;

-Set-Cookie: httpo4=value4  ; httponly=; domain=127.0.0.1; path=/p4/;

-Set-Cookie: httponly=myvalue1  ; domain=127.0.0.1; path=/p4/; httponly

-Set-Cookie: httpandsec=myvalue2  ; domain=127.0.0.1; path=/p4/; httponly; secure

-Set-Cookie: httpandsec2=myvalue3; domain=127.0.0.1; path=/p4/; httponly=; secure

-Set-Cookie: httpandsec3=myvalue4  ; domain=127.0.0.1; path=/p4/; httponly; secure=

-Set-Cookie: httpandsec4=myvalue5  ; domain=127.0.0.1; path=/p4/; httponly=; secure=

-Set-Cookie: httpandsec5=myvalue6  ; domain=127.0.0.1; path=/p4/; secure; httponly=

-Set-Cookie: httpandsec6=myvalue7  ; domain=127.0.0.1; path=/p4/; secure=; httponly=

-Set-Cookie: httpandsec7=myvalue8  ; domain=127.0.0.1; path=/p4/; secure; httponly

-Set-Cookie: httpandsec8=myvalue9; domain=127.0.0.1; path=/p4/; secure=; httponly

-Set-Cookie: partmatch=present; domain=127.0.0.1 ; path=/;

+Set-Cookie: ismatch=this  ; domain=test31.curl; path=/silly/

+Set-Cookie: overwrite=this  ; domain=test31.curl; path=/overwrite/

+Set-Cookie: overwrite=this2  ; domain=test31.curl; path=/overwrite

+Set-Cookie: sec1value=secure1  ; domain=test31.curl; path=/secure1/ ; secure

+Set-Cookie: sec2value=secure2  ; domain=test31.curl; path=/secure2/ ; secure=

+Set-Cookie: sec3value=secure3  ; domain=test31.curl; path=/secure3/ ; secure=

+Set-Cookie: sec4value=secure4  ; secure=; domain=test31.curl; path=/secure4/ ;

+Set-Cookie: sec5value=secure5  ; secure; domain=test31.curl; path=/secure5/ ;

+Set-Cookie: sec6value=secure6  ; secure ; domain=test31.curl; path=/secure6/ ;

+Set-Cookie: sec7value=secure7  ; secure   ; domain=test31.curl; path=/secure7/ ;

+Set-Cookie: sec8value=secure8  ; secure= ; domain=test31.curl; path=/secure8/ ;

+Set-Cookie: secure=very1  ; secure=; domain=test31.curl; path=/secure9/;

+Set-Cookie: httpo1=value1  ; domain=test31.curl; path=/p1/; httponly

+Set-Cookie: httpo2=value2  ; domain=test31.curl; path=/p2/; httponly=

+Set-Cookie: httpo3=value3  ; httponly; domain=test31.curl; path=/p3/;

+Set-Cookie: httpo4=value4  ; httponly=; domain=test31.curl; path=/p4/;

+Set-Cookie: httponly=myvalue1  ; domain=test31.curl; path=/p4/; httponly

+Set-Cookie: httpandsec=myvalue2  ; domain=test31.curl; path=/p4/; httponly; secure

+Set-Cookie: httpandsec2=myvalue3; domain=test31.curl; path=/p4/; httponly=; secure

+Set-Cookie: httpandsec3=myvalue4  ; domain=test31.curl; path=/p4/; httponly; secure=

+Set-Cookie: httpandsec4=myvalue5  ; domain=test31.curl; path=/p4/; httponly=; secure=

+Set-Cookie: httpandsec5=myvalue6  ; domain=test31.curl; path=/p4/; secure; httponly=

+Set-Cookie: httpandsec6=myvalue7  ; domain=test31.curl; path=/p4/; secure=; httponly=

+Set-Cookie: httpandsec7=myvalue8  ; domain=test31.curl; path=/p4/; secure; httponly

+Set-Cookie: httpandsec8=myvalue9; domain=test31.curl; path=/p4/; secure=; httponly

+Set-Cookie: partmatch=present; domain=test31.curl ; path=/;

 Set-Cookie: eat=this; domain=moo.foo.moo;

 Set-Cookie: eat=this-too; domain=.foo.moo;

 Set-Cookie: nodomainnovalue

@@ -100,7 +100,7 @@
 Set-Cookie: test=yes; domain=foo.com; expires=Sat Feb 2 11:56:27 GMT 2030

 Set-Cookie: test2=yes; domain=se; expires=Sat Feb 2 11:56:27 GMT 2030

 Set-Cookie: magic=yessir; path=/silly/; HttpOnly

-Set-Cookie: blexp=yesyes; domain=127.0.0.1; domain=127.0.0.1; expiry=totally bad;

+Set-Cookie: blexp=yesyes; domain=test31.curl; domain=test31.curl; expiry=totally bad;

 Set-Cookie: partialip=nono; domain=.0.0.1;

 Set-Cookie: withspaces=  yes  within and around    ;

 Set-Cookie: withspaces2 =before equals;

@@ -127,7 +127,7 @@
 TZ=GMT
 </setenv>
  <command>
-http://%HOSTIP:%HTTPPORT/we/want/%TESTNUMBER -b none -c log/jar%TESTNUMBER.txt
+http://test31.curl:%HTTPPORT/we/want/%TESTNUMBER -b none -c log/jar%TESTNUMBER.txt --resolve test31.curl:%HTTPPORT:127.0.0.1
 </command>
 <precheck>
 perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
@@ -138,7 +138,7 @@
 <verify>
 <protocol>
 GET /we/want/%TESTNUMBER HTTP/1.1

-Host: %HOSTIP:%HTTPPORT

+Host: test31.curl:%HTTPPORT

 User-Agent: curl/%VERSION

 Accept: */*

 

@@ -148,20 +148,20 @@
 # https://curl.se/docs/http-cookies.html
 # This file was generated by libcurl! Edit at your own risk.
 
-127.0.0.1	FALSE	/we/want/	FALSE	0	prespace	yes before
-127.0.0.1	FALSE	/we/want/	FALSE	0	withspaces2	before equals
-127.0.0.1	FALSE	/we/want/	FALSE	0	withspaces	yes  within and around
-127.0.0.1	FALSE	/we/want/	FALSE	0	blexp	yesyes
-#HttpOnly_127.0.0.1	FALSE	/silly/	FALSE	0	magic	yessir
-127.0.0.1	FALSE	/we/want/	FALSE	2118138987	nodomain	value
-127.0.0.1	FALSE	/	FALSE	0	partmatch	present
-#HttpOnly_127.0.0.1	FALSE	/p4/	FALSE	0	httponly	myvalue1
-#HttpOnly_127.0.0.1	FALSE	/p4/	FALSE	0	httpo4	value4
-#HttpOnly_127.0.0.1	FALSE	/p3/	FALSE	0	httpo3	value3
-#HttpOnly_127.0.0.1	FALSE	/p2/	FALSE	0	httpo2	value2
-#HttpOnly_127.0.0.1	FALSE	/p1/	FALSE	0	httpo1	value1
-127.0.0.1	FALSE	/overwrite	FALSE	0	overwrite	this2
-127.0.0.1	FALSE	/silly/	FALSE	0	ismatch	this
+test31.curl	FALSE	/we/want/	FALSE	0	prespace	yes before
+test31.curl	FALSE	/we/want/	FALSE	0	withspaces2	before equals
+test31.curl	FALSE	/we/want/	FALSE	0	withspaces	yes  within and around
+.test31.curl	TRUE	/we/want/	FALSE	0	blexp	yesyes
+#HttpOnly_test31.curl	FALSE	/silly/	FALSE	0	magic	yessir
+test31.curl	FALSE	/we/want/	FALSE	2118138987	nodomain	value
+.test31.curl	TRUE	/	FALSE	0	partmatch	present
+#HttpOnly_.test31.curl	TRUE	/p4/	FALSE	0	httponly	myvalue1
+#HttpOnly_.test31.curl	TRUE	/p4/	FALSE	0	httpo4	value4
+#HttpOnly_.test31.curl	TRUE	/p3/	FALSE	0	httpo3	value3
+#HttpOnly_.test31.curl	TRUE	/p2/	FALSE	0	httpo2	value2
+#HttpOnly_.test31.curl	TRUE	/p1/	FALSE	0	httpo1	value1
+.test31.curl	TRUE	/overwrite	FALSE	0	overwrite	this2
+.test31.curl	TRUE	/silly/	FALSE	0	ismatch	this
 </file>
 </verify>
 </testcase>
diff --git a/tests/data/test310 b/tests/data/test310
index c31085b..6b6f63a 100644
--- a/tests/data/test310
+++ b/tests/data/test310
@@ -25,6 +25,7 @@
 <client>
 <features>
 SSL
+!Schannel
 </features>
 <server>
 https Server-localhost-sv.pem
diff --git a/tests/data/test319 b/tests/data/test319
index a27c99f..d2e35ea 100644
--- a/tests/data/test319
+++ b/tests/data/test319
@@ -4,18 +4,19 @@
 HTTP
 HTTP GET
 compressed
+Transfer-Encoding
 </keywords>
 </info>
 #
 # Server-side
 <reply>
 <data base64="yes">
-SFRUUC8xLjEgMjAwIE9LDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUzIEdNVA0KU2Vy
-dmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8xLjMuMjYuMWEg
-UEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3BlcmwvMS4yOQ0K
-Q29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQ0KVHJhbnNmZXItRW5j
-b2Rpbmc6IGd6aXANCkNvbnRlbnQtTGVuZ3RoOiA0NA0KDQofiwgIeZ6rQQADbGFsYWxhAMvJzEtV
-MORSyAHRRlwKEIYxFwAKAnFgGAAAAA==
+SFRUUC8xLjEgMjAwIE9LIHN3c2Nsb3NlDQpEYXRlOiBNb24sIDI5IE5vdiAyMDA0IDIxOjU2OjUz
+IEdNVA0KU2VydmVyOiBBcGFjaGUvMS4zLjMxIChEZWJpYW4gR05VL0xpbnV4KSBtb2RfZ3ppcC8x
+LjMuMjYuMWEgUEhQLzQuMy45LTEgbW9kX3NzbC8yLjguMjAgT3BlblNTTC8wLjkuN2QgbW9kX3Bl
+cmwvMS4yOQ0KQ29udGVudC1UeXBlOiB0ZXh0L2h0bWw7IGNoYXJzZXQ9SVNPLTg4NTktMQ0KVHJh
+bnNmZXItRW5jb2Rpbmc6IGd6aXANCkNvbnRlbnQtTGVuZ3RoOiA0NA0KDQofiwgIeZ6rQQADbGFs
+YWxhAMvJzEtVMORSyAHRRlwKEIYxFwAKAnFgGAAAAA==
 </data>
 
 <datacheck base64="yes">
diff --git a/tests/data/test326 b/tests/data/test326
index 25f201e..56d4dcb 100644
--- a/tests/data/test326
+++ b/tests/data/test326
@@ -39,6 +39,9 @@
 #
 # Client-side
 <client>
+<features>
+!hyper
+</features>
 <server>
 http
 </server>
diff --git a/tests/data/test332 b/tests/data/test332
index 4f4c28b..d2bd8bb 100644
--- a/tests/data/test332
+++ b/tests/data/test332
@@ -34,12 +34,12 @@
 # Verify pseudo protocol after the test has been "shot"
 <verify>
 <protocol>
-opcode: 1
-mode: octet
-tsize: 0
-blksize: 400
-timeout: 6
-filename: /%TESTNUMBER
+opcode = 1
+mode = octet
+tsize = 0
+blksize = 400
+timeout = 6
+filename = /%TESTNUMBER
 </protocol>
 </verify>
 </testcase>
diff --git a/tests/data/test365 b/tests/data/test365
new file mode 100644
index 0000000..add760f
--- /dev/null
+++ b/tests/data/test365
@@ -0,0 +1,65 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Chunked
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 123456
+Transfer-Encoding: chunked
+Content-Type: text/html
+Funny-head: yesyes
+
+10

+chunked data fun

+0

+

+</data>
+<datacheck nonewline="yes">
+HTTP/1.1 200 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Server: test-server/fake
+Content-Length: 123456
+Transfer-Encoding: chunked
+Content-Type: text/html
+Funny-head: yesyes
+
+chunked data fun
+</datacheck>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP/1.1 with chunked AND Content-Length headers
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test366 b/tests/data/test366
new file mode 100644
index 0000000..748ef4a
--- /dev/null
+++ b/tests/data/test366
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+retry
+</keywords>
+</info>
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 503 OK
+Date: Tue, 09 Nov 2010 14:49:00 GMT
+Content-Length: 21
+Retry-After: 200
+
+server not available
+</data>
+
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP --retry-max-time with too long Retry-After
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER --retry 2 --retry-max-time 10
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+
+</verify>
+</testcase>
diff --git a/tests/data/test367 b/tests/data/test367
new file mode 100644
index 0000000..de8b901
--- /dev/null
+++ b/tests/data/test367
@@ -0,0 +1,48 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Basic
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+Empty user name provided in URL
+</name>
+<command>
+http://:example@%HOSTIP:%HTTPPORT/%TESTNUMBER
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Authorization: Basic OmV4YW1wbGU=

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test368 b/tests/data/test368
new file mode 100644
index 0000000..2f13b57
--- /dev/null
+++ b/tests/data/test368
@@ -0,0 +1,49 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+Range
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Accept-Ranges: bytes
+Content-Length: 6
+Connection: close
+
+-foo-
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+Appened dash if -r range specified without one
+ </name>
+ <command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER -r 4
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+Range: bytes=4-

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test369 b/tests/data/test369
new file mode 100644
index 0000000..e1e2b32
--- /dev/null
+++ b/tests/data/test369
@@ -0,0 +1,47 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+etag
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+HTTP/1.1 200 OK
+Content-Length: 4
+Content-Type: text/html
+
+hej
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+--etag-save with bad path then working transfer
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER --etag-save log/nowhere/etag%TESTNUMBER --next http://%HOSTIP:%HTTPPORT/%TESTNUMBER --include --output log/curl%TESTNUMBER.out
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test370 b/tests/data/test370
new file mode 100644
index 0000000..8a5af1e
--- /dev/null
+++ b/tests/data/test370
@@ -0,0 +1,36 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+etag
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+none
+</server>
+<name>
+--etag-save with bad path - no transfer
+</name>
+<command>
+http://%HOSTIP:%NOLISTENPORT/%TESTNUMBER --etag-save log/nowhere/etag%TESTNUMBER
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<errorcode>
+26
+</errorcode>
+</verify>
+</testcase>
diff --git a/tests/data/test392 b/tests/data/test392
new file mode 100644
index 0000000..24430c1
--- /dev/null
+++ b/tests/data/test392
@@ -0,0 +1,61 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+cookies
+secure
+</keywords>
+</info>
+
+<reply>
+<data>
+HTTP/1.1 200 OK

+Date: Tue, 09 Nov 2010 14:49:00 GMT

+Server: test-server/fake

+Content-Length: 4

+Content-Type: text/html

+Funny-head: yesyes

+Set-Cookie: foobar=name; path=/; secure

+

+boo
+</data>
+</reply>
+
+# Client-side
+<client>
+<server>
+http
+</server>
+ <name>
+HTTP secure cookies over localhost
+ </name>
+
+<setenv>
+TZ=GMT
+</setenv>
+ <command>
+http://localhost:%HTTPPORT/%TESTNUMBER -b none http://localhost:%HTTPPORT/%TESTNUMBER
+</command>
+<precheck>
+perl -e "print 'Test requires default test server host' if ( '%HOSTIP' ne '127.0.0.1' );"
+</precheck>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: localhost:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+GET /%TESTNUMBER HTTP/1.1

+Host: localhost:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+Cookie: foobar=name

+

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test435 b/tests/data/test435
new file mode 100644
index 0000000..eed9e29
--- /dev/null
+++ b/tests/data/test435
@@ -0,0 +1,71 @@
+<testcase>
+<info>
+<keywords>
+HTTP
+HTTP GET
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data nocheck="yes">
+HTTP/1.1 200 OK

+Content-Length: 0

+

+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+http
+</server>
+<name>
+verify -w local/remote port+ip after connecton re-use
+</name>
+<command>
+http://%HOSTIP:%HTTPPORT/%TESTNUMBER http://%HOSTIP:%HTTPPORT/%TESTNUMBER -w 'local port == %{local_port}\nlocal ip == %{local_ip}\nremote_ip == %{remote_ip}\nremote_port == %{remote_port}\n'
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+GET /%TESTNUMBER HTTP/1.1

+Host: %HOSTIP:%HTTPPORT

+User-Agent: curl/%VERSION

+Accept: */*

+

+</protocol>
+
+# replace the number with a fixed string since the port number is not
+# known to the test script but it should always be a decimal number
+<stripfile>
+s/local port == (\d+)/local port == [digits]/
+</stripfile>
+<stdout>
+HTTP/1.1 200 OK

+Content-Length: 0

+

+local port == [digits]
+local ip == 127.0.0.1
+remote_ip == %HOSTIP
+remote_port == %HTTPPORT
+HTTP/1.1 200 OK

+Content-Length: 0

+

+local port == [digits]
+local ip == 127.0.0.1
+remote_ip == %HOSTIP
+remote_port == %HTTPPORT
+</stdout>
+</verify>
+</testcase>
diff --git a/tests/data/test493 b/tests/data/test493
index 142b0c1..db053d1 100644
--- a/tests/data/test493
+++ b/tests/data/test493
@@ -33,7 +33,7 @@
 </features>
 
 <file name="log/input%TESTNUMBER">
-.hsts.example "20311001 04:47:41"
+.hsts.example "99991001 04:47:41"
 </file>
 
 <name>
diff --git a/tests/data/test552 b/tests/data/test552
index 15d531c..99202fc 100644
--- a/tests/data/test552
+++ b/tests/data/test552
@@ -38,8 +38,8 @@
 </data1000>
 
 <datacheck>
-APPLICATION: received a CURLIOCMD_RESTARTREAD request
-APPLICATION: ** REWINDING! **
+APPLICATION received a CURLIOCMD_RESTARTREAD request
+APPLICATION ** REWINDING! **
 Contents of that page you requested, sir.
 </datacheck>
 </reply>
diff --git a/tests/data/test559 b/tests/data/test559
index 878fe2b..982209c 100644
--- a/tests/data/test559
+++ b/tests/data/test559
@@ -2,6 +2,7 @@
 <info>
 <keywords>
 CURLOPT_BUFFERSIZE
+HTTP
 </keywords>
 </info>
 
diff --git a/tests/data/test897 b/tests/data/test897
new file mode 100644
index 0000000..1a537ea
--- /dev/null
+++ b/tests/data/test897
@@ -0,0 +1,70 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+Clear Text
+FETCH
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<data>
+body

+

+--

+  yours sincerely

+</data>
+<servercmd>
+POSTFETCH extra stuff sent in the envelope after the body
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<server>
+imap
+</server>
+ <name>
+IMAP and envelope meta data after body transfer
+ </name>
+ <command>
+'imap://%HOSTIP:%IMAPPORT/%TESTNUMBER/;MAILINDEX=123/;SECTION=1' -u user:secret -D log/head-%TESTNUMBER
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+<protocol>
+A001 CAPABILITY

+A002 LOGIN user secret

+A003 SELECT %TESTNUMBER

+A004 FETCH 123 BODY[1]

+A005 LOGOUT

+</protocol>
+<file name="log/head-%TESTNUMBER">
+        _   _ ____  _     

+    ___| | | |  _ \| |    

+   / __| | | | |_) | |    

+  | (__| |_| |  _ {| |___ 

+   \___|\___/|_| \_\_____|

+* OK curl IMAP server ready to serve

+A001 BAD Command

+A002 OK LOGIN completed

+* 172 EXISTS

+* 1 RECENT

+* OK [UNSEEN 12] Message 12 is first unseen

+* OK [UIDVALIDITY 3857529045] UIDs valid

+* OK [UIDNEXT 4392] Predicted next UID

+* FLAGS (\Answered \Flagged \Deleted \Seen \Draft)

+* OK [PERMANENTFLAGS (\Deleted \Seen \*)] Limited

+A003 OK [READ-WRITE] SELECT completed

+* 123 FETCH (BODY[1] {31}

+extra stuff sent in the envelope after the body)

+A004 OK FETCH completed

+</file>
+</verify>
+</testcase>
diff --git a/tests/data/test980 b/tests/data/test980
new file mode 100644
index 0000000..97567f8
--- /dev/null
+++ b/tests/data/test980
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+SMTP
+STARTTLS
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+CAPA STARTTLS
+AUTH PLAIN
+REPLY STARTTLS 454 currently unavailable\r\n235 Authenticated\r\n250 2.1.0 Sender ok\r\n250 2.1.5 Recipient ok\r\n354 Enter mail\r\n250 2.0.0 Accepted
+REPLY AUTH 535 5.7.8 Authentication credentials invalid
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+smtp
+</server>
+ <name>
+SMTP STARTTLS pipelined server response
+ </name>
+<stdin>
+mail body
+</stdin>
+ <command>
+smtp://%HOSTIP:%SMTPPORT/%TESTNUMBER --mail-rcpt recipient@example.com --mail-from sender@example.com -u user:secret --ssl --sasl-ir -T -
+</command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 8 is CURLE_WEIRD_SERVER_REPLY
+<errorcode>
+8
+</errorcode>
+<protocol>
+EHLO %TESTNUMBER

+STARTTLS

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test981 b/tests/data/test981
new file mode 100644
index 0000000..2b98ce4
--- /dev/null
+++ b/tests/data/test981
@@ -0,0 +1,59 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+STARTTLS
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+CAPA STARTTLS
+REPLY STARTTLS A002 BAD currently unavailable\r\nA003 OK Authenticated\r\nA004 OK Accepted
+REPLY LOGIN A003 BAD Authentication credentials invalid
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+imap
+</server>
+ <name>
+IMAP STARTTLS pipelined server response
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/%TESTNUMBER -T log/upload%TESTNUMBER -u user:secret --ssl
+</command>
+<file name="log/upload%TESTNUMBER">
+Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
+From: Fred Foobar <foobar@example.COM>
+Subject: afternoon meeting
+To: joe@example.com
+Message-Id: <B27397-0100000@example.COM>
+MIME-Version: 1.0
+Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
+
+Hello Joe, do you think we can meet at 3:30 tomorrow?
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 8 is CURLE_WEIRD_SERVER_REPLY
+<errorcode>
+8
+</errorcode>
+<protocol>
+A001 CAPABILITY

+A002 STARTTLS

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test982 b/tests/data/test982
new file mode 100644
index 0000000..9e07cc0
--- /dev/null
+++ b/tests/data/test982
@@ -0,0 +1,57 @@
+<testcase>
+<info>
+<keywords>
+POP3
+STARTTLS
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+CAPA STLS USER
+REPLY STLS -ERR currently unavailable\r\n+OK user accepted\r\n+OK authenticated
+REPLY PASS -ERR Authentication credentials invalid
+</servercmd>
+<data nocheck="yes">
+From: me@somewhere
+To: fake@nowhere
+
+body
+
+--
+  yours sincerely
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+pop3
+</server>
+ <name>
+POP3 STARTTLS pipelined server response
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret --ssl
+ </command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 8 is CURLE_WEIRD_SERVER_REPLY
+<errorcode>
+8
+</errorcode>
+<protocol>
+CAPA

+STLS

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test983 b/tests/data/test983
new file mode 100644
index 0000000..300ec45
--- /dev/null
+++ b/tests/data/test983
@@ -0,0 +1,52 @@
+<testcase>
+<info>
+<keywords>
+FTP
+STARTTLS
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY AUTH 500 unknown command\r\n500 unknown command\r\n331 give password\r\n230 Authenticated\r\n257 "/"\r\n200 OK\r\n200 OK\r\n200 OK\r\n226 Transfer complete
+REPLY PASS 530 Login incorrect
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftp
+</server>
+ <name>
+FTP STARTTLS pipelined server response
+ </name>
+<file name="log/test%TESTNUMBER.txt">
+data
+    to
+      see
+that FTPS
+works
+  so does it?
+</file>
+ <command>
+--ssl --ftp-ssl-control ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -T log/test%TESTNUMBER.txt -u user:secret -P %CLIENTIP
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 8 is CURLE_WEIRD_SERVER_REPLY
+<errorcode>
+8
+</errorcode>
+<protocol>
+AUTH SSL

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test984 b/tests/data/test984
new file mode 100644
index 0000000..e573f23
--- /dev/null
+++ b/tests/data/test984
@@ -0,0 +1,56 @@
+<testcase>
+<info>
+<keywords>
+IMAP
+STARTTLS
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY CAPABILITY A001 BAD Not implemented
+</servercmd>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+imap
+</server>
+ <name>
+IMAP require STARTTLS with failing capabilities
+ </name>
+ <command>
+imap://%HOSTIP:%IMAPPORT/%TESTNUMBER -T log/upload%TESTNUMBER -u user:secret --ssl-reqd
+</command>
+<file name="log/upload%TESTNUMBER">
+Date: Mon, 7 Feb 1994 21:52:25 -0800 (PST)
+From: Fred Foobar <foobar@example.COM>
+Subject: afternoon meeting
+To: joe@example.com
+Message-Id: <B27397-0100000@example.COM>
+MIME-Version: 1.0
+Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
+
+Hello Joe, do you think we can meet at 3:30 tomorrow?
+</file>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 64 is CURLE_USE_SSL_FAILED
+<errorcode>
+64
+</errorcode>
+<protocol>
+A001 CAPABILITY

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test985 b/tests/data/test985
new file mode 100644
index 0000000..d0db4aa
--- /dev/null
+++ b/tests/data/test985
@@ -0,0 +1,54 @@
+<testcase>
+<info>
+<keywords>
+POP3
+STARTTLS
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY CAPA -ERR Not implemented
+</servercmd>
+<data nocheck="yes">
+From: me@somewhere
+To: fake@nowhere
+
+body
+
+--
+  yours sincerely
+</data>
+</reply>
+
+#
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+pop3
+</server>
+ <name>
+POP3 require STARTTLS with failing capabilities
+ </name>
+ <command>
+pop3://%HOSTIP:%POP3PORT/%TESTNUMBER -u user:secret --ssl-reqd
+ </command>
+</client>
+
+#
+# Verify data after the test has been "shot"
+<verify>
+# 64 is CURLE_USE_SSL_FAILED
+<errorcode>
+64
+</errorcode>
+<protocol>
+CAPA

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/data/test986 b/tests/data/test986
new file mode 100644
index 0000000..a709437
--- /dev/null
+++ b/tests/data/test986
@@ -0,0 +1,53 @@
+<testcase>
+<info>
+<keywords>
+FTP
+STARTTLS
+</keywords>
+</info>
+
+#
+# Server-side
+<reply>
+<servercmd>
+REPLY welcome 230 Welcome
+REPLY AUTH 500 unknown command
+</servercmd>
+</reply>
+
+# Client-side
+<client>
+<features>
+SSL
+</features>
+<server>
+ftp
+</server>
+ <name>
+FTP require STARTTLS while preauthenticated
+ </name>
+<file name="log/test%TESTNUMBER.txt">
+data
+    to
+      see
+that FTPS
+works
+  so does it?
+</file>
+ <command>
+--ssl-reqd --ftp-ssl-control ftp://%HOSTIP:%FTPPORT/%TESTNUMBER -T log/test%TESTNUMBER.txt -u user:secret
+</command>
+</client>
+
+# Verify data after the test has been "shot"
+<verify>
+# 64 is CURLE_USE_SSL_FAILED
+<errorcode>
+64
+</errorcode>
+<protocol>
+AUTH SSL

+AUTH TLS

+</protocol>
+</verify>
+</testcase>
diff --git a/tests/dictserver.py b/tests/dictserver.py
index 1874328..702d255 100755
--- a/tests/dictserver.py
+++ b/tests/dictserver.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 # -*- coding: utf-8 -*-
 #***************************************************************************
 #                                  _   _ ____  _
@@ -7,7 +7,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2008 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2008 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -188,5 +188,8 @@
         log.exception(e)
         rc = ScriptRC.EXCEPTION
 
+    if options.pidfile and os.path.isfile(options.pidfile):
+        os.unlink(options.pidfile)
+
     log.info("[DICT] Returning %d", rc)
     sys.exit(rc)
diff --git a/tests/ftpserver.pl b/tests/ftpserver.pl
index a381950..b74ac5b 100755
--- a/tests/ftpserver.pl
+++ b/tests/ftpserver.pl
@@ -146,6 +146,7 @@
 my $nodataconn421; # set if ftp srvr doesn't establish data ch and replies 421
 my $nodataconn150; # set if ftp srvr doesn't establish data ch and replies 150
 my $storeresp;
+my $postfetch;
 my @capabilities;  # set if server supports capability commands
 my @auth_mechs;    # set if server supports authentication commands
 my %fulltextreply; #
@@ -1232,7 +1233,8 @@
             sendcontrol $d;
         }
 
-        sendcontrol ")\r\n";
+        # Set the custom extra header content with POSTFETCH
+        sendcontrol "$postfetch)\r\n";
         sendcontrol "$cmdid OK FETCH completed\r\n";
     }
 
@@ -2798,6 +2800,7 @@
     $nodataconn421 = 0; # default is to not send 421 without data channel
     $nodataconn150 = 0; # default is to not send 150 without data channel
     $storeresp = "";    # send as ultimate STOR response
+    $postfetch = "";    # send as header after a FETCH response
     @capabilities = (); # default is to not support capability commands
     @auth_mechs = ();   # default is to not support authentication commands
     %fulltextreply = ();#
@@ -2840,6 +2843,10 @@
             $delayreply{$1}=$2;
             logmsg "FTPD: delay reply for $1 with $2 seconds\n";
         }
+        elsif($_ =~ /POSTFETCH (.*)/) {
+            logmsg "FTPD: read POSTFETCH header data\n";
+            $postfetch = $1;
+        }
         elsif($_ =~ /SLOWDOWN/) {
             $ctrldelay=1;
             $datadelay=1;
diff --git a/tests/httpserver.pl b/tests/httpserver.pl
index fbdb675..3b86228 100755
--- a/tests/httpserver.pl
+++ b/tests/httpserver.pl
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -152,4 +152,5 @@
     print STDERR "RUN: server/sws".exe_ext('SRV')." $flags\n";
 }
 
-exec("server/sws".exe_ext('SRV')." $flags");
+$| = 1;
+exec("exec server/sws".exe_ext('SRV')." $flags");
diff --git a/tests/libtest/Makefile.inc b/tests/libtest/Makefile.inc
index c2d0a6e..8cea7c0 100644
--- a/tests/libtest/Makefile.inc
+++ b/tests/libtest/Makefile.inc
@@ -36,7 +36,7 @@
 
 # These are all libcurl test programs
 noinst_PROGRAMS = chkhostname libauthretry libntlmconnect                \
- chkdecimalpoint                                                         \
+ chkdecimalpoint libprereq                                               \
  lib500 lib501 lib502 lib503 lib504 lib505 lib506 lib507 lib508 lib509   \
  lib510 lib511 lib512 lib513 lib514 lib515 lib516 lib517 lib518 lib519   \
  lib520 lib521 lib523 lib524 lib525 lib526 lib527 lib529        lib532   \
@@ -55,13 +55,13 @@
  lib1518         lib1520 lib1521 lib1522 lib1523 \
  lib1525 lib1526 lib1527 lib1528 lib1529 lib1530 lib1531 lib1532 lib1533 \
  lib1534 lib1535 lib1536 lib1537 lib1538 lib1539 \
- lib1540         \
+ lib1540         lib1542 \
  lib1550 lib1551 lib1552 lib1553 lib1554 lib1555 lib1556 lib1557 \
  lib1558 lib1559 lib1560 lib1564 lib1565 lib1567 lib1568 lib1569 \
  lib1591 lib1592 lib1593 lib1594 lib1596 \
          lib1905 lib1906 lib1907 lib1908 lib1910 lib1911 lib1912 lib1913 \
          lib1915 lib1916 lib1917 lib1918 lib1933 lib1934 lib1935 lib1936 \
-         lib3010
+ lib1937 lib1938 lib3010
 
 chkdecimalpoint_SOURCES = chkdecimalpoint.c ../../lib/mprintf.c \
  ../../lib/curl_ctype.c  ../../lib/dynbuf.c ../../lib/strdup.c
@@ -81,6 +81,10 @@
 libauthretry_SOURCES = libauthretry.c $(SUPPORTFILES)
 libauthretry_CPPFLAGS = $(AM_CPPFLAGS)
 
+libprereq_SOURCES = libprereq.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
+libprereq_LDADD = $(TESTUTIL_LIBS)
+libprereq_CPPFLAGS = $(AM_CPPFLAGS)
+
 lib500_SOURCES = lib500.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE) $(MULTIBYTE)
 lib500_LDADD = $(TESTUTIL_LIBS)
 lib500_CPPFLAGS = $(AM_CPPFLAGS)
@@ -494,7 +498,7 @@
 nodist_lib1521_SOURCES = lib1521.c $(SUPPORTFILES)
 lib1521_CPPFLAGS = $(AM_CPPFLAGS) -I$(srcdir)
 
-lib1522_SOURCES = lib1522.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE) 
+lib1522_SOURCES = lib1522.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE)
 lib1522_LDADD = $(TESTUTIL_LIBS)
 lib1522_CPPFLAGS = $(AM_CPPFLAGS)
 
@@ -565,6 +569,10 @@
 lib1540_LDADD = $(TESTUTIL_LIBS)
 lib1540_CPPFLAGS = $(AM_CPPFLAGS)
 
+lib1542_SOURCES = lib1542.c $(SUPPORTFILES) $(TESTUTIL) $(TSTTRACE) $(WARNLESS)
+lib1542_LDADD = $(TESTUTIL_LIBS)
+lib1542_CPPFLAGS = $(AM_CPPFLAGS)
+
 lib1550_SOURCES = lib1550.c $(SUPPORTFILES)
 lib1550_CPPFLAGS = $(AM_CPPFLAGS) -DLIB1517
 
@@ -699,6 +707,14 @@
 lib1936_LDADD = $(TESTUTIL_LIBS)
 lib1936_CPPFLAGS = $(AM_CPPFLAGS)
 
+lib1937_SOURCES = lib1937.c $(SUPPORTFILES)
+lib1937_LDADD = $(TESTUTIL_LIBS)
+lib1937_CPPFLAGS = $(AM_CPPFLAGS)
+
+lib1938_SOURCES = lib1938.c $(SUPPORTFILES)
+lib1938_LDADD = $(TESTUTIL_LIBS)
+lib1938_CPPFLAGS = $(AM_CPPFLAGS)
+
 lib3010_SOURCES = lib3010.c $(SUPPORTFILES) $(TESTUTIL) $(WARNLESS)
 lib3010_LDADD = $(TESTUTIL_LIBS)
 lib3010_CPPFLAGS = $(AM_CPPFLAGS)
diff --git a/tests/libtest/lib1538.c b/tests/libtest/lib1538.c
index a439a06..a1d1ace 100644
--- a/tests/libtest/lib1538.c
+++ b/tests/libtest/lib1538.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -29,14 +29,17 @@
   CURLcode easyret;
   CURLMcode multiret;
   CURLSHcode shareret;
+  CURLUcode urlret;
   (void)URL;
 
   curl_easy_strerror((CURLcode)INT_MAX);
   curl_multi_strerror((CURLMcode)INT_MAX);
   curl_share_strerror((CURLSHcode)INT_MAX);
+  curl_url_strerror((CURLUcode)INT_MAX);
   curl_easy_strerror((CURLcode)-INT_MAX);
   curl_multi_strerror((CURLMcode)-INT_MAX);
   curl_share_strerror((CURLSHcode)-INT_MAX);
+  curl_url_strerror((CURLUcode)-INT_MAX);
   for(easyret = CURLE_OK; easyret <= CURL_LAST; easyret++) {
     printf("e%d: %s\n", (int)easyret, curl_easy_strerror(easyret));
   }
@@ -47,6 +50,9 @@
   for(shareret = CURLSHE_OK; shareret <= CURLSHE_LAST; shareret++) {
     printf("s%d: %s\n", (int)shareret, curl_share_strerror(shareret));
   }
+  for(urlret = CURLUE_OK; urlret <= CURLUE_LAST; urlret++) {
+    printf("u%d: %s\n", (int)urlret, curl_url_strerror(urlret));
+  }
 
   return (int)res;
 }
diff --git a/tests/libtest/lib1542.c b/tests/libtest/lib1542.c
new file mode 100644
index 0000000..4e17d9d
--- /dev/null
+++ b/tests/libtest/lib1542.c
@@ -0,0 +1,86 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+/*
+ * Test CURLOPT_MAXLIFETIME_CONN:
+ * Send four requests, sleeping between the second and third and setting
+ * MAXLIFETIME_CONN between the third and fourth. The first three requests
+ * should use the same connection, and the fourth request should close the
+ * first connection and open a second.
+ */
+
+#include "test.h"
+#include "testutil.h"
+#include "testtrace.h"
+#include "warnless.h"
+#include "memdebug.h"
+
+#if defined(WIN32) || defined(_WIN32)
+#define sleep(sec) Sleep ((sec)*1000)
+#endif
+
+int test(char *URL)
+{
+  CURL *easy = NULL;
+  int res = 0;
+
+  global_init(CURL_GLOBAL_ALL);
+
+  res_easy_init(easy);
+
+  easy_setopt(easy, CURLOPT_URL, URL);
+
+  libtest_debug_config.nohex = 1;
+  libtest_debug_config.tracetime = 0;
+  easy_setopt(easy, CURLOPT_DEBUGDATA, &libtest_debug_config);
+  easy_setopt(easy, CURLOPT_DEBUGFUNCTION, libtest_debug_cb);
+  easy_setopt(easy, CURLOPT_VERBOSE, 1L);
+
+  res = curl_easy_perform(easy);
+  if(res)
+    goto test_cleanup;
+
+  res = curl_easy_perform(easy);
+  if(res)
+    goto test_cleanup;
+
+  /* CURLOPT_MAXLIFETIME_CONN is inclusive - the connection needs to be 2
+   * seconds old */
+  sleep(2);
+
+  res = curl_easy_perform(easy);
+  if(res)
+    goto test_cleanup;
+
+  easy_setopt(easy, CURLOPT_MAXLIFETIME_CONN, 1L);
+
+  res = curl_easy_perform(easy);
+  if(res)
+    goto test_cleanup;
+
+test_cleanup:
+
+  curl_easy_cleanup(easy);
+  curl_global_cleanup();
+
+  return (int)res;
+}
diff --git a/tests/libtest/lib1559.c b/tests/libtest/lib1559.c
index 28328e4..f099a23 100644
--- a/tests/libtest/lib1559.c
+++ b/tests/libtest/lib1559.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -54,14 +54,14 @@
   u = curl_url();
   if(u) {
     CURLUcode uc = curl_url_set(u, CURLUPART_URL, longurl, 0);
-    printf("CURLUPART_URL %d bytes URL == %d\n",
-           EXCESSIVE, (int)uc);
+    printf("CURLUPART_URL %d bytes URL == %d (%s)\n",
+           EXCESSIVE, (int)uc, curl_url_strerror(uc));
     uc = curl_url_set(u, CURLUPART_SCHEME, longurl, CURLU_NON_SUPPORT_SCHEME);
-    printf("CURLUPART_SCHEME %d bytes scheme == %d\n",
-           EXCESSIVE, (int)uc);
+    printf("CURLUPART_SCHEME %d bytes scheme == %d (%s)\n",
+           EXCESSIVE, (int)uc, curl_url_strerror(uc));
     uc = curl_url_set(u, CURLUPART_USER, longurl, 0);
-    printf("CURLUPART_USER %d bytes user == %d\n",
-           EXCESSIVE, (int)uc);
+    printf("CURLUPART_USER %d bytes user == %d (%s)\n",
+           EXCESSIVE, (int)uc, curl_url_strerror(uc));
     curl_url_cleanup(u);
   }
 
diff --git a/tests/libtest/lib1560.c b/tests/libtest/lib1560.c
index b822004..de3e310 100644
--- a/tests/libtest/lib1560.c
+++ b/tests/libtest/lib1560.c
@@ -128,7 +128,7 @@
   CURLUcode ucode;
 };
 
-static struct testcase get_parts_list[] ={
+static const struct testcase get_parts_list[] ={
   {"https://user:password@example.net/get?this=and what", "",
    CURLU_DEFAULT_SCHEME, 0, CURLUE_MALFORMED_INPUT},
   {"https://user:password@example.net/ge t?this=and-what", "",
@@ -187,6 +187,10 @@
   {"file:///C:\\programs\\foo",
    "file | [11] | [12] | [13] | [14] | [15] | C:\\programs\\foo | [16] | [17]",
    CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
+  {"file://host.example.com/Share/path/to/file.txt",
+   "file | [11] | [12] | [13] | host.example.com | [15] | "
+   "//host.example.com/Share/path/to/file.txt | [16] | [17]",
+   CURLU_DEFAULT_SCHEME, 0, CURLUE_OK},
 #endif
   {"https://example.com/color/#green?no-red",
    "https | [11] | [12] | [13] | example.com | [15] | /color/ | [16] | "
@@ -239,14 +243,14 @@
   {"https://127.0.0.1:443",
    "https | [11] | [12] | [13] | 127.0.0.1 | [15] | / | [16] | [17]",
    0, CURLU_NO_DEFAULT_PORT, CURLUE_OK},
-  {"http://%3a:%3a@ex%0ample/%3f+?+%3f+%23#+%23%3f%g7",
-   "http | : | : | [13] | [6] | [15] | /?+ |  ? # | +#?%g7",
+  {"http://%3a:%3a@ex4mple/%3f+?+%3f+%23#+%23%3f%g7",
+   "http | : | : | [13] | ex4mple | [15] | /?+ |  ? # | +#?%g7",
    0, CURLU_URLDECODE, CURLUE_OK},
-  {"http://%3a:%3a@ex%0ample/%3f?%3f%35#%35%3f%g7",
-   "http | %3a | %3a | [13] | ex%0ample | [15] | /%3f | %3f%35 | %35%3f%g7",
+  {"http://%3a:%3a@ex4mple/%3f?%3f%35#%35%3f%g7",
+   "http | %3a | %3a | [13] | ex4mple | [15] | /%3f | %3f%35 | %35%3f%g7",
    0, 0, CURLUE_OK},
   {"http://HO0_-st%41/",
-   "http | [11] | [12] | [13] | HO0_-st%41 | [15] | / | [16] | [17]",
+   "http | [11] | [12] | [13] | HO0_-stA | [15] | / | [16] | [17]",
    0, 0, CURLUE_OK},
   {"file://hello.html",
    "",
@@ -351,7 +355,18 @@
   {NULL, NULL, 0, 0, CURLUE_OK},
 };
 
-static struct urltestcase get_url_list[] = {
+static const struct urltestcase get_url_list[] = {
+  /* percent encoded host names */
+  {"https://%this", "https://%25this/", 0, 0, CURLUE_OK},
+  {"https://h%c", "https://h%25c/", 0, 0, CURLUE_OK},
+  {"https://%%%%%%", "https://%25%25%25%25%25%25/", 0, 0, CURLUE_OK},
+  {"https://%41", "https://A/", 0, 0, CURLUE_OK},
+  {"https://%20", "", 0, 0, CURLUE_MALFORMED_INPUT},
+  {"https://%41%0d", "", 0, 0, CURLUE_MALFORMED_INPUT},
+  {"https://%25", "https://%25/", 0, 0, CURLUE_OK},
+  {"https://_%c0_", "https://_\xC0_/", 0, 0, CURLUE_OK},
+  {"https://_%c0_", "https://_%C0_/", 0, CURLU_URLENCODE, CURLUE_OK},
+
   /* IPv4 trickeries */
   {"https://16843009", "https://1.1.1.1/", 0, 0, CURLUE_OK},
   {"https://0x7f.1", "https://127.0.0.1/", 0, 0, CURLUE_OK},
@@ -361,6 +376,8 @@
   {"https://1.0xffffff", "https://1.255.255.255/", 0, 0, CURLUE_OK},
   /* IPv4 numerical overflows or syntax errors will not normalize */
   {"https://+127.0.0.1", "https://+127.0.0.1/", 0, 0, CURLUE_OK},
+  {"https://+127.0.0.1", "https://%2B127.0.0.1/", 0, CURLU_URLENCODE,
+   CURLUE_OK},
   {"https://127.-0.0.1", "https://127.-0.0.1/", 0, 0, CURLUE_OK},
   {"https://127.0. 1", "https://127.0.0.1/", 0, 0, CURLUE_MALFORMED_INPUT},
   {"https://1.0x1000000", "https://1.0x1000000/", 0, 0, CURLUE_OK},
@@ -522,7 +539,15 @@
 }
 
 /* !checksrc! disable SPACEBEFORECOMMA 1 */
-static struct setcase set_parts_list[] = {
+static const struct setcase set_parts_list[] = {
+  {"https://example.com/",
+   "host=++,", /* '++' there's no automatic URL decode when settin this
+                  part */
+   "https://++/",
+   0, /* get */
+   0, /* set */
+   CURLUE_OK, CURLUE_OK},
+
   {"https://example.com/",
    "query=Al2cO3tDkcDZ3EWE5Lh+LX8TPHs,", /* contains '+' */
    "https://example.com/?Al2cO3tDkcDZ3EWE5Lh%2bLX8TPHs",
@@ -584,10 +609,11 @@
    "scheme=https,user=   @:,host=foobar,",
    "https://%20%20%20%40%3a@foobar/",
    0, CURLU_URLENCODE, CURLUE_OK, CURLUE_OK},
+  /* Setting a host name with spaces is not OK: */
   {NULL,
    "scheme=https,host=  ,path= ,user= ,password= ,query= ,fragment= ,",
-   "https://%20:%20@%20%20/%20?+#%20",
-   0, CURLU_URLENCODE, CURLUE_OK, CURLUE_OK},
+   "[nothing]",
+   0, CURLU_URLENCODE, CURLUE_OK, CURLUE_MALFORMED_INPUT},
   {NULL,
    "scheme=https,host=foobar,path=/this /path /is /here,",
    "https://foobar/this%20/path%20/is%20/here",
@@ -715,7 +741,7 @@
         CURLUPart what = part2id(part);
 #if 0
         /* for debugging this */
-        fprintf(stderr, "%s = %s [%d]\n", part, value, (int)what);
+        fprintf(stderr, "%s = \"%s\" [%d]\n", part, value, (int)what);
 #endif
         if(what > CURLUPART_ZONEID)
           fprintf(stderr, "UNKNOWN part '%s'\n", part);
@@ -737,7 +763,7 @@
   return CURLUE_OK;
 }
 
-static struct redircase set_url_list[] = {
+static const struct redircase set_url_list[] = {
   {"http://example.org/static/favicon/wikipedia.ico",
    "//fake.example.com/licenses/by-sa/3.0/",
    "http://fake.example.com/licenses/by-sa/3.0/",
@@ -785,17 +811,17 @@
       rc = curl_url_set(urlp, CURLUPART_URL, set_url_list[i].set,
                         set_url_list[i].setflags);
       if(rc) {
-        fprintf(stderr, "%s:%d Set URL %s returned %d\n",
+        fprintf(stderr, "%s:%d Set URL %s returned %d (%s)\n",
                 __FILE__, __LINE__, set_url_list[i].set,
-                (int)rc);
+                (int)rc, curl_url_strerror(rc));
         error++;
       }
       else {
         char *url = NULL;
         rc = curl_url_get(urlp, CURLUPART_URL, &url, 0);
         if(rc) {
-          fprintf(stderr, "%s:%d Get URL returned %d\n",
-                  __FILE__, __LINE__, (int)rc);
+          fprintf(stderr, "%s:%d Get URL returned %d (%s)\n",
+                  __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
           error++;
         }
         else {
@@ -843,16 +869,18 @@
                 set_parts_list[i].set, (int)uc, set_parts_list[i].pcode);
         error++;
       }
+      if(!uc) {
+        /* only do this if it worked */
+        rc = curl_url_get(urlp, CURLUPART_URL, &url, 0);
 
-      rc = curl_url_get(urlp, CURLUPART_URL, &url, 0);
-
-      if(rc) {
-        fprintf(stderr, "%s:%d Get URL returned %d\n",
-                __FILE__, __LINE__, (int)rc);
-        error++;
-      }
-      else if(checkurl(url, set_parts_list[i].out)) {
-        error++;
+        if(rc) {
+          fprintf(stderr, "%s:%d Get URL returned %d (%s)\n",
+                  __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
+          error++;
+        }
+        else if(checkurl(url, set_parts_list[i].out)) {
+          error++;
+        }
       }
       curl_free(url);
     }
@@ -884,8 +912,9 @@
       rc = curl_url_get(urlp, CURLUPART_URL, &url, get_url_list[i].getflags);
 
       if(rc) {
-        fprintf(stderr, "%s:%d returned %d\n",
-                __FILE__, __LINE__, (int)rc);
+        fprintf(stderr, "%s:%d returned %d (%s). URL: '%s'\n",
+                __FILE__, __LINE__, (int)rc, curl_url_strerror(rc),
+                get_url_list[i].in);
         error++;
       }
       else {
@@ -935,7 +964,7 @@
   return error;
 }
 
-static struct querycase append_list[] = {
+static const struct querycase append_list[] = {
   {"HTTP://test/?s", "name=joe\x02", "http://test/?s&name=joe%02",
    0, CURLU_URLENCODE, CURLUE_OK},
   {"HTTP://test/?size=2#f", "name=joe=", "http://test/?size=2&name=joe%3d#f",
@@ -987,8 +1016,8 @@
       char *url;
       rc = curl_url_get(urlp, CURLUPART_URL, &url, 0);
       if(rc) {
-        fprintf(stderr, "%s:%d Get URL returned %d\n",
-                __FILE__, __LINE__, (int)rc);
+        fprintf(stderr, "%s:%d Get URL returned %d (%s)\n",
+                __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
         error++;
       }
       else {
@@ -1013,15 +1042,15 @@
   rc = curl_url_set(u, CURLUPART_URL,
                     "https://[fe80::20c:29ff:fe9c:409b%25eth0]/hello.html", 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_set returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_set returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
 
   rc = curl_url_get(u, CURLUPART_HOST, &url, 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_get CURLUPART_HOST returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_get CURLUPART_HOST returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
   else {
@@ -1031,15 +1060,15 @@
 
   rc = curl_url_set(u, CURLUPART_HOST, "[::1]", 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_set CURLUPART_HOST returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_set CURLUPART_HOST returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
 
   rc = curl_url_get(u, CURLUPART_URL, &url, 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
   else {
@@ -1049,15 +1078,15 @@
 
   rc = curl_url_set(u, CURLUPART_HOST, "example.com", 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_set CURLUPART_HOST returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_set CURLUPART_HOST returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
 
   rc = curl_url_get(u, CURLUPART_URL, &url, 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
   else {
@@ -1068,15 +1097,15 @@
   rc = curl_url_set(u, CURLUPART_HOST,
                     "[fe80::20c:29ff:fe9c:409b%25eth0]", 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_set CURLUPART_HOST returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_set CURLUPART_HOST returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
 
   rc = curl_url_get(u, CURLUPART_URL, &url, 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
   else {
@@ -1086,8 +1115,8 @@
 
   rc = curl_url_get(u, CURLUPART_HOST, &url, 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_get CURLUPART_HOST returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_get CURLUPART_HOST returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
   else {
@@ -1097,8 +1126,8 @@
 
   rc = curl_url_get(u, CURLUPART_ZONEID, &url, 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_get CURLUPART_ZONEID returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_get CURLUPART_ZONEID returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
   else {
@@ -1108,15 +1137,15 @@
 
   rc = curl_url_set(u, CURLUPART_ZONEID, "clown", 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_set CURLUPART_ZONEID returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_set CURLUPART_ZONEID returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
 
   rc = curl_url_get(u, CURLUPART_URL, &url, 0);
   if(rc != CURLUE_OK) {
-    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d\n",
-            __FILE__, __LINE__, (int)rc);
+    fprintf(stderr, "%s:%d curl_url_get CURLUPART_URL returned %d (%s)\n",
+            __FILE__, __LINE__, (int)rc, curl_url_strerror(rc));
     error++;
   }
   else {
diff --git a/tests/libtest/lib1565.c b/tests/libtest/lib1565.c
index 6ea7d4e..24fff72 100644
--- a/tests/libtest/lib1565.c
+++ b/tests/libtest/lib1565.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -50,7 +50,7 @@
   (void)ptr;
 
   for(i = 0; i < CONN_NUM; i++) {
-    sleep(TIME_BETWEEN_START_SECS);
+    wait_ms(TIME_BETWEEN_START_SECS * 1000);
 
     easy_init(easy);
 
@@ -96,7 +96,8 @@
   CURL *started_handles[CONN_NUM];
   int started_num = 0;
   int finished_num = 0;
-  pthread_t tid = 0;
+  pthread_t tid;
+  bool tid_valid = false;
   struct CURLMsg *message;
 
   start_test_timing();
@@ -108,7 +109,9 @@
   url = URL;
 
   res = pthread_create(&tid, NULL, run_thread, NULL);
-  if(0 != res) {
+  if(!res)
+    tid_valid = true;
+  else {
     fprintf(stderr, "%s:%d Couldn't create thread, errno %d\n",
             __FILE__, __LINE__, res);
     goto test_cleanup;
@@ -182,7 +185,7 @@
     test_failure = res;
   pthread_mutex_unlock(&lock);
 
-  if(0 != tid)
+  if(tid_valid)
     pthread_join(tid, NULL);
 
   curl_multi_cleanup(multi);
diff --git a/tests/libtest/lib1915.c b/tests/libtest/lib1915.c
index 4e632d3..b419ef2 100644
--- a/tests/libtest/lib1915.c
+++ b/tests/libtest/lib1915.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2020 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -25,12 +25,18 @@
 #include "warnless.h"
 #include "memdebug.h"
 
-static const char *preload_hosts[] = {
-  "1.example.com",
-  "2.example.com",
-  "3.example.com",
-  "4.example.com",
-  NULL /* end of list marker */
+struct entry {
+  const char *name;
+  const char *exp;
+};
+
+static const struct entry preload_hosts[] = {
+  /* curl turns 39 that day just before 31-bit time_t overflow */
+  { "1.example.com", "20370320 01:02:03" },
+  { "2.example.com", "20370320 03:02:01" },
+  { "3.example.com", "20370319 01:02:03" },
+  { "4.example.com", "" },
+  { NULL, NULL } /* end of list marker */
 };
 
 struct state {
@@ -42,14 +48,16 @@
                             void *userp)
 {
   const char *host;
+  const char *expire;
   struct state *s = (struct state *)userp;
   (void)easy;
-  host = preload_hosts[s->index++];
+  host = preload_hosts[s->index].name;
+  expire = preload_hosts[s->index++].exp;
 
   if(host && (strlen(host) < e->namelen)) {
     strcpy(e->name, host);
     e->includeSubDomains = FALSE;
-    strcpy(e->expire, "20300320 01:02:03"); /* curl turns 32 that day */
+    strcpy(e->expire, expire);
     fprintf(stderr, "add '%s'\n", host);
   }
   else
@@ -57,6 +65,16 @@
   return CURLSTS_OK;
 }
 
+/* verify error from callback */
+static CURLSTScode hstsreadfail(CURL *easy, struct curl_hstsentry *e,
+                                void *userp)
+{
+  (void)easy;
+  (void)e;
+  (void)userp;
+  return CURLSTS_FAIL;
+}
+
 /* check that we get the hosts back in the save */
 static CURLSTScode hstswrite(CURL *easy, struct curl_hstsentry *e,
                              struct curl_index *i, void *userp)
@@ -89,6 +107,19 @@
     curl_easy_setopt(hnd, CURLOPT_HSTS_CTRL, CURLHSTS_ENABLE);
     ret = curl_easy_perform(hnd);
     curl_easy_cleanup(hnd);
+    printf("First request returned %d\n", (int)ret);
+  }
+  hnd = curl_easy_init();
+  if(hnd) {
+    curl_easy_setopt(hnd, CURLOPT_URL, URL);
+    curl_easy_setopt(hnd, CURLOPT_HSTSREADFUNCTION, hstsreadfail);
+    curl_easy_setopt(hnd, CURLOPT_HSTSREADDATA, &st);
+    curl_easy_setopt(hnd, CURLOPT_HSTSWRITEFUNCTION, hstswrite);
+    curl_easy_setopt(hnd, CURLOPT_HSTSWRITEDATA, &st);
+    curl_easy_setopt(hnd, CURLOPT_HSTS_CTRL, CURLHSTS_ENABLE);
+    ret = curl_easy_perform(hnd);
+    curl_easy_cleanup(hnd);
+    printf("Second request returned %d\n", (int)ret);
   }
   curl_global_cleanup();
   return (int)ret;
diff --git a/tests/libtest/lib1937.c b/tests/libtest/lib1937.c
new file mode 100644
index 0000000..d544de0
--- /dev/null
+++ b/tests/libtest/lib1937.c
@@ -0,0 +1,64 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = TEST_ERR_MAJOR_BAD;
+  struct curl_slist *list = NULL;
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_POST, 1L);
+  test_setopt(curl, CURLOPT_AWS_SIGV4, "provider1:provider2:region:service");
+  test_setopt(curl, CURLOPT_USERPWD, "keyId:SecretKey");
+  test_setopt(curl, CURLOPT_HEADER, 0L);
+  test_setopt(curl, CURLOPT_URL, URL);
+  list = curl_slist_append(list, "Content-Type: application/json");
+  test_setopt(curl, CURLOPT_HTTPHEADER, list);
+  test_setopt(curl, CURLOPT_POSTFIELDS, "postData");
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_slist_free_all(list);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/tests/libtest/lib1938.c b/tests/libtest/lib1938.c
new file mode 100644
index 0000000..3ddd35c
--- /dev/null
+++ b/tests/libtest/lib1938.c
@@ -0,0 +1,66 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.haxx.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+
+#include "test.h"
+
+#include "memdebug.h"
+
+int test(char *URL)
+{
+  CURL *curl;
+  CURLcode res = TEST_ERR_MAJOR_BAD;
+  struct curl_slist *list = NULL;
+  unsigned char data[] = {0x70, 0x6f, 0x73, 0x74, 0, 0x44, 0x61, 0x74, 0x61};
+
+  if(curl_global_init(CURL_GLOBAL_ALL) != CURLE_OK) {
+    fprintf(stderr, "curl_global_init() failed\n");
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  curl = curl_easy_init();
+  if(!curl) {
+    fprintf(stderr, "curl_easy_init() failed\n");
+    curl_global_cleanup();
+    return TEST_ERR_MAJOR_BAD;
+  }
+
+  test_setopt(curl, CURLOPT_VERBOSE, 1L);
+  test_setopt(curl, CURLOPT_POST, 1L);
+  test_setopt(curl, CURLOPT_AWS_SIGV4, "provider1:provider2:region:service");
+  test_setopt(curl, CURLOPT_USERPWD, "keyId:SecretKey");
+  test_setopt(curl, CURLOPT_HEADER, 0L);
+  test_setopt(curl, CURLOPT_URL, URL);
+  list = curl_slist_append(list, "Content-Type: application/json");
+  test_setopt(curl, CURLOPT_HTTPHEADER, list);
+  test_setopt(curl, CURLOPT_POSTFIELDS, data);
+  test_setopt(curl, CURLOPT_POSTFIELDSIZE, (long)sizeof(data));
+
+  res = curl_easy_perform(curl);
+
+test_cleanup:
+
+  curl_slist_free_all(list);
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return res;
+}
diff --git a/tests/libtest/lib517.c b/tests/libtest/lib517.c
index 0f4b128..f0a3c83 100644
--- a/tests/libtest/lib517.c
+++ b/tests/libtest/lib517.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -28,7 +28,7 @@
   time_t output;
 };
 
-static struct dcheck dates[] = {
+static const struct dcheck dates[] = {
   {"Sun, 06 Nov 1994 08:49:37 GMT", 784111777 },
   {"Sunday, 06-Nov-94 08:49:37 GMT", 784111777 },
   {"Sun Nov  6 08:49:37 1994", 784111777 },
diff --git a/tests/libtest/lib552.c b/tests/libtest/lib552.c
index 6e70e75..7e56ae7 100644
--- a/tests/libtest/lib552.c
+++ b/tests/libtest/lib552.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -154,8 +154,8 @@
 {
   (void)clientp;
   if(cmd == CURLIOCMD_RESTARTREAD) {
-    printf("APPLICATION: received a CURLIOCMD_RESTARTREAD request\n");
-    printf("APPLICATION: ** REWINDING! **\n");
+    printf("APPLICATION received a CURLIOCMD_RESTARTREAD request\n");
+    printf("APPLICATION ** REWINDING! **\n");
     current_offset = 0;
     return CURLIOE_OK;
   }
diff --git a/tests/libtest/lib557.c b/tests/libtest/lib557.c
index b6b8bec..c17fab2 100644
--- a/tests/libtest/lib557.c
+++ b/tests/libtest/lib557.c
@@ -1556,7 +1556,6 @@
 }
 
 /* DBL_MAX value from Linux */
-/* !checksrc! disable PLUSNOSPACE 1 */
 #define MAXIMIZE -1.7976931348623157081452E+308
 
 static int test_float_formatting(void)
diff --git a/tests/libtest/lib658.c b/tests/libtest/lib658.c
index 85738d0..1d10c6d 100644
--- a/tests/libtest/lib658.c
+++ b/tests/libtest/lib658.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -48,7 +48,8 @@
 
   uc = curl_url_set(urlp, CURLUPART_URL, URL, 0);
   if(uc) {
-    fprintf(stderr, "problem setting CURLUPART_URL.");
+    fprintf(stderr, "problem setting CURLUPART_URL: %s.",
+            curl_url_strerror(uc));
     goto test_cleanup;
   }
 
diff --git a/tests/libtest/lib674.c b/tests/libtest/lib674.c
index 336cf77..1b8d287 100644
--- a/tests/libtest/lib674.c
+++ b/tests/libtest/lib674.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -49,7 +49,8 @@
 
   uc = curl_url_set(urlp, CURLUPART_URL, URL, 0);
   if(uc) {
-    fprintf(stderr, "problem setting CURLUPART_URL.");
+    fprintf(stderr, "problem setting CURLUPART_URL: %s.",
+            curl_url_strerror(uc));
     goto test_cleanup;
   }
 
diff --git a/tests/libtest/libprereq.c b/tests/libtest/libprereq.c
new file mode 100644
index 0000000..11eb18c
--- /dev/null
+++ b/tests/libtest/libprereq.c
@@ -0,0 +1,98 @@
+/***************************************************************************
+ *                                  _   _ ____  _
+ *  Project                     ___| | | |  _ \| |
+ *                             / __| | | | |_) | |
+ *                            | (__| |_| |  _ <| |___
+ *                             \___|\___/|_| \_\_____|
+ *
+ * Copyright (C) 2021, Max Dymond, <max.dymond@microsoft.com>
+ *
+ * This software is licensed as described in the file COPYING, which
+ * you should have received as part of this distribution. The terms
+ * are also available at https://curl.se/docs/copyright.html.
+ *
+ * You may opt to use, copy, modify, merge, publish, distribute and/or sell
+ * copies of the Software, and permit persons to whom the Software is
+ * furnished to do so, under the terms of the COPYING file.
+ *
+ * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
+ * KIND, either express or implied.
+ *
+ ***************************************************************************/
+#include "test.h"
+
+typedef struct prcs {
+  int prereq_retcode;
+  int ipv6;
+} PRCS;
+
+static int prereq_callback(void *clientp,
+                           char *conn_primary_ip,
+                           char *conn_local_ip,
+                           int conn_primary_port,
+                           int conn_local_port)
+{
+  PRCS *prereq_cb = (PRCS *)clientp;
+
+  if(prereq_cb->ipv6) {
+    printf("Connected to [%s]\n", conn_primary_ip);
+    printf("Connected from [%s]\n", conn_local_ip);
+  }
+  else {
+    printf("Connected to %s\n", conn_primary_ip);
+    printf("Connected from %s\n", conn_local_ip);
+  }
+
+  printf("Remote port = %d\n", conn_primary_port);
+  printf("Local port = %d\n", conn_local_port);
+  printf("Returning = %d\n", prereq_cb->prereq_retcode);
+  return prereq_cb->prereq_retcode;
+}
+
+int test(char *URL)
+{
+  PRCS prereq_cb;
+  CURLcode ret = CURLE_OK;
+  CURL *curl = NULL;
+
+  prereq_cb.prereq_retcode = CURL_PREREQFUNC_OK;
+  prereq_cb.ipv6 = 0;
+
+  curl_global_init(CURL_GLOBAL_ALL);
+  curl = curl_easy_init();
+
+  if(curl) {
+    if(strstr(URL, "#ipv6")) {
+      /* The IP addresses should be surrounded by brackets! */
+      prereq_cb.ipv6 = 1;
+    }
+    if(strstr(URL, "#err")) {
+      /* Set the callback to exit with failure */
+      prereq_cb.prereq_retcode = CURL_PREREQFUNC_ABORT;
+    }
+
+    curl_easy_setopt(curl, CURLOPT_URL, URL);
+    curl_easy_setopt(curl, CURLOPT_PREREQFUNCTION, prereq_callback);
+    curl_easy_setopt(curl, CURLOPT_PREREQDATA, &prereq_cb);
+    curl_easy_setopt(curl, CURLOPT_WRITEDATA, stderr);
+
+    if(strstr(URL, "#redir")) {
+      /* Enable follow-location */
+      curl_easy_setopt(curl, CURLOPT_FOLLOWLOCATION, 1);
+    }
+
+    ret = curl_easy_perform(curl);
+    if(ret) {
+      fprintf(stderr, "%s:%d curl_easy_perform() failed with code %d (%s)\n",
+          __FILE__, __LINE__, ret, curl_easy_strerror(ret));
+      goto test_cleanup;
+    }
+  }
+
+test_cleanup:
+  curl_easy_cleanup(curl);
+  curl_global_cleanup();
+
+  return ret;
+}
+
diff --git a/tests/libtest/mk-lib1521.pl b/tests/libtest/mk-lib1521.pl
index 0a4ff3d..0122fc3 100755
--- a/tests/libtest/mk-lib1521.pl
+++ b/tests/libtest/mk-lib1521.pl
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2017 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2017 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -136,6 +136,7 @@
 static curl_hstsread_callback hstsreadcb;
 static curl_hstswrite_callback hstswritecb;
 static curl_resolver_start_callback resolver_start_cb;
+static curl_prereq_callback prereqcb;
 
 int test(char *URL)
 {
diff --git a/tests/libtest/test.h b/tests/libtest/test.h
index ffa78d0..e3bad17 100644
--- a/tests/libtest/test.h
+++ b/tests/libtest/test.h
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -20,8 +20,6 @@
  *
  ***************************************************************************/
 
-/* !checksrc! disable ASSIGNWITHINCONDITION 14 */
-
 /* Now include the curl_setup.h file from libcurl's private libdir (the source
    version, but that might include "curl_config.h" from the build dir so we
    need both of them in the include path), so that we get good in-depth
diff --git a/tests/libtest/testutil.c b/tests/libtest/testutil.c
index 5c0dd9e..a37a1b1 100644
--- a/tests/libtest/testutil.c
+++ b/tests/libtest/testutil.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -67,7 +67,7 @@
     (void)gettimeofday(&now, NULL);
 #else
   else {
-    now.tv_sec = (long)time(NULL);
+    now.tv_sec = time(NULL);
     now.tv_usec = 0;
   }
 #endif
@@ -96,7 +96,7 @@
   ** time() returns the value of time in seconds since the Epoch.
   */
   struct timeval now;
-  now.tv_sec = (long)time(NULL);
+  now.tv_sec = time(NULL);
   now.tv_usec = 0;
   return now;
 }
diff --git a/tests/manpage-scan.pl b/tests/manpage-scan.pl
index ec2e725..219c4a4 100755
--- a/tests/manpage-scan.pl
+++ b/tests/manpage-scan.pl
@@ -31,7 +31,7 @@
 #
 # src/tool_getparam.c lists all options curl can parse
 # docs/curl.1 documents all command line options
-# src/tool_help.c outputs all options with curl -h
+# src/tool_listhelp.c outputs all options with curl -h
 # - make sure they're all in sync
 #
 # Output all deviances to stderr.
@@ -147,7 +147,7 @@
     '--no-keepalive' => 1,
     '--no-progress-meter' => 1,
 
-    # pretend these options without -no exist in curl.1 and tool_help.c
+    # pretend these options without -no exist in curl.1 and tool_listhelp.c
     '--alpn' => 6,
     '--npn' => 6,
     '--eprt' => 6,
@@ -157,7 +157,7 @@
     '--sessionid' => 6,
     '--progress-meter' => 6,
 
-    # deprecated options do not need to be in tool_help.c nor curl.1
+    # deprecated options do not need to be in tool_listhelp.c nor curl.1
     '--krb4' => 6,
     '--ftp-ssl' => 6,
     '--ftp-ssl-reqd' => 6,
@@ -236,7 +236,7 @@
 
 #########################################################################
 # parse the curl code that outputs the curl -h list
-open(R, "<$root/src/tool_help.c") ||
+open(R, "<$root/src/tool_listhelp.c") ||
     die "no input file";
 my @toolhelp; # store all parsed parameters
 while(<R>) {
@@ -286,10 +286,10 @@
             $missing.= " curl.1";
         }
         if($where & 4) {
-            $exists .= " tool_help.c";
+            $exists .= " tool_listhelp.c";
         }
         else {
-            $missing .= " tool_help.c";
+            $missing .= " tool_listhelp.c";
         }
 
         print STDERR "$o is not in$missing (but in$exists)\n";
diff --git a/tests/manpage-syntax.pl b/tests/manpage-syntax.pl
index 184df6b..67a0b74 100644
--- a/tests/manpage-syntax.pl
+++ b/tests/manpage-syntax.pl
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2019 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2019 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -28,17 +28,94 @@
 use strict;
 use warnings;
 
+# get the file name first
+my $symbolsinversions=shift @ARGV;
+
 # we may get the dir roots pointed out
 my @manpages=@ARGV;
 my $errors = 0;
 
+my %optblessed;
+my %funcblessed;
+my @optorder = (
+    'NAME',
+    'SYNOPSIS',
+    'DESCRIPTION',
+     #'DEFAULT', # CURLINFO_ has no default
+    'PROTOCOLS',
+    'EXAMPLE',
+    'AVAILABILITY',
+    'RETURN VALUE',
+    'SEE ALSO'
+    );
+my @funcorder = (
+    'NAME',
+    'SYNOPSIS',
+    'DESCRIPTION',
+    'EXAMPLE',
+    'AVAILABILITY',
+    'RETURN VALUE',
+    'SEE ALSO'
+    );
+my %shline; # section => line number
+
+my %symbol;
+sub allsymbols {
+    open(F, "<$symbolsinversions") ||
+        die "$symbolsinversions: $|";
+    while(<F>) {
+        if($_ =~ /^([^ ]*)/) {
+            $symbol{$1}=$1;
+        }
+    }
+    close(F);
+}
+
 sub scanmanpage {
     my ($file) = @_;
+    my $reqex = 0;
+    my $inex = 0;
+    my $exsize = 0;
+    my $shc = 0;
+    my $optpage = 0; # option or function
+    my @sh;
 
-    print "Check $file\n";
     open(M, "<$file") || die "no such file: $file";
+    if($file =~ /[\/\\](CURL|curl_)[^\/\\]*.3/) {
+        # This is the man page for an libcurl option. It requires an example!
+        $reqex = 1;
+        if($1 eq "CURL") {
+            $optpage = 1;
+        }
+    }
     my $line = 1;
     while(<M>) {
+        chomp;
+        if($_ =~ /^.so /) {
+            # this man page is just a referral
+            close(M);
+            return;
+        }
+        if($_ =~ /^\.SH EXAMPLE/i) {
+            $inex = 1;
+        }
+        elsif($_ =~ /^\.SH/i) {
+            $inex = 0;
+        }
+        elsif($inex)  {
+            $exsize++;
+            if($_ =~ /[^\\]\\n/) {
+                print STDERR "$file:$line '\\n' need to be '\\\\n'!\n";
+            }
+        }
+        if($_ =~ /^\.SH ([^\r\n]*)/i) {
+            my $n = $1;
+            # remove enclosing quotes
+            $n =~ s/\"(.*)\"\z/$1/;
+            push @sh, $n;
+            $shline{$n} = $line;
+        }
+
         if($_ =~ /^\'/) {
             print STDERR "$file:$line line starts with single quote!\n";
             $errors++;
@@ -50,14 +127,105 @@
                 $errors++;
             }
         }
+        if($_ =~ /[ \t]+$/) {
+            print STDERR "$file:$line trailing whitespace\n";
+            $errors++;
+        }
+        if($_ =~ /\\f([BI])([^\\]*)\\fP/) {
+            my $r = $2;
+            if($r =~ /^(CURL.*)\(3\)/) {
+                my $rr = $1;
+                if(!$symbol{$rr}) {
+                    print STDERR "$file:$line link to non-libcurl option $rr!\n";
+                    $errors++;
+                }
+            }
+        }
         $line++;
     }
     close(M);
+
+    if($reqex) {
+        # only for libcurl options man-pages
+
+        my $shcount = scalar(@sh); # before @sh gets shifted
+        if($exsize < 2) {
+            print STDERR "$file:$line missing EXAMPLE section\n";
+            $errors++;
+        }
+
+        if($shcount < 3) {
+            print STDERR "$file:$line too few man page sections!\n";
+            $errors++;
+            return;
+        }
+
+        my $got = "start";
+        my $i = 0;
+        my $shused = 1;
+        my @shorig = @sh;
+        my @order = $optpage ? @optorder : @funcorder;
+        my $blessed = $optpage ? \%optblessed : \%funcblessed;
+
+        while($got) {
+            my $finesh;
+            $got = shift(@sh);
+            if($got) {
+                if($$blessed{$got}) {
+                    $i = $$blessed{$got};
+                    $finesh = $got; # a mandatory one
+                }
+            }
+            if($i && defined($finesh)) {
+                # mandatory section
+
+                if($i != $shused) {
+                    printf STDERR "$file:%u Got %s, when %s was expected\n",
+                        $shline{$finesh},
+                        $finesh,
+                        $order[$shused-1];
+                    $errors++;
+                    return;
+                }
+                $shused++;
+                if($i == scalar(@order)) {
+                    # last mandatory one, exit
+                    last;
+                }
+            }
+        }
+
+        if($i != scalar(@order)) {
+            printf STDERR "$file:$line missing mandatory section: %s\n",
+                $order[$i];
+            printf STDERR "$file:$line section found at index %u: '%s'\n",
+                $i, $shorig[$i];
+            printf STDERR " Found %u used sections\n", $shcount;
+            $errors++;
+        }
+    }
 }
 
+allsymbols();
+
+if(!$symbol{'CURLALTSVC_H1'}) {
+    print STDERR "didn't get the symbols-in-version!\n";
+    exit;
+}
+
+my $ind = 1;
+for my $s (@optorder) {
+    $optblessed{$s} = $ind++
+}
+$ind = 1;
+for my $s (@funcorder) {
+    $funcblessed{$s} = $ind++
+}
 
 for my $m (@manpages) {
     scanmanpage($m);
 }
 
+print STDERR "ok\n" if(!$errors);
+
 exit $errors;
diff --git a/tests/negtelnetserver.py b/tests/negtelnetserver.py
index 207a641..4f80e3d 100755
--- a/tests/negtelnetserver.py
+++ b/tests/negtelnetserver.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 #  Project                     ___| | | |  _ \| |
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2017 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2017 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -364,5 +364,8 @@
         log.exception(e)
         rc = ScriptRC.EXCEPTION
 
+    if options.pidfile and os.path.isfile(options.pidfile):
+        os.unlink(options.pidfile)
+
     log.info("Returning %d", rc)
     sys.exit(rc)
diff --git a/tests/rtspserver.pl b/tests/rtspserver.pl
index bb4bef4..da75ccc 100755
--- a/tests/rtspserver.pl
+++ b/tests/rtspserver.pl
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -119,4 +119,5 @@
     "--logfile \"$logfile\" ";
 $flags .= "--ipv$ipvnum --port $port --srcdir \"$srcdir\"";
 
-exec("server/rtspd".exe_ext('SRV')." $flags");
+$| = 1;
+exec("exec server/rtspd".exe_ext('SRV')." $flags");
diff --git a/tests/runtests.1 b/tests/runtests.1
index 475254e..8f59733 100644
--- a/tests/runtests.1
+++ b/tests/runtests.1
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH runtests.pl 1 "June 08, 2021" "Curl 7.78.0" "runtests"
+.TH runtests.pl 1 "June 02, 2021" "Curl 7.80.0" "runtests"
 
 .SH NAME
 runtests.pl \- run one or more test cases
@@ -148,6 +148,8 @@
 the allocation with that number to be set to fail at once instead of looping
 through everyone, which is very handy when debugging and then often in
 combination with \fI-g\fP.
+.IP "-u"
+Error instead of warning on server unexpectedly alive.
 .IP "-v"
 Enable verbose output. Speaks more than default.
 .IP "-vc <curl>"
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 9afc97d..8b3ba67 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -168,6 +168,7 @@
 my %custom_skip_reasons;
 
 my $SSHSRVMD5 = "[uninitialized]"; # MD5 of ssh server public key
+my $SSHSRVSHA256 = "[uninitialized]"; # SHA256 of ssh server public key
 my $VERSION="";          # curl's reported version number
 
 my $srcdir = $ENV{'srcdir'} || '.';
@@ -340,6 +341,7 @@
 my $clearlocks;   # force removal of files by killing locking processes
 my $listonly;     # only list the tests
 my $postmortem;   # display detailed info about failed tests
+my $err_unexpected; # error instead of warning on server unexpectedly alive
 my $run_event_based; # run curl with --test-event to test the event API
 my $run_disabeled; # run the specific tests even if listed in DISABLED
 
@@ -496,6 +498,9 @@
     if(0 == $child) {
         # Here we are the child. Run the given command.
 
+        # Flush output.
+        $| = 1;
+
         # Put an "exec" in front of the command so that the child process
         # keeps this child's process ID.
         exec("exec $cmd") || die "Can't exec() $cmd: $!";
@@ -840,15 +845,25 @@
     #
     # cleanup server pid files
     #
+    my $result = 0;
     foreach my $server (@killservers) {
         my $pidfile = $serverpidfile{$server};
         my $pid = processexists($pidfile);
         if($pid > 0) {
-            logmsg "Warning: $server server unexpectedly alive\n";
+            if($err_unexpected) {
+                logmsg "ERROR: ";
+                $result = -1;
+            }
+            else {
+                logmsg "Warning: ";
+            }
+            logmsg "$server server unexpectedly alive\n";
             killpid($verbose, $pid);
         }
         unlink($pidfile) if(-f $pidfile);
     }
+
+    return $result;
 }
 
 #######################################################################
@@ -1691,7 +1706,6 @@
     }
 
     my $pid2;
-    my $pid3;
     my $httpspid;
     my $port = 24512; # start attempt
     for (1 .. 10) {
@@ -1862,7 +1876,6 @@
         $doesntrun{$pidfile} = 1;
         return (0,0);
     }
-
     $pid2 = $pid3;
 
     logmsg "RUN: $srvrname server is PID $ftppid port $port\n" if($verbose);
@@ -1957,10 +1970,9 @@
     $flags .= "--stunnel \"$stunnel\" --srcdir \"$srcdir\" ";
     $flags .= "--connect $FTPPORT";
 
-    my $port = 26713;
-    my $pid2;
-    my $pid3;
     my $ftpspid;
+    my $pid2;
+    my $port = 26713;
     for (1 .. 10) {
         $port += int(rand(700));
         my $options = "$flags --accept $port";
@@ -2276,6 +2288,17 @@
         die $msg;
     }
 
+    my $hstpubsha256f = "curl_host_rsa_key.pub_sha256";
+    if(!open(PUBSHA256FILE, "<", $hstpubsha256f) ||
+       (read(PUBSHA256FILE, $SSHSRVSHA256, 48) == 0) ||
+       !close(PUBSHA256FILE))
+    {
+        my $msg = "Fatal: $srvrname pubkey sha256 missing : \"$hstpubsha256f\" : $!";
+        logmsg "$msg\n";
+        stopservers($verbose);
+        die $msg;
+    }
+
     logmsg "RUN: $srvrname on PID $pid2 port $wport\n" if($verbose);
 
     return ($pid2, $sshpid, $wport);
@@ -3363,6 +3386,7 @@
     $$thing =~ s/${prefix}USER/$USER/g;
 
     $$thing =~ s/${prefix}SSHSRVMD5/$SSHSRVMD5/g;
+    $$thing =~ s/${prefix}SSHSRVSHA256/$SSHSRVSHA256/g;
 
     # The purpose of FTPTIME2 and FTPTIME3 is to provide times that can be
     # used for time-out tests and that would work on most hosts as these
@@ -4111,6 +4135,9 @@
         close(GDBCMD);
     }
 
+    # Flush output.
+    $| = 1;
+
     # timestamp starting of test command
     $timetoolini{$testnum} = Time::HiRes::time();
 
@@ -4199,7 +4226,9 @@
     if(@killtestservers) {
         foreach my $server (@killtestservers) {
             chomp $server;
-            stopserver($server);
+            if(stopserver($server)) {
+                return 1; # normal error if asked to fail on unexpected alive
+            }
         }
     }
 
@@ -4707,15 +4736,25 @@
     #
     # cleanup all server pid files
     #
+    my $result = 0;
     foreach my $server (keys %serverpidfile) {
         my $pidfile = $serverpidfile{$server};
         my $pid = processexists($pidfile);
         if($pid > 0) {
-            logmsg "Warning: $server server unexpectedly alive\n";
+            if($err_unexpected) {
+                logmsg "ERROR: ";
+                $result = -1;
+            }
+            else {
+                logmsg "Warning: ";
+            }
+            logmsg "$server server unexpectedly alive\n";
             killpid($verbose, $pid);
         }
         unlink($pidfile) if(-f $pidfile);
     }
+
+    return $result;
 }
 
 #######################################################################
@@ -4742,7 +4781,9 @@
            ($what eq "smtp")) {
             if($torture && $run{$what} &&
                !responsive_pingpong_server($what, "", $verbose)) {
-                stopserver($what);
+                if(stopserver($what)) {
+                    return "failed stopping unresponsive ".uc($what)." server";
+                }
             }
             if(!$run{$what}) {
                 ($pid, $pid2) = runpingpongserver($what, "", $verbose);
@@ -4756,7 +4797,9 @@
         elsif($what eq "ftp-ipv6") {
             if($torture && $run{'ftp-ipv6'} &&
                !responsive_pingpong_server("ftp", "", $verbose, "ipv6")) {
-                stopserver('ftp-ipv6');
+                if(stopserver('ftp-ipv6')) {
+                    return "failed stopping unresponsive FTP-IPv6 server";
+                }
             }
             if(!$run{'ftp-ipv6'}) {
                 ($pid, $pid2) = runpingpongserver("ftp", "", $verbose, "ipv6");
@@ -4771,7 +4814,9 @@
         elsif($what eq "gopher") {
             if($torture && $run{'gopher'} &&
                !responsive_http_server("gopher", $verbose, 0, $GOPHERPORT)) {
-                stopserver('gopher');
+                if(stopserver('gopher')) {
+                    return "failed stopping unresponsive GOPHER server";
+                }
             }
             if(!$run{'gopher'}) {
                 ($pid, $pid2, $GOPHERPORT) =
@@ -4788,7 +4833,9 @@
             if($torture && $run{'gopher-ipv6'} &&
                !responsive_http_server("gopher", $verbose, "ipv6",
                                        $GOPHER6PORT)) {
-                stopserver('gopher-ipv6');
+                if(stopserver('gopher-ipv6')) {
+                    return "failed stopping unresponsive GOPHER-IPv6 server";
+                }
             }
             if(!$run{'gopher-ipv6'}) {
                 ($pid, $pid2, $GOPHER6PORT) =
@@ -4815,7 +4862,9 @@
         elsif($what eq "http") {
             if($torture && $run{'http'} &&
                !responsive_http_server("http", $verbose, 0, $HTTPPORT)) {
-                stopserver('http');
+                if(stopserver('http')) {
+                    return "failed stopping unresponsive HTTP server";
+                }
             }
             if(!$run{'http'}) {
                 ($pid, $pid2, $HTTPPORT) =
@@ -4832,7 +4881,9 @@
             if($torture && $run{'http-proxy'} &&
                !responsive_http_server("http", $verbose, "proxy",
                                        $HTTPPROXYPORT)) {
-                stopserver('http-proxy');
+                if(stopserver('http-proxy')) {
+                    return "failed stopping unresponsive HTTP-proxy server";
+                }
             }
             if(!$run{'http-proxy'}) {
                 ($pid, $pid2, $HTTPPROXYPORT) =
@@ -4848,7 +4899,9 @@
         elsif($what eq "http-ipv6") {
             if($torture && $run{'http-ipv6'} &&
                !responsive_http_server("http", $verbose, "ipv6", $HTTP6PORT)) {
-                stopserver('http-ipv6');
+                if(stopserver('http-ipv6')) {
+                    return "failed stopping unresponsive HTTP-IPv6 server";
+                }
             }
             if(!$run{'http-ipv6'}) {
                 ($pid, $pid2, $HTTP6PORT) =
@@ -4864,7 +4917,9 @@
         elsif($what eq "rtsp") {
             if($torture && $run{'rtsp'} &&
                !responsive_rtsp_server($verbose)) {
-                stopserver('rtsp');
+                if(stopserver('rtsp')) {
+                    return "failed stopping unresponsive RTSP server";
+                }
             }
             if(!$run{'rtsp'}) {
                 ($pid, $pid2, $RTSPPORT) = runrtspserver($verbose);
@@ -4878,7 +4933,9 @@
         elsif($what eq "rtsp-ipv6") {
             if($torture && $run{'rtsp-ipv6'} &&
                !responsive_rtsp_server($verbose, "ipv6")) {
-                stopserver('rtsp-ipv6');
+                if(stopserver('rtsp-ipv6')) {
+                    return "failed stopping unresponsive RTSP-IPv6 server";
+                }
             }
             if(!$run{'rtsp-ipv6'}) {
                 ($pid, $pid2, $RTSP6PORT) = runrtspserver($verbose, "ipv6");
@@ -4897,11 +4954,15 @@
             }
             if($runcert{'ftps'} && ($runcert{'ftps'} ne $certfile)) {
                 # stop server when running and using a different cert
-                stopserver('ftps');
+                if(stopserver('ftps')) {
+                    return "failed stopping FTPS server with different cert";
+                }
             }
             if($torture && $run{'ftp'} &&
                !responsive_pingpong_server("ftp", "", $verbose)) {
-                stopserver('ftp');
+                if(stopserver('ftp')) {
+                    return "failed stopping unresponsive FTP server";
+                }
             }
             if(!$run{'ftp'}) {
                 ($pid, $pid2) = runpingpongserver("ftp", "", $verbose);
@@ -4932,11 +4993,15 @@
             }
             if($runcert{'https'} && ($runcert{'https'} ne $certfile)) {
                 # stop server when running and using a different cert
-                stopserver('https');
+                if(stopserver('https')) {
+                    return "failed stopping HTTPS server with different cert";
+                }
             }
             if($torture && $run{'http'} &&
                !responsive_http_server("http", $verbose, 0, $HTTPPORT)) {
-                stopserver('http');
+                if(stopserver('http')) {
+                    return "failed stopping unresponsive HTTP server";
+                }
             }
             if(!$run{'http'}) {
                 ($pid, $pid2, $HTTPPORT) =
@@ -4965,11 +5030,15 @@
             }
             if($runcert{'gophers'} && ($runcert{'gophers'} ne $certfile)) {
                 # stop server when running and using a different cert
-                stopserver('gophers');
+                if(stopserver('gophers')) {
+                    return "failed stopping GOPHERS server with different crt";
+                }
             }
             if($torture && $run{'gopher'} &&
                !responsive_http_server("gopher", $verbose, 0, $GOPHERPORT)) {
-                stopserver('gopher');
+                if(stopserver('gopher')) {
+                    return "failed stopping unresponsive GOPHER server";
+                }
             }
             if(!$run{'gopher'}) {
                 ($pid, $pid2, $GOPHERPORT) =
@@ -5001,7 +5070,9 @@
             if($runcert{'https-proxy'} &&
                ($runcert{'https-proxy'} ne $certfile)) {
                 # stop server when running and using a different cert
-                stopserver('https-proxy');
+                if(stopserver('https-proxy')) {
+                    return "failed stopping HTTPS-proxy with different cert";
+                }
             }
 
             # we front the http-proxy with stunnel so we need to make sure the
@@ -5029,7 +5100,9 @@
             }
             if($torture && $run{'httptls'} &&
                !responsive_httptls_server($verbose, "IPv4")) {
-                stopserver('httptls');
+                if(stopserver('httptls')) {
+                    return "failed stopping unresponsive HTTPTLS server";
+                }
             }
             if(!$run{'httptls'}) {
                 ($pid, $pid2, $HTTPTLSPORT) =
@@ -5049,7 +5122,9 @@
             }
             if($torture && $run{'httptls-ipv6'} &&
                !responsive_httptls_server($verbose, "ipv6")) {
-                stopserver('httptls-ipv6');
+                if(stopserver('httptls-ipv6')) {
+                    return "failed stopping unresponsive HTTPTLS-IPv6 server";
+                }
             }
             if(!$run{'httptls-ipv6'}) {
                 ($pid, $pid2, $HTTPTLS6PORT) =
@@ -5065,7 +5140,9 @@
         elsif($what eq "tftp") {
             if($torture && $run{'tftp'} &&
                !responsive_tftp_server("", $verbose)) {
-                stopserver('tftp');
+                if(stopserver('tftp')) {
+                    return "failed stopping unresponsive TFTP server";
+                }
             }
             if(!$run{'tftp'}) {
                 ($pid, $pid2, $TFTPPORT) =
@@ -5080,7 +5157,9 @@
         elsif($what eq "tftp-ipv6") {
             if($torture && $run{'tftp-ipv6'} &&
                !responsive_tftp_server("", $verbose, "ipv6")) {
-                stopserver('tftp-ipv6');
+                if(stopserver('tftp-ipv6')) {
+                    return "failed stopping unresponsive TFTP-IPv6 server";
+                }
             }
             if(!$run{'tftp-ipv6'}) {
                 ($pid, $pid2, $TFTP6PORT) =
@@ -5125,7 +5204,9 @@
         elsif($what eq "http-unix") {
             if($torture && $run{'http-unix'} &&
                !responsive_http_server("http", $verbose, "unix", $HTTPUNIXPATH)) {
-                stopserver('http-unix');
+                if(stopserver('http-unix')) {
+                    return "failed stopping unresponsive HTTP-unix server";
+                }
             }
             if(!$run{'http-unix'}) {
                 my $unused;
@@ -5158,7 +5239,7 @@
                 }
                 logmsg sprintf ("* pid SMB => %d %d\n", $pid, $pid2)
                     if($verbose);
-                $run{'dict'}="$pid $pid2";
+                $run{'smb'}="$pid $pid2";
             }
         }
         elsif($what eq "telnet") {
@@ -5170,7 +5251,7 @@
                 }
                 logmsg sprintf ("* pid neg TELNET => %d %d\n", $pid, $pid2)
                     if($verbose);
-                $run{'dict'}="$pid $pid2";
+                $run{'telnet'}="$pid $pid2";
             }
         }
         elsif($what eq "none") {
@@ -5548,6 +5629,10 @@
         # force removal of files by killing locking processes
         $clearlocks=1;
     }
+    elsif($ARGV[0] eq "-u") {
+        # error instead of warning on server unexpectedly alive
+        $err_unexpected=1;
+    }
     elsif(($ARGV[0] eq "-h") || ($ARGV[0] eq "--help")) {
         # show help text
         print <<EOHELP
@@ -5577,6 +5662,7 @@
   --seed=[num] set the random seed to a fixed number
   --shallow=[num] randomly makes the torture tests "thinner"
   -t[N]    torture (simulate function failures); N means fail Nth function
+  -u       error instead of warning on server unexpectedly alive
   -v       verbose output
   -vc path use this curl only to verify the existing servers
   [num]    like "5 6 9" or " 5 to 22 " to run those tests only
@@ -5943,6 +6029,7 @@
 #
 
 my $failed;
+my $failedign;
 my $testnum;
 my $ok=0;
 my $ign=0;
@@ -5978,8 +6065,8 @@
 
     if($error>0) {
         if($error==2) {
-            # ignored test failures are wrapped in ()
-            $failed.= "($testnum) ";
+            # ignored test failures
+            $failedign .= "$testnum ";
         }
         else {
             $failed.= "$testnum ";
@@ -6015,7 +6102,7 @@
 }
 
 # Tests done, stop the servers
-stopservers($verbose);
+my $unexpected = stopservers($verbose);
 
 my $all = $total + $skipped;
 
@@ -6065,6 +6152,9 @@
 }
 
 if($total) {
+    if($failedign) {
+        logmsg "IGNORED: failed tests: $failedign\n";
+    }
     logmsg sprintf("TESTDONE: $ok tests out of $total reported OK: %d%%\n",
                    $ok/$total*100);
 
@@ -6083,6 +6173,6 @@
     }
 }
 
-if(($total && (($ok+$ign) != $total)) || !$total) {
+if(($total && (($ok+$ign) != $total)) || !$total || $unexpected) {
     exit 1;
 }
diff --git a/tests/secureserver.pl b/tests/secureserver.pl
index be1de05..90a9a97 100755
--- a/tests/secureserver.pl
+++ b/tests/secureserver.pl
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -341,6 +341,9 @@
         close(OUT);
     }
 
+    # Flush output.
+    $| = 1;
+
     # Put an "exec" in front of the command so that the child process
     # keeps this child's process ID by being tied to the spawned shell.
     exec("exec $cmd") || die "Can't exec() $cmd: $!";
diff --git a/tests/server/mqttd.c b/tests/server/mqttd.c
index a1b0624..600497b 100644
--- a/tests/server/mqttd.c
+++ b/tests/server/mqttd.c
@@ -997,6 +997,7 @@
            " --version\n"
            " --logfile [file]\n"
            " --pidfile [file]\n"
+           " --portfile [file]\n"
            " --ipv4\n"
            " --ipv6\n"
            " --port [port]\n");
@@ -1048,7 +1049,7 @@
     goto mqttd_cleanup;
   }
 
-  wroteportfile = write_portfile(portname, (int)port);
+  wroteportfile = write_portfile(portname, port);
   if(!wroteportfile) {
     goto mqttd_cleanup;
   }
@@ -1067,6 +1068,8 @@
 
   if(wrotepidfile)
     unlink(pidname);
+  if(wroteportfile)
+    unlink(portname);
 
   restore_signal_handlers(FALSE);
 
diff --git a/tests/server/rtspd.c b/tests/server/rtspd.c
index 97aad7a..88f96a0 100644
--- a/tests/server/rtspd.c
+++ b/tests/server/rtspd.c
@@ -810,8 +810,8 @@
     case DOCNUMBER_WERULEZ:
       /* we got a "friends?" question, reply back that we sure are */
       logmsg("Identifying ourselves as friends");
-      msnprintf(msgbuf, sizeof(msgbuf), "RTSP_SERVER WE ROOLZ: %ld\r\n",
-                (long)getpid());
+      msnprintf(msgbuf, sizeof(msgbuf), "RTSP_SERVER WE ROOLZ: %"
+                CURL_FORMAT_CURL_OFF_T "\r\n", our_getpid());
       msglen = strlen(msgbuf);
       msnprintf(weare, sizeof(weare),
                 "HTTP/1.1 200 OK\r\nContent-Length: %zu\r\n\r\n%s",
@@ -1045,15 +1045,15 @@
   curl_socket_t sock = CURL_SOCKET_BAD;
   curl_socket_t msgsock = CURL_SOCKET_BAD;
   int wrotepidfile = 0;
+  int wroteportfile = 0;
   int flag;
   unsigned short port = DEFAULT_PORT;
   const char *pidname = ".rtsp.pid";
-  const char *portfile = NULL;
+  const char *portname = NULL; /* none by default */
   struct httprequest req;
   int rc;
   int error;
   int arg = 1;
-  long pid;
 
   memset(&req, 0, sizeof(req));
 
@@ -1078,7 +1078,7 @@
     else if(!strcmp("--portfile", argv[arg])) {
       arg++;
       if(argc>arg)
-        portfile = argv[arg++];
+        portname = argv[arg++];
     }
     else if(!strcmp("--logfile", argv[arg])) {
       arg++;
@@ -1136,8 +1136,6 @@
 
   install_signal_handlers(false);
 
-  pid = (long)getpid();
-
 #ifdef ENABLE_IPV6
   if(!use_ipv6)
 #endif
@@ -1251,9 +1249,9 @@
   if(!wrotepidfile)
     goto server_cleanup;
 
-  if(portfile) {
-    wrotepidfile = write_portfile(portfile, port);
-    if(!wrotepidfile)
+  if(portname) {
+    wroteportfile = write_portfile(portname, port);
+    if(!wroteportfile)
       goto server_cleanup;
   }
 
@@ -1367,6 +1365,8 @@
 
   if(wrotepidfile)
     unlink(pidname);
+  if(wroteportfile)
+    unlink(portname);
 
   if(serverlogslocked) {
     serverlogslocked = 0;
@@ -1377,7 +1377,7 @@
 
   if(got_exit_signal) {
     logmsg("========> %s rtspd (port: %d pid: %ld) exits with signal (%d)",
-           ipv_inuse, (int)port, pid, exit_signal);
+           ipv_inuse, (int)port, (long)getpid(), exit_signal);
     /*
      * To properly set the return status of the process we
      * must raise the same signal SIGINT or SIGTERM that we
diff --git a/tests/server/sockfilt.c b/tests/server/sockfilt.c
index d109d69..ccd9c47 100644
--- a/tests/server/sockfilt.c
+++ b/tests/server/sockfilt.c
@@ -1320,8 +1320,9 @@
   curl_socket_t sock = CURL_SOCKET_BAD;
   curl_socket_t msgsock = CURL_SOCKET_BAD;
   int wrotepidfile = 0;
+  int wroteportfile = 0;
   const char *pidname = ".sockfilt.pid";
-  const char *portfile = NULL; /* none by default */
+  const char *portname = NULL; /* none by default */
   bool juggle_again;
   int rc;
   int error;
@@ -1352,7 +1353,7 @@
     else if(!strcmp("--portfile", argv[arg])) {
       arg++;
       if(argc > arg)
-        portfile = argv[arg++];
+        portname = argv[arg++];
     }
     else if(!strcmp("--logfile", argv[arg])) {
       arg++;
@@ -1418,6 +1419,7 @@
            " --verbose\n"
            " --logfile [file]\n"
            " --pidfile [file]\n"
+           " --portfile [file]\n"
            " --ipv4\n"
            " --ipv6\n"
            " --bindonly\n"
@@ -1518,9 +1520,9 @@
     write_stdout("FAIL\n", 5);
     goto sockfilt_cleanup;
   }
-  if(portfile) {
-    wrotepidfile = write_portfile(portfile, port);
-    if(!wrotepidfile) {
+  if(portname) {
+    wroteportfile = write_portfile(portname, port);
+    if(!wroteportfile) {
       write_stdout("FAIL\n", 5);
       goto sockfilt_cleanup;
     }
@@ -1540,6 +1542,8 @@
 
   if(wrotepidfile)
     unlink(pidname);
+  if(wroteportfile)
+    unlink(portname);
 
   restore_signal_handlers(false);
 
diff --git a/tests/server/socksd.c b/tests/server/socksd.c
index 7b1abfa..b09f579 100644
--- a/tests/server/socksd.c
+++ b/tests/server/socksd.c
@@ -882,8 +882,9 @@
   curl_socket_t sock = CURL_SOCKET_BAD;
   curl_socket_t msgsock = CURL_SOCKET_BAD;
   int wrotepidfile = 0;
+  int wroteportfile = 0;
   const char *pidname = ".socksd.pid";
-  const char *portfile = NULL;
+  const char *portname = NULL; /* none by default */
   bool juggle_again;
   int error;
   int arg = 1;
@@ -907,7 +908,7 @@
     else if(!strcmp("--portfile", argv[arg])) {
       arg++;
       if(argc>arg)
-        portfile = argv[arg++];
+        portname = argv[arg++];
     }
     else if(!strcmp("--config", argv[arg])) {
       arg++;
@@ -1014,9 +1015,9 @@
     goto socks5_cleanup;
   }
 
-  if(portfile) {
-    wrotepidfile = write_portfile(portfile, port);
-    if(!wrotepidfile) {
+  if(portname) {
+    wroteportfile = write_portfile(portname, port);
+    if(!wroteportfile) {
       goto socks5_cleanup;
     }
   }
@@ -1035,6 +1036,8 @@
 
   if(wrotepidfile)
     unlink(pidname);
+  if(wroteportfile)
+    unlink(portname);
 
   restore_signal_handlers(false);
 
diff --git a/tests/server/sws.c b/tests/server/sws.c
index 010e5ae..6ce0d3b 100644
--- a/tests/server/sws.c
+++ b/tests/server/sws.c
@@ -994,7 +994,8 @@
     case DOCNUMBER_WERULEZ:
       /* we got a "friends?" question, reply back that we sure are */
       logmsg("Identifying ourselves as friends");
-      msnprintf(msgbuf, sizeof(msgbuf), "WE ROOLZ: %ld\r\n", (long)getpid());
+      msnprintf(msgbuf, sizeof(msgbuf), "WE ROOLZ: %"
+                CURL_FORMAT_CURL_OFF_T "\r\n", our_getpid());
       msglen = strlen(msgbuf);
       if(use_gopher)
         msnprintf(weare, sizeof(weare), "%s", msgbuf);
@@ -1868,6 +1869,7 @@
   srvr_sockaddr_union_t me;
   curl_socket_t sock = CURL_SOCKET_BAD;
   int wrotepidfile = 0;
+  int wroteportfile = 0;
   int flag;
   unsigned short port = DEFAULT_PORT;
 #ifdef USE_UNIX_SOCKETS
@@ -1876,11 +1878,10 @@
 #endif
   const char *pidname = ".http.pid";
   const char *portname = ".http.port";
-  struct httprequest *req;
+  struct httprequest *req = NULL;
   int rc = 0;
   int error;
   int arg = 1;
-  long pid;
   const char *connecthost = "127.0.0.1";
   const char *socket_type = "IPv4";
   char port_str[11];
@@ -1889,10 +1890,6 @@
   /* a default CONNECT port is basically pointless but still ... */
   size_t socket_idx;
 
-  req = calloc(1, sizeof(*req));
-  if(!req)
-    return 0;
-
   while(argc>arg) {
     if(!strcmp("--version", argv[arg])) {
       puts("sws IPv4"
@@ -2019,7 +2016,9 @@
 
   install_signal_handlers(false);
 
-  pid = (long)getpid();
+  req = calloc(1, sizeof(*req));
+  if(!req)
+    goto sws_cleanup;
 
   sock = socket(socket_domain, SOCK_STREAM, 0);
 
@@ -2202,8 +2201,8 @@
   if(!wrotepidfile)
     goto sws_cleanup;
 
-  wrotepidfile = write_portfile(portname, port);
-  if(!wrotepidfile)
+  wroteportfile = write_portfile(portname, port);
+  if(!wroteportfile)
     goto sws_cleanup;
 
   /* initialization of httprequest struct is done before get_request(), but
@@ -2350,11 +2349,15 @@
   }
 #endif
 
+  free(req);
+
   if(got_exit_signal)
     logmsg("signalled to die");
 
   if(wrotepidfile)
     unlink(pidname);
+  if(wroteportfile)
+    unlink(portname);
 
   if(serverlogslocked) {
     serverlogslocked = 0;
@@ -2365,7 +2368,7 @@
 
   if(got_exit_signal) {
     logmsg("========> %s sws (%s pid: %ld) exits with signal (%d)",
-           socket_type, location_str, pid, exit_signal);
+           socket_type, location_str, (long)getpid(), exit_signal);
     /*
      * To properly set the return status of the process we
      * must raise the same signal SIGINT or SIGTERM that we
diff --git a/tests/server/tftpd.c b/tests/server/tftpd.c
index 92d5849..4c15854 100644
--- a/tests/server/tftpd.c
+++ b/tests/server/tftpd.c
@@ -15,7 +15,7 @@
  */
 
 /*
- * Copyright (C) 2005 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2005 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  * Copyright (c) 1983, Regents of the University of California.
  * All rights reserved.
  *
@@ -179,7 +179,7 @@
   { -1,           0 }
 };
 
-static struct formats formata[] = {
+static const struct formats formata[] = {
   { "netascii",   1 },
   { "octet",      0 },
   { NULL,         0 }
@@ -212,9 +212,10 @@
 
 const  char *serverlogfile = DEFAULT_LOGFILE;
 static const char *pidname = ".tftpd.pid";
-static const char *portfile = NULL;
+static const char *portname = NULL; /* none by default */
 static int serverlogslocked = 0;
 static int wrotepidfile = 0;
+static int wroteportfile = 0;
 
 #ifdef HAVE_SIGSETJMP
 static sigjmp_buf timeoutbuf;
@@ -244,9 +245,9 @@
 
 static int validate_access(struct testcase *test, const char *fname, int mode);
 
-static void sendtftp(struct testcase *test, struct formats *pf);
+static void sendtftp(struct testcase *test, const struct formats *pf);
 
-static void recvtftp(struct testcase *test, struct formats *pf);
+static void recvtftp(struct testcase *test, const struct formats *pf);
 
 static void nak(int error);
 
@@ -289,6 +290,10 @@
       wrotepidfile = 0;
       unlink(pidname);
     }
+    if(wroteportfile) {
+      wroteportfile = 0;
+      unlink(portname);
+    }
     if(serverlogslocked) {
       serverlogslocked = 0;
       clear_advisor_read_lock(SERVERLOGS_LOCK);
@@ -555,7 +560,6 @@
   int flag;
   int rc;
   int error;
-  long pid;
   struct testcase test;
   int result = 0;
 
@@ -580,7 +584,7 @@
     else if(!strcmp("--portfile", argv[arg])) {
       arg++;
       if(argc>arg)
-        portfile = argv[arg++];
+        portname = argv[arg++];
     }
     else if(!strcmp("--logfile", argv[arg])) {
       arg++;
@@ -622,6 +626,7 @@
            " --version\n"
            " --logfile [file]\n"
            " --pidfile [file]\n"
+           " --portfile [file]\n"
            " --ipv4\n"
            " --ipv6\n"
            " --port [port]\n"
@@ -637,8 +642,6 @@
 
   install_signal_handlers(true);
 
-  pid = (long)getpid();
-
 #ifdef ENABLE_IPV6
   if(!use_ipv6)
 #endif
@@ -742,9 +745,9 @@
     goto tftpd_cleanup;
   }
 
-  if(portfile) {
-    wrotepidfile = write_portfile(portfile, port);
-    if(!wrotepidfile) {
+  if(portname) {
+    wroteportfile = write_portfile(portname, port);
+    if(!wroteportfile) {
       result = 1;
       goto tftpd_cleanup;
     }
@@ -849,8 +852,8 @@
 
   if(wrotepidfile)
     unlink(pidname);
-  if(portfile)
-    unlink(portfile);
+  if(wroteportfile)
+    unlink(portname);
 
   if(serverlogslocked) {
     serverlogslocked = 0;
@@ -861,7 +864,7 @@
 
   if(got_exit_signal) {
     logmsg("========> %s tftpd (port: %d pid: %ld) exits with signal (%d)",
-           ipv_inuse, (int)port, pid, exit_signal);
+           ipv_inuse, (int)port, (long)getpid(), exit_signal);
     /*
      * To properly set the return status of the process we
      * must raise the same signal SIGINT or SIGTERM that we
@@ -881,7 +884,7 @@
 {
   char *cp;
   int first = 1, ecode;
-  struct formats *pf;
+  const struct formats *pf;
   char *filename, *mode = NULL;
 #ifdef USE_WINSOCK
   DWORD recvtimeout, recvtimeoutbak;
@@ -899,7 +902,7 @@
   }
 
   /* store input protocol */
-  fprintf(server, "opcode: %x\n", tp->th_opcode);
+  fprintf(server, "opcode = %x\n", tp->th_opcode);
 
   cp = (char *)&tp->th_stuff;
   filename = cp;
@@ -927,7 +930,7 @@
       }
       if(toggle)
         /* name/value pair: */
-        fprintf(server, "%s: %s\n", option, cp);
+        fprintf(server, "%s = %s\n", option, cp);
       else {
         /* store the name pointer */
         option = cp;
@@ -946,7 +949,7 @@
   }
 
   /* store input protocol */
-  fprintf(server, "filename: %s\n", filename);
+  fprintf(server, "filename = %s\n", filename);
 
   for(cp = mode; cp && *cp; cp++)
     if(ISUPPER(*cp))
@@ -1065,8 +1068,8 @@
 
   if(!strncmp("verifiedserver", filename, 14)) {
     char weare[128];
-    size_t count = msnprintf(weare, sizeof(weare),
-                             "WE ROOLZ: %ld\r\n", (long)getpid());
+    size_t count = msnprintf(weare, sizeof(weare), "WE ROOLZ: %"
+                             CURL_FORMAT_CURL_OFF_T "\r\n", our_getpid());
 
     logmsg("Are-we-friendly question received");
     test->buffer = strdup(weare);
@@ -1148,7 +1151,7 @@
 /*
  * Send the requested file.
  */
-static void sendtftp(struct testcase *test, struct formats *pf)
+static void sendtftp(struct testcase *test, const struct formats *pf)
 {
   int size;
   ssize_t n;
@@ -1229,7 +1232,7 @@
 /*
  * Receive a file.
  */
-static void recvtftp(struct testcase *test, struct formats *pf)
+static void recvtftp(struct testcase *test, const struct formats *pf)
 {
   ssize_t n, size;
   /* These are volatile to live through a siglongjmp */
diff --git a/tests/server/util.c b/tests/server/util.c
index 38d6395..81e705c 100644
--- a/tests/server/util.c
+++ b/tests/server/util.c
@@ -269,17 +269,11 @@
   return r;
 }
 
-int write_pidfile(const char *filename)
+curl_off_t our_getpid(void)
 {
-  FILE *pidfile;
   curl_off_t pid;
 
   pid = (curl_off_t)getpid();
-  pidfile = fopen(filename, "wb");
-  if(!pidfile) {
-    logmsg("Couldn't write pid file: %s %s", filename, strerror(errno));
-    return 0; /* fail */
-  }
 #if defined(WIN32) || defined(_WIN32)
   /* store pid + 65536 to avoid conflict with Cygwin/msys PIDs, see also:
    * - https://cygwin.com/git/?p=newlib-cygwin.git;a=commit; ↵
@@ -289,6 +283,20 @@
    */
   pid += 65536;
 #endif
+  return pid;
+}
+
+int write_pidfile(const char *filename)
+{
+  FILE *pidfile;
+  curl_off_t pid;
+
+  pid = our_getpid();
+  pidfile = fopen(filename, "wb");
+  if(!pidfile) {
+    logmsg("Couldn't write pid file: %s %s", filename, strerror(errno));
+    return 0; /* fail */
+  }
   fprintf(pidfile, "%" CURL_FORMAT_CURL_OFF_T "\n", pid);
   fclose(pidfile);
   logmsg("Wrote pid %" CURL_FORMAT_CURL_OFF_T " to %s", pid, filename);
@@ -488,7 +496,7 @@
     (void)gettimeofday(&now, NULL);
 #else
   else {
-    now.tv_sec = (long)time(NULL);
+    now.tv_sec = time(NULL);
     now.tv_usec = 0;
   }
 #endif
@@ -517,7 +525,7 @@
   ** time() returns the value of time in seconds since the Epoch.
   */
   struct timeval now;
-  now.tv_sec = (long)time(NULL);
+  now.tv_sec = time(NULL);
   now.tv_usec = 0;
   return now;
 }
diff --git a/tests/server/util.h b/tests/server/util.h
index 68473f2..140e349 100644
--- a/tests/server/util.h
+++ b/tests/server/util.h
@@ -7,7 +7,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -60,6 +60,7 @@
 FILE *test2fopen(long testno);
 
 int wait_ms(int timeout_ms);
+curl_off_t our_getpid(void);
 int write_pidfile(const char *filename);
 int write_portfile(const char *filename, int port);
 void set_advisor_read_lock(const char *filename);
diff --git a/tests/smbserver.py b/tests/smbserver.py
index a49023b..3c4b96e 100755
--- a/tests/smbserver.py
+++ b/tests/smbserver.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 #  Project                     ___| | | |  _ \| |
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2017 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2017 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -21,8 +21,8 @@
 #
 """Server for testing SMB"""
 
-from __future__ import absolute_import, division, print_function
-# NOTE: the impacket configuration is not unicode_literals compatible!
+from __future__ import (absolute_import, division, print_function,
+                        unicode_literals)
 
 import argparse
 import logging
@@ -201,7 +201,8 @@
 
             # Get this file's information
             resp_info, error_code = imp_smbserver.queryPathInformation(
-                "", full_path, level=imp_smb.SMB_QUERY_FILE_ALL_INFO)
+                os.path.dirname(full_path), os.path.basename(full_path),
+                level=imp_smb.SMB_QUERY_FILE_ALL_INFO)
 
             if error_code != STATUS_SUCCESS:
                 raise SmbException(error_code, "Failed to query path info")
@@ -391,5 +392,8 @@
         log.exception(e)
         rc = ScriptRC.EXCEPTION
 
+    if options.pidfile and os.path.isfile(options.pidfile):
+        os.unlink(options.pidfile)
+
     log.info("[SMB] Returning %d", rc)
     sys.exit(rc)
diff --git a/tests/sshhelp.pm b/tests/sshhelp.pm
index 0f71b30..dd88142 100644
--- a/tests/sshhelp.pm
+++ b/tests/sshhelp.pm
@@ -5,7 +5,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -51,6 +51,7 @@
     $hstprvkeyf
     $hstpubkeyf
     $hstpubmd5f
+    $hstpubsha256f
     $cliprvkeyf
     $clipubkeyf
     @sftppath
@@ -84,6 +85,7 @@
     $hstprvkeyf
     $hstpubkeyf
     $hstpubmd5f
+    $hstpubsha256f
     $cliprvkeyf
     $clipubkeyf
     display_sshdconfig
@@ -125,6 +127,7 @@
 $hstprvkeyf      = 'curl_host_rsa_key';      # host private key file
 $hstpubkeyf      = 'curl_host_rsa_key.pub';  # host public key file
 $hstpubmd5f      = 'curl_host_rsa_key.pub_md5';  # md5 hash of host public key
+$hstpubsha256f   = 'curl_host_rsa_key.pub_sha256';  # sha256 hash of host public key
 $cliprvkeyf      = 'curl_client_key';        # client private key file
 $clipubkeyf      = 'curl_client_key.pub';    # client public key file
 
diff --git a/tests/sshserver.pl b/tests/sshserver.pl
index 9441939..526ed09 100644
--- a/tests/sshserver.pl
+++ b/tests/sshserver.pl
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -30,6 +30,8 @@
 use Cwd 'abs_path';
 use Digest::MD5;
 use Digest::MD5 'md5_hex';
+use Digest::SHA;
+use Digest::SHA 'sha256_base64';
 use MIME::Base64;
 
 #***************************************************************************
@@ -52,6 +54,7 @@
     $hstprvkeyf
     $hstpubkeyf
     $hstpubmd5f
+    $hstpubsha256f
     $cliprvkeyf
     $clipubkeyf
     display_sshdconfig
@@ -362,10 +365,12 @@
 if((! -e $hstprvkeyf) || (! -s $hstprvkeyf) ||
    (! -e $hstpubkeyf) || (! -s $hstpubkeyf) ||
    (! -e $hstpubmd5f) || (! -s $hstpubmd5f) ||
+   (! -e $hstpubsha256f) || (! -s $hstpubsha256f) ||
    (! -e $cliprvkeyf) || (! -s $cliprvkeyf) ||
    (! -e $clipubkeyf) || (! -s $clipubkeyf)) {
     # Make sure all files are gone so ssh-keygen doesn't complain
-    unlink($hstprvkeyf, $hstpubkeyf, $hstpubmd5f, $cliprvkeyf, $clipubkeyf);
+    unlink($hstprvkeyf, $hstpubkeyf, $hstpubmd5f, $hstpubsha256f,
+           $cliprvkeyf, $clipubkeyf);
     logmsg 'generating host keys...' if($verbose);
     if(system "\"$sshkeygen\" -q -t rsa -f $hstprvkeyf -C 'curl test server' -N ''") {
         logmsg 'Could not generate host key';
@@ -379,7 +384,7 @@
     # Make sure that permissions are restricted so openssh doesn't complain
     system "chmod 600 $hstprvkeyf";
     system "chmod 600 $cliprvkeyf";
-    # Save md5 hash of public host key
+    # Save md5 and sha256 hashes of public host key
     open(RSAKEYFILE, "<$hstpubkeyf");
     my @rsahostkey = do { local $/ = ' '; <RSAKEYFILE> };
     close(RSAKEYFILE);
@@ -394,6 +399,13 @@
         logmsg 'Failed writing md5 hash of RSA host key';
         exit 1;
     }
+    open(PUBSHA256FILE, ">$hstpubsha256f");
+    print PUBSHA256FILE sha256_base64(decode_base64($rsahostkey[1]));
+    close(PUBSHA256FILE);
+    if((! -e $hstpubsha256f) || (! -s $hstpubsha256f)) {
+        logmsg 'Failed writing sha256 hash of RSA host key';
+        exit 1;
+    }
 }
 
 
@@ -428,9 +440,7 @@
 #  ssh daemon configuration file options we might use and version support
 #
 #  AFSTokenPassing                  : OpenSSH 1.2.1 and later [1]
-#  AcceptEnv                        : OpenSSH 3.9.0 and later
 #  AddressFamily                    : OpenSSH 4.0.0 and later
-#  AllowGroups                      : OpenSSH 1.2.1 and later
 #  AllowTcpForwarding               : OpenSSH 2.3.0 and later
 #  AllowUsers                       : OpenSSH 1.2.1 and later
 #  AuthorizedKeysFile               : OpenSSH 2.9.9 and later
@@ -441,7 +451,6 @@
 #  ClientAliveCountMax              : OpenSSH 2.9.0 and later
 #  ClientAliveInterval              : OpenSSH 2.9.0 and later
 #  Compression                      : OpenSSH 3.3.0 and later
-#  DenyGroups                       : OpenSSH 1.2.1 and later
 #  DenyUsers                        : OpenSSH 1.2.1 and later
 #  ForceCommand                     : OpenSSH 4.4.0 and later [3]
 #  GatewayPorts                     : OpenSSH 2.1.0 and later
@@ -534,9 +543,6 @@
     push @cfgarr, "AllowUsers $username";
 }
 
-push @cfgarr, 'DenyGroups';
-push @cfgarr, 'AllowGroups';
-push @cfgarr, '#';
 push @cfgarr, "AuthorizedKeysFile $clipubkeyf_config";
 push @cfgarr, "AuthorizedKeysFile2 $clipubkeyf_config";
 push @cfgarr, "HostKey $hstprvkeyf_config";
@@ -684,9 +690,6 @@
 #***************************************************************************
 # Options that might be supported or not in sshd OpenSSH 2.9.9 and later
 #
-if(sshd_supports_opt('AcceptEnv','')) {
-    push @cfgarr, 'AcceptEnv';
-}
 if(sshd_supports_opt('AddressFamily','any')) {
     # Address family must be specified before ListenAddress
     splice @cfgarr, 14, 0, 'AddressFamily any';
@@ -873,7 +876,6 @@
 #  RemoteForward                     : OpenSSH 1.2.1 and later [3]
 #  RhostsRSAAuthentication           : OpenSSH 1.2.1 and later
 #  RSAAuthentication                 : OpenSSH 1.2.1 and later
-#  SendEnv                           : OpenSSH 3.9.0 and later
 #  ServerAliveCountMax               : OpenSSH 3.8.0 and later
 #  ServerAliveInterval               : OpenSSH 3.8.0 and later
 #  SmartcardDevice                   : OpenSSH 2.9.9 and later [1][3]
@@ -1028,10 +1030,6 @@
     push @cfgarr, 'RekeyLimit 1G';
 }
 
-if(($sshid =~ /OpenSSH/) && ($sshvernum >= 390)) {
-    push @cfgarr, 'SendEnv';
-}
-
 if((($sshid =~ /OpenSSH/) && ($sshvernum >= 380)) ||
    (($sshid =~ /SunSSH/) && ($sshvernum >= 120))) {
     push @cfgarr, 'ServerAliveCountMax 3';
@@ -1122,6 +1120,9 @@
         close(OUT);
     }
 
+    # Flush output.
+    $| = 1;
+
     # Put an "exec" in front of the command so that the child process
     # keeps this child's process ID by being tied to the spawned shell.
     exec("exec $cmd") || die "Can't exec() $cmd: $!";
@@ -1152,7 +1153,7 @@
 #***************************************************************************
 # Clean up once the server has stopped
 #
-unlink($hstprvkeyf, $hstpubkeyf, $hstpubmd5f,
+unlink($hstprvkeyf, $hstpubkeyf, $hstpubmd5f, $hstpubsha256f,
        $cliprvkeyf, $clipubkeyf, $knownhosts,
        $sshdconfig, $sshconfig, $sftpconfig);
 
diff --git a/tests/testcurl.1 b/tests/testcurl.1
index 795975d..410ee42 100644
--- a/tests/testcurl.1
+++ b/tests/testcurl.1
@@ -20,7 +20,7 @@
 .\" *
 .\" **************************************************************************
 .\"
-.TH testcurl.pl 1 "November 05, 2020" "Curl 7.78.0" "testcurl"
+.TH testcurl.pl 1 "November 05, 2020" "Curl 7.80.0" "testcurl"
 
 .SH NAME
 testcurl.pl \- (automatically) test curl
diff --git a/tests/tftpserver.pl b/tests/tftpserver.pl
index f9fbbe9..9486539 100755
--- a/tests/tftpserver.pl
+++ b/tests/tftpserver.pl
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
@@ -120,4 +120,5 @@
     "--logfile \"$logfile\" ";
 $flags .= "--ipv$ipvnum --port $port --srcdir \"$srcdir\"";
 
-exec("server/tftpd".exe_ext('SRV')." $flags");
+$| = 1;
+exec("exec server/tftpd".exe_ext('SRV')." $flags");
diff --git a/tests/unit/unit1621.c b/tests/unit/unit1621.c
index ec361df..87550d1 100644
--- a/tests/unit/unit1621.c
+++ b/tests/unit/unit1621.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 1998 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 1998 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -52,7 +52,7 @@
   const char *output;
 };
 
-static struct checkthis tests[] = {
+static const struct checkthis tests[] = {
   { "ninja://foo@example.com", "ninja://foo@example.com" },
   { "https://foo@example.com", "https://example.com/" },
   { "https://localhost:45", "https://localhost:45/" },
diff --git a/tests/unit/unit1650.c b/tests/unit/unit1650.c
index de54c08..0e74845 100644
--- a/tests/unit/unit1650.c
+++ b/tests/unit/unit1650.c
@@ -5,7 +5,7 @@
  *                            | (__| |_| |  _ <| |___
  *                             \___|\___/|_| \_\_____|
  *
- * Copyright (C) 2018 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+ * Copyright (C) 2018 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
  *
  * This software is licensed as described in the file COPYING, which
  * you should have received as part of this distribution. The terms
@@ -59,7 +59,7 @@
 };
 
 
-static struct dohrequest req[] = {
+static const struct dohrequest req[] = {
   {"test.host.name", DNS_TYPE_A, DNS_Q1, sizeof(DNS_Q1)-1, 0 },
   {"test.host.name", DNS_TYPE_AAAA, DNS_Q2, sizeof(DNS_Q2)-1, 0 },
   {"zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz"
@@ -86,7 +86,7 @@
 
 static const char full49[] = DNS_FOO_EXAMPLE_COM;
 
-static struct dohresp resp[] = {
+static const struct dohresp resp[] = {
   {"\x00\x00", 2, DNS_TYPE_A, DOH_TOO_SMALL_BUFFER, NULL },
   {"\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01\x00\x01", 12,
    DNS_TYPE_A, DOH_DNS_BAD_ID, NULL },
diff --git a/tests/util.py b/tests/util.py
index 70f6b43..3c2fb6b 100755
--- a/tests/util.py
+++ b/tests/util.py
@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python3
 # -*- coding: utf-8 -*-
 #
 #  Project                     ___| | | |  _ \| |
@@ -6,7 +6,7 @@
 #                            | (__| |_| |  _ <| |___
 #                             \___|\___/|_| \_\_____|
 #
-# Copyright (C) 2017 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
+# Copyright (C) 2017 - 2021, Daniel Stenberg, <daniel@haxx.se>, et al.
 #
 # This software is licensed as described in the file COPYING, which
 # you should have received as part of this distribution. The terms
diff --git a/winbuild/README.md b/winbuild/README.md
index 2aa0c60..3684a38 100644
--- a/winbuild/README.md
+++ b/winbuild/README.md
@@ -95,7 +95,8 @@
                                  - Enable loading OpenSSL configuration

                                    automatically, defaults to yes

  - `ENABLE_UNICODE=<yes/no>`     - Enable UNICODE support, defaults to no

- - `GEN_PDB=<yes/no>`            - Generate Program Database (debug symbols for release build)

+ - `GEN_PDB=<yes/no>`            - Generate External Program Database

+                                   (debug symbols for release build)

  - `DEBUG=<yes/no>`              - Debug builds

  - `MACHINE=<x86/x64>`           - Target architecture (default is x86)

  - `CARES_PATH=<path>`           - Custom path for c-ares

diff --git a/winbuild/gen_resp_file.bat b/winbuild/gen_resp_file.bat
index e19e14b..77f30bc 100755
--- a/winbuild/gen_resp_file.bat
+++ b/winbuild/gen_resp_file.bat
@@ -1,32 +1,32 @@
-@echo off
-rem ***************************************************************************
-rem *                                  _   _ ____  _
-rem *  Project                     ___| | | |  _ \| |
-rem *                             / __| | | | |_) | |
-rem *                            | (__| |_| |  _ <| |___
-rem *                             \___|\___/|_| \_\_____|
-rem *
-rem * Copyright (C) 2011 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.
-rem *
-rem * This software is licensed as described in the file COPYING, which
-rem * you should have received as part of this distribution. The terms
-rem * are also available at https://curl.se/docs/copyright.html.
-rem *
-rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell
-rem * copies of the Software, and permit persons to whom the Software is
-rem * furnished to do so, under the terms of the COPYING file.
-rem *
-rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY
-rem * KIND, either express or implied.
-rem *
-rem ***************************************************************************
-
-if exist %OUTFILE% (
-  del %OUTFILE%
-)
-
-echo %MACRO_NAME% = \> %OUTFILE%
-for %%i in (%*) do echo		%DIROBJ%/%%i \>>  %OUTFILE%
-echo. >>  %OUTFILE%
-
-:END
+@echo off

+rem ***************************************************************************

+rem *                                  _   _ ____  _

+rem *  Project                     ___| | | |  _ \| |

+rem *                             / __| | | | |_) | |

+rem *                            | (__| |_| |  _ <| |___

+rem *                             \___|\___/|_| \_\_____|

+rem *

+rem * Copyright (C) 2011 - 2020, Daniel Stenberg, <daniel@haxx.se>, et al.

+rem *

+rem * This software is licensed as described in the file COPYING, which

+rem * you should have received as part of this distribution. The terms

+rem * are also available at https://curl.se/docs/copyright.html.

+rem *

+rem * You may opt to use, copy, modify, merge, publish, distribute and/or sell

+rem * copies of the Software, and permit persons to whom the Software is

+rem * furnished to do so, under the terms of the COPYING file.

+rem *

+rem * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY

+rem * KIND, either express or implied.

+rem *

+rem ***************************************************************************

+

+if exist %OUTFILE% (

+  del %OUTFILE%

+)

+

+echo %MACRO_NAME% = \> %OUTFILE%

+for %%i in (%*) do echo		%DIROBJ%/%%i \>>  %OUTFILE%

+echo. >>  %OUTFILE%

+

+:END